[INFO] crate fungi-lang 0.1.63 is already in cache [INFO] testing fungi-lang-0.1.63 against try#41997647ba6a77908f6ef64401414feb00bccf16 for pr-71274 [INFO] extracting crate fungi-lang 0.1.63 into /workspace/builds/worker-6/source [INFO] validating manifest of crates.io crate fungi-lang 0.1.63 on toolchain 41997647ba6a77908f6ef64401414feb00bccf16 [INFO] running `"/workspace/cargo-home/bin/cargo" "+41997647ba6a77908f6ef64401414feb00bccf16" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking crates.io crate fungi-lang 0.1.63 [INFO] finished tweaking crates.io crate fungi-lang 0.1.63 [INFO] tweaked toml for crates.io crate fungi-lang 0.1.63 written to /workspace/builds/worker-6/source/Cargo.toml [INFO] running `"/workspace/cargo-home/bin/cargo" "+41997647ba6a77908f6ef64401414feb00bccf16" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/workspace/cargo-home/bin/cargo" "+41997647ba6a77908f6ef64401414feb00bccf16" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+41997647ba6a77908f6ef64401414feb00bccf16" "build" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 25a77d409e1740d338704d8f0cab4a4ec00bb1ff8e5008cf09219e5120f14d7d [INFO] running `"docker" "start" "-a" "25a77d409e1740d338704d8f0cab4a4ec00bb1ff8e5008cf09219e5120f14d7d"` [INFO] [stderr] Compiling memchr v2.3.3 [INFO] [stderr] Compiling serde v1.0.106 [INFO] [stderr] Compiling syn v1.0.17 [INFO] [stderr] Compiling version_check v0.1.5 [INFO] [stderr] Compiling ucd-util v0.1.8 [INFO] [stderr] Compiling regex v0.2.11 [INFO] [stderr] Compiling utf8-ranges v1.0.4 [INFO] [stderr] Compiling itoa v0.4.5 [INFO] [stderr] Compiling adapton v0.3.31 [INFO] [stderr] Compiling thread_local v0.3.6 [INFO] [stderr] Compiling proc-macro2 v0.3.8 [INFO] [stderr] Compiling regex-syntax v0.5.6 [INFO] [stderr] Compiling nom v4.2.3 [INFO] [stderr] Compiling aho-corasick v0.6.10 [INFO] [stderr] Compiling serde_derive v1.0.106 [INFO] [stderr] Compiling serde_json v1.0.51 [INFO] [stderr] Compiling fungi-lang v0.1.63 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/shared.rs:182:1 [INFO] [stderr] | [INFO] [stderr] 182 | /// Global table of serialized objects; permits us to avoid multiple [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/shared.rs:183:1 [INFO] [stderr] | [INFO] [stderr] 183 | /// serialized copies of a single, shared object. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/db.rs:10:29 [INFO] [stderr] | [INFO] [stderr] 10 | pub bracket_indent: Box, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Display` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/db.rs:11:28 [INFO] [stderr] | [INFO] [stderr] 11 | pub bracket_close: Box, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Display` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:179:29 [INFO] [stderr] | [INFO] [stderr] 179 | table:HashMap>> [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:215:29 [INFO] [stderr] | [INFO] [stderr] 215 | let x : &Rc = &**brc; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:216:42 [INFO] [stderr] | [INFO] [stderr] 216 | let y : Result, Rc> = (x.clone()).downcast::(); [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:416:16 [INFO] [stderr] | [INFO] [stderr] 416 | pub ops:Rc, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn HostObjOps` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:418:16 [INFO] [stderr] | [INFO] [stderr] 418 | pub any:Rc [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:421:24 [INFO] [stderr] | [INFO] [stderr] 421 | fn eq(&self, x:&Rc, y:&Rc) -> bool; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:421:41 [INFO] [stderr] | [INFO] [stderr] 421 | fn eq(&self, x:&Rc, y:&Rc) -> bool; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:422:26 [INFO] [stderr] | [INFO] [stderr] 422 | fn hash(&self, x:&Rc) -> u64; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:423:43 [INFO] [stderr] | [INFO] [stderr] 423 | fn fmt(&self, f:&mut Formatter, x:&Rc ) -> fmt::Result; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:451:17 [INFO] [stderr] | [INFO] [stderr] 451 | pub eval:Rc) -> dynamics::ExpTerm> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec) -> dynamics::ExpTerm` [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:420:13 [INFO] [stderr] | [INFO] [stderr] 203 | decide::equiv, vt100, [INFO] [stderr] | ----- the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 420 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:560:13 [INFO] [stderr] | [INFO] [stderr] 203 | decide::equiv, vt100, [INFO] [stderr] | ----- the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 560 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:1740:13 [INFO] [stderr] | [INFO] [stderr] 1128 | use crate::vt100; [INFO] [stderr] | ------------ the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 1740 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:1913:13 [INFO] [stderr] | [INFO] [stderr] 1128 | use crate::vt100; [INFO] [stderr] | ------------ the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 1913 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `Sort` is imported redundantly [INFO] [stderr] --> src/dynamics.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 20 | use crate::ast::*; [INFO] [stderr] | ------------- the item `Sort` is already imported here [INFO] [stderr] ... [INFO] [stderr] 174 | use crate::ast::Sort; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:53:67 [INFO] [stderr] | [INFO] [stderr] 53 | pub fn obj_of_any (x:&Rc) -> Option { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:54:30 [INFO] [stderr] | [INFO] [stderr] 54 | let r : Result, Rc> = (x.clone()).downcast::(); [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:63:24 [INFO] [stderr] | [INFO] [stderr] 63 | fn eq(&self, x:&Rc, y:&Rc) -> bool { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:63:36 [INFO] [stderr] | [INFO] [stderr] 63 | fn eq(&self, x:&Rc, y:&Rc) -> bool { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:69:26 [INFO] [stderr] | [INFO] [stderr] 69 | fn hash(&self, x:&Rc) -> u64 { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:75:43 [INFO] [stderr] | [INFO] [stderr] 75 | fn fmt(&self, f:&mut Formatter, x:&Rc ) -> fmt::Result { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: the feature `crate_in_paths` has been stable since 1.30.0 and no longer requires an attribute to enable [INFO] [stderr] --> src/lib.rs:95:12 [INFO] [stderr] | [INFO] [stderr] 95 | #![feature(crate_in_paths)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(stable_features)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 26 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 05s [INFO] running `"docker" "inspect" "25a77d409e1740d338704d8f0cab4a4ec00bb1ff8e5008cf09219e5120f14d7d"` [INFO] running `"docker" "rm" "-f" "25a77d409e1740d338704d8f0cab4a4ec00bb1ff8e5008cf09219e5120f14d7d"` [INFO] [stdout] 25a77d409e1740d338704d8f0cab4a4ec00bb1ff8e5008cf09219e5120f14d7d [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+41997647ba6a77908f6ef64401414feb00bccf16" "test" "--frozen" "--no-run"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] c7f03207d5f46414c2ba3dffbe319cc4f6a5d8a60f145b344acb2ad0341d427b [INFO] running `"docker" "start" "-a" "c7f03207d5f46414c2ba3dffbe319cc4f6a5d8a60f145b344acb2ad0341d427b"` [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/shared.rs:182:1 [INFO] [stderr] | [INFO] [stderr] 182 | /// Global table of serialized objects; permits us to avoid multiple [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/shared.rs:183:1 [INFO] [stderr] | [INFO] [stderr] 183 | /// serialized copies of a single, shared object. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/db.rs:10:29 [INFO] [stderr] | [INFO] [stderr] 10 | pub bracket_indent: Box, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Display` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/db.rs:11:28 [INFO] [stderr] | [INFO] [stderr] 11 | pub bracket_close: Box, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Display` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:179:29 [INFO] [stderr] | [INFO] [stderr] 179 | table:HashMap>> [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:215:29 [INFO] [stderr] | [INFO] [stderr] 215 | let x : &Rc = &**brc; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:216:42 [INFO] [stderr] | [INFO] [stderr] 216 | let y : Result, Rc> = (x.clone()).downcast::(); [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:416:16 [INFO] [stderr] | [INFO] [stderr] 416 | pub ops:Rc, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn HostObjOps` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:418:16 [INFO] [stderr] | [INFO] [stderr] 418 | pub any:Rc [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:421:24 [INFO] [stderr] | [INFO] [stderr] 421 | fn eq(&self, x:&Rc, y:&Rc) -> bool; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:421:41 [INFO] [stderr] | [INFO] [stderr] 421 | fn eq(&self, x:&Rc, y:&Rc) -> bool; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:422:26 [INFO] [stderr] | [INFO] [stderr] 422 | fn hash(&self, x:&Rc) -> u64; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:423:43 [INFO] [stderr] | [INFO] [stderr] 423 | fn fmt(&self, f:&mut Formatter, x:&Rc ) -> fmt::Result; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:451:17 [INFO] [stderr] | [INFO] [stderr] 451 | pub eval:Rc) -> dynamics::ExpTerm> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec) -> dynamics::ExpTerm` [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:420:13 [INFO] [stderr] | [INFO] [stderr] 203 | decide::equiv, vt100, [INFO] [stderr] | ----- the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 420 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:560:13 [INFO] [stderr] | [INFO] [stderr] 203 | decide::equiv, vt100, [INFO] [stderr] | ----- the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 560 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:1740:13 [INFO] [stderr] | [INFO] [stderr] 1128 | use crate::vt100; [INFO] [stderr] | ------------ the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 1740 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:1913:13 [INFO] [stderr] | [INFO] [stderr] 1128 | use crate::vt100; [INFO] [stderr] | ------------ the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 1913 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `Sort` is imported redundantly [INFO] [stderr] --> src/dynamics.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 20 | use crate::ast::*; [INFO] [stderr] | ------------- the item `Sort` is already imported here [INFO] [stderr] ... [INFO] [stderr] 174 | use crate::ast::Sort; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:53:67 [INFO] [stderr] | [INFO] [stderr] 53 | pub fn obj_of_any (x:&Rc) -> Option { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:54:30 [INFO] [stderr] | [INFO] [stderr] 54 | let r : Result, Rc> = (x.clone()).downcast::(); [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:63:24 [INFO] [stderr] | [INFO] [stderr] 63 | fn eq(&self, x:&Rc, y:&Rc) -> bool { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:63:36 [INFO] [stderr] | [INFO] [stderr] 63 | fn eq(&self, x:&Rc, y:&Rc) -> bool { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:69:26 [INFO] [stderr] | [INFO] [stderr] 69 | fn hash(&self, x:&Rc) -> u64 { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:75:43 [INFO] [stderr] | [INFO] [stderr] 75 | fn fmt(&self, f:&mut Formatter, x:&Rc ) -> fmt::Result { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: the feature `crate_in_paths` has been stable since 1.30.0 and no longer requires an attribute to enable [INFO] [stderr] --> src/lib.rs:95:12 [INFO] [stderr] | [INFO] [stderr] 95 | #![feature(crate_in_paths)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(stable_features)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 26 warnings emitted [INFO] [stderr] [INFO] [stderr] Compiling fungi-lang v0.1.63 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/shared.rs:182:1 [INFO] [stderr] | [INFO] [stderr] 182 | /// Global table of serialized objects; permits us to avoid multiple [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/shared.rs:183:1 [INFO] [stderr] | [INFO] [stderr] 183 | /// serialized copies of a single, shared object. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/db.rs:10:29 [INFO] [stderr] | [INFO] [stderr] 10 | pub bracket_indent: Box, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Display` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/db.rs:11:28 [INFO] [stderr] | [INFO] [stderr] 11 | pub bracket_close: Box, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Display` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:179:29 [INFO] [stderr] | [INFO] [stderr] 179 | table:HashMap>> [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:215:29 [INFO] [stderr] | [INFO] [stderr] 215 | let x : &Rc = &**brc; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:216:42 [INFO] [stderr] | [INFO] [stderr] 216 | let y : Result, Rc> = (x.clone()).downcast::(); [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:416:16 [INFO] [stderr] | [INFO] [stderr] 416 | pub ops:Rc, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn HostObjOps` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:418:16 [INFO] [stderr] | [INFO] [stderr] 418 | pub any:Rc [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:421:24 [INFO] [stderr] | [INFO] [stderr] 421 | fn eq(&self, x:&Rc, y:&Rc) -> bool; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:421:41 [INFO] [stderr] | [INFO] [stderr] 421 | fn eq(&self, x:&Rc, y:&Rc) -> bool; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:422:26 [INFO] [stderr] | [INFO] [stderr] 422 | fn hash(&self, x:&Rc) -> u64; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:423:43 [INFO] [stderr] | [INFO] [stderr] 423 | fn fmt(&self, f:&mut Formatter, x:&Rc ) -> fmt::Result; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:451:17 [INFO] [stderr] | [INFO] [stderr] 451 | pub eval:Rc) -> dynamics::ExpTerm> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec) -> dynamics::ExpTerm` [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:420:13 [INFO] [stderr] | [INFO] [stderr] 203 | decide::equiv, vt100, [INFO] [stderr] | ----- the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 420 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:560:13 [INFO] [stderr] | [INFO] [stderr] 203 | decide::equiv, vt100, [INFO] [stderr] | ----- the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 560 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:1740:13 [INFO] [stderr] | [INFO] [stderr] 1128 | use crate::vt100; [INFO] [stderr] | ------------ the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 1740 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:1913:13 [INFO] [stderr] | [INFO] [stderr] 1128 | use crate::vt100; [INFO] [stderr] | ------------ the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 1913 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `Sort` is imported redundantly [INFO] [stderr] --> src/dynamics.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 20 | use crate::ast::*; [INFO] [stderr] | ------------- the item `Sort` is already imported here [INFO] [stderr] ... [INFO] [stderr] 174 | use crate::ast::Sort; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:53:67 [INFO] [stderr] | [INFO] [stderr] 53 | pub fn obj_of_any (x:&Rc) -> Option { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:54:30 [INFO] [stderr] | [INFO] [stderr] 54 | let r : Result, Rc> = (x.clone()).downcast::(); [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:63:24 [INFO] [stderr] | [INFO] [stderr] 63 | fn eq(&self, x:&Rc, y:&Rc) -> bool { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:63:36 [INFO] [stderr] | [INFO] [stderr] 63 | fn eq(&self, x:&Rc, y:&Rc) -> bool { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:69:26 [INFO] [stderr] | [INFO] [stderr] 69 | fn hash(&self, x:&Rc) -> u64 { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:75:43 [INFO] [stderr] | [INFO] [stderr] 75 | fn fmt(&self, f:&mut Formatter, x:&Rc ) -> fmt::Result { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: the feature `crate_in_paths` has been stable since 1.30.0 and no longer requires an attribute to enable [INFO] [stderr] --> src/lib.rs:95:12 [INFO] [stderr] | [INFO] [stderr] 95 | #![feature(crate_in_paths)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(stable_features)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 26 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 42.45s [INFO] running `"docker" "inspect" "c7f03207d5f46414c2ba3dffbe319cc4f6a5d8a60f145b344acb2ad0341d427b"` [INFO] running `"docker" "rm" "-f" "c7f03207d5f46414c2ba3dffbe319cc4f6a5d8a60f145b344acb2ad0341d427b"` [INFO] [stdout] c7f03207d5f46414c2ba3dffbe319cc4f6a5d8a60f145b344acb2ad0341d427b [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+41997647ba6a77908f6ef64401414feb00bccf16" "test" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] f35e1a30237bfef03c5255701c346c68f4f3f3daca5abb644c761c7833937c29 [INFO] running `"docker" "start" "-a" "f35e1a30237bfef03c5255701c346c68f4f3f3daca5abb644c761c7833937c29"` [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/shared.rs:182:1 [INFO] [stderr] | [INFO] [stderr] 182 | /// Global table of serialized objects; permits us to avoid multiple [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/shared.rs:183:1 [INFO] [stderr] | [INFO] [stderr] 183 | /// serialized copies of a single, shared object. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/db.rs:10:29 [INFO] [stderr] | [INFO] [stderr] 10 | pub bracket_indent: Box, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Display` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/db.rs:11:28 [INFO] [stderr] | [INFO] [stderr] 11 | pub bracket_close: Box, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Display` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:179:29 [INFO] [stderr] | [INFO] [stderr] 179 | table:HashMap>> [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:215:29 [INFO] [stderr] | [INFO] [stderr] 215 | let x : &Rc = &**brc; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:216:42 [INFO] [stderr] | [INFO] [stderr] 216 | let y : Result, Rc> = (x.clone()).downcast::(); [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:416:16 [INFO] [stderr] | [INFO] [stderr] 416 | pub ops:Rc, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn HostObjOps` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:418:16 [INFO] [stderr] | [INFO] [stderr] 418 | pub any:Rc [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:421:24 [INFO] [stderr] | [INFO] [stderr] 421 | fn eq(&self, x:&Rc, y:&Rc) -> bool; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:421:41 [INFO] [stderr] | [INFO] [stderr] 421 | fn eq(&self, x:&Rc, y:&Rc) -> bool; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:422:26 [INFO] [stderr] | [INFO] [stderr] 422 | fn hash(&self, x:&Rc) -> u64; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:423:43 [INFO] [stderr] | [INFO] [stderr] 423 | fn fmt(&self, f:&mut Formatter, x:&Rc ) -> fmt::Result; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:451:17 [INFO] [stderr] | [INFO] [stderr] 451 | pub eval:Rc) -> dynamics::ExpTerm> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec) -> dynamics::ExpTerm` [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:420:13 [INFO] [stderr] | [INFO] [stderr] 203 | decide::equiv, vt100, [INFO] [stderr] | ----- the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 420 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:560:13 [INFO] [stderr] | [INFO] [stderr] 203 | decide::equiv, vt100, [INFO] [stderr] | ----- the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 560 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:1740:13 [INFO] [stderr] | [INFO] [stderr] 1128 | use crate::vt100; [INFO] [stderr] | ------------ the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 1740 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:1913:13 [INFO] [stderr] | [INFO] [stderr] 1128 | use crate::vt100; [INFO] [stderr] | ------------ the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 1913 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `Sort` is imported redundantly [INFO] [stderr] --> src/dynamics.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 20 | use crate::ast::*; [INFO] [stderr] | ------------- the item `Sort` is already imported here [INFO] [stderr] ... [INFO] [stderr] 174 | use crate::ast::Sort; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:53:67 [INFO] [stderr] | [INFO] [stderr] 53 | pub fn obj_of_any (x:&Rc) -> Option { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:54:30 [INFO] [stderr] | [INFO] [stderr] 54 | let r : Result, Rc> = (x.clone()).downcast::(); [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:63:24 [INFO] [stderr] | [INFO] [stderr] 63 | fn eq(&self, x:&Rc, y:&Rc) -> bool { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:63:36 [INFO] [stderr] | [INFO] [stderr] 63 | fn eq(&self, x:&Rc, y:&Rc) -> bool { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:69:26 [INFO] [stderr] | [INFO] [stderr] 69 | fn hash(&self, x:&Rc) -> u64 { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:75:43 [INFO] [stderr] | [INFO] [stderr] 75 | fn fmt(&self, f:&mut Formatter, x:&Rc ) -> fmt::Result { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: the feature `crate_in_paths` has been stable since 1.30.0 and no longer requires an attribute to enable [INFO] [stderr] --> src/lib.rs:95:12 [INFO] [stderr] | [INFO] [stderr] 95 | #![feature(crate_in_paths)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(stable_features)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 26 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/shared.rs:182:1 [INFO] [stderr] | [INFO] [stderr] 182 | /// Global table of serialized objects; permits us to avoid multiple [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/shared.rs:183:1 [INFO] [stderr] | [INFO] [stderr] 183 | /// serialized copies of a single, shared object. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/db.rs:10:29 [INFO] [stderr] | [INFO] [stderr] 10 | pub bracket_indent: Box, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Display` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/db.rs:11:28 [INFO] [stderr] | [INFO] [stderr] 11 | pub bracket_close: Box, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Display` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:179:29 [INFO] [stderr] | [INFO] [stderr] 179 | table:HashMap>> [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:215:29 [INFO] [stderr] | [INFO] [stderr] 215 | let x : &Rc = &**brc; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/shared.rs:216:42 [INFO] [stderr] | [INFO] [stderr] 216 | let y : Result, Rc> = (x.clone()).downcast::(); [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:416:16 [INFO] [stderr] | [INFO] [stderr] 416 | pub ops:Rc, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn HostObjOps` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:418:16 [INFO] [stderr] | [INFO] [stderr] 418 | pub any:Rc [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:421:24 [INFO] [stderr] | [INFO] [stderr] 421 | fn eq(&self, x:&Rc, y:&Rc) -> bool; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:421:41 [INFO] [stderr] | [INFO] [stderr] 421 | fn eq(&self, x:&Rc, y:&Rc) -> bool; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:422:26 [INFO] [stderr] | [INFO] [stderr] 422 | fn hash(&self, x:&Rc) -> u64; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:423:43 [INFO] [stderr] | [INFO] [stderr] 423 | fn fmt(&self, f:&mut Formatter, x:&Rc ) -> fmt::Result; [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:451:17 [INFO] [stderr] | [INFO] [stderr] 451 | pub eval:Rc) -> dynamics::ExpTerm> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec) -> dynamics::ExpTerm` [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:420:13 [INFO] [stderr] | [INFO] [stderr] 203 | decide::equiv, vt100, [INFO] [stderr] | ----- the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 420 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:560:13 [INFO] [stderr] | [INFO] [stderr] 203 | decide::equiv, vt100, [INFO] [stderr] | ----- the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 560 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:1740:13 [INFO] [stderr] | [INFO] [stderr] 1128 | use crate::vt100; [INFO] [stderr] | ------------ the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 1740 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `vt100` is imported redundantly [INFO] [stderr] --> src/decide.rs:1913:13 [INFO] [stderr] | [INFO] [stderr] 1128 | use crate::vt100; [INFO] [stderr] | ------------ the item `vt100` is already imported here [INFO] [stderr] ... [INFO] [stderr] 1913 | use crate::vt100; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `Sort` is imported redundantly [INFO] [stderr] --> src/dynamics.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 20 | use crate::ast::*; [INFO] [stderr] | ------------- the item `Sort` is already imported here [INFO] [stderr] ... [INFO] [stderr] 174 | use crate::ast::Sort; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:53:67 [INFO] [stderr] | [INFO] [stderr] 53 | pub fn obj_of_any (x:&Rc) -> Option { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:54:30 [INFO] [stderr] | [INFO] [stderr] 54 | let r : Result, Rc> = (x.clone()).downcast::(); [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:63:24 [INFO] [stderr] | [INFO] [stderr] 63 | fn eq(&self, x:&Rc, y:&Rc) -> bool { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:63:36 [INFO] [stderr] | [INFO] [stderr] 63 | fn eq(&self, x:&Rc, y:&Rc) -> bool { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:69:26 [INFO] [stderr] | [INFO] [stderr] 69 | fn hash(&self, x:&Rc) -> u64 { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/hostobj.rs:75:43 [INFO] [stderr] | [INFO] [stderr] 75 | fn fmt(&self, f:&mut Formatter, x:&Rc ) -> fmt::Result { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] warning: the feature `crate_in_paths` has been stable since 1.30.0 and no longer requires an attribute to enable [INFO] [stderr] --> src/lib.rs:95:12 [INFO] [stderr] | [INFO] [stderr] 95 | #![feature(crate_in_paths)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(stable_features)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 26 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.20s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/fungi_lang-e267ba832c49a97d [INFO] [stdout] [INFO] [stdout] running 42 tests [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_existentials:76 [INFO] [stdout] [INFO] [stdout] β”‚ let foo = ... β‡’ ? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_read_effects:2 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_hostobj::color::static_tests:55 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_existentials:2 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_existentials:27 [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_read_effects:18 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ let foo = ... β‡’ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ open crate::examples::basic_hostobj::color [INFO] [stdout] β”‚ let get = ... β‡’ ? [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_existentials:51 [INFO] [stdout] β”‚ let get = ... β‡’ ? [INFO] [stdout] β”‚ let foo = ... β‡’ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ mod fungi_lang::examples::basic_hostobj::color { [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β•‘ type Color : ? := βŸ…ColorβŸ† [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ 𝞴r: Ref[X](Nat) [INFO] [stdout] β”‚ β•‘ val color_red : ⌊ColorβŒ‹ := βŸ…RedβŸ† [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ let foo = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ let x = get r β‡’ ? [INFO] [stdout] β”‚ β”‚ 𝞴r: Ref[X](Nat) [INFO] [stdout] β”‚ β•‘ val color_green : ⌊ColorβŒ‹ := βŸ…GreenβŸ† [INFO] [stdout] β”‚ β•‘ val color_gold : ⌊ColorβŒ‹ := βŸ…GoldβŸ† [INFO] [stdout] β”‚ β”‚ βˆ€Z: NmSet [INFO] [stdout] β”‚ β”‚ 𝞴b: Bool [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ fn color_next : Thk[0](γ€ˆ0; 0γ€‰β€œColor” β†’ γ€ˆ0; 0〉F β€œColor”) := ... [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ 𝞴b: Bool [INFO] [stdout] β”‚ β”‚ let x = get r β‡’ ? [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ 𝞴nx: Nm[X] [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β”‚ 𝞴nx: Nm[X] [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ fn color_next : Thk[0](γ€ˆ0; 0γ€‰β€œColor” β†’ γ€ˆ0; 0〉F β€œColor”) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ r β‡’ Ref[X](Nat) [INFO] [stdout] β”‚ } [fungi_lang::examples::basic_hostobj::color: ?/? ok items] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ let red = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ get r β‡’ γ€ˆ0; X〉F Nat [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ βˆ€Z: NmSet [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ 𝞴b: Bool [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ 𝞴ny: Nm[Y] [INFO] [stdout] β”‚ β”‚ βˆ€Z: NmSet [INFO] [stdout] β”‚ β”‚ if b { [INFO] [stdout] β”‚ β”‚ 𝞴b: Bool [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ 𝞴ny: Nm[Y] [INFO] [stdout] β”‚ let red = ... β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ 𝞴nz: Nm[Z] [INFO] [stdout] β”‚ let green = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ r β‡’ Ref[X](Nat) [INFO] [stdout] β”‚ β”‚ 𝞴nx: Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β”‚ 𝞴ny: Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ get r β‡’ γ€ˆ0; X〉F Nat [INFO] [stdout] β”‚ β”‚ 𝞴nx: Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref nx 1 β‡’ ? [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ 𝞴nz: Nm[Z] [INFO] [stdout] β”‚ β”‚ if b { [INFO] [stdout] β”‚ β”‚ 𝞴ny: Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β”‚ if b { [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ let x = get r β‡’ γ€ˆ0; X〉F Nat in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref nx 1 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref nx 1 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nx β‡’ Nm[X] [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ let green = ... β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 1 β‡’ Nat [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; X〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nx β‡’ Nm[X] [INFO] [stdout] β”‚ β”‚ 𝞴nz: Nm[Z] [INFO] [stdout] β”‚ let gold = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(nx, 1) β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) [INFO] [stdout] β”‚ β”‚ let x = get r β‡’ γ€ˆ0; X〉F Nat in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ0; X〉F Nat [INFO] [stdout] β”‚ β”‚ failure: ... ⊬ γ€ˆ0; 0〉 - γ€ˆ0; X〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 1 β‡’ Nat [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ Failed to check expression Let, error: effect error: CannotDecideReadSubset(SubsetSearchFailureMisc("Subcase-3")) [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ if b { [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ let gold = ... β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; X〉 - γ€ˆ0; X〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ Failure term: Let("x", Get(Var("r")), Ret(Var("x")))` [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref nz 1 β‡’ ? [INFO] [stdout] β”‚ let triple = ... β‡’ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ success: ... ⊒ γ€ˆ0; X〉 - γ€ˆ0; X〉 ≑ γ€ˆ0; X〉 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ let triple = ... β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ ⨉ ⌊ColorβŒ‹ ⨉ ⌊ColorβŒ‹ in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref nx 1 β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X βŠ₯ Y); 0〉F βˆƒZZ:NmSet | ZZ ≑ X βŠ₯ Y : NmSet. Nm[ZZ] ⨉ Ref[@!(ZZ)](Nat) [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ let red_next = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nz β‡’ Nm[Z] [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nx β‡’ Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 1 β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 1 β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ γ€ˆ@@β¦—Y⦘; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ (force color_next) red β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(nz, 1) β‡’ γ€ˆ@@β¦—Z⦘; 0〉F Ref[@@β¦—Z⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(nx, 1) β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(nx, 1) β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref nx 1 β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X βŠ₯ Y); 0〉F βˆƒZZ:NmSet | ZZ ≑ X βŠ₯ Y : NmSet. Nm[ZZ βŠ₯ Z] ⨉ Ref[@!(ZZ)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ γ€ˆ@@β¦—Y⦘; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X] βŠ† Nm[X βŠ₯ Z] [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref nz 1 β‡’ γ€ˆ@@β¦—Z⦘; 0〉F Ref[@@β¦—Z⦘](Nat) in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X βŠ₯ Y); 0〉F βˆƒZZ:NmSet | ZZ ≑ X βŠ₯ Y : NmSet. Nm[ZZ] ⨉ Ref[@!(ZZ)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[X] βŠ† Nm[X βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Z⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—X⦘](Nat) βŠ† Ref[@!(X)](Nat) [INFO] [stdout] β”‚ let get = ... β‡’ γ€ˆ0; 0〉F Thk[0](βˆ€X:NmSet|⊀.γ€ˆ0; 0〉Ref[X](Nat) β†’ γ€ˆ0; X〉F Nat) in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—X⦘](Nat) βŠ† Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ force color_next β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X] βŠ† Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ failure: ... ⊬ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Z⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref nx 1 β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X βŠ₯ Y); 0〉F βˆƒZ:NmSet | Z ≑ X βŠ₯ Y : NmSet. Nm[Z] ⨉ Ref[@!(Z)](Nat) [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ Failed to check expression Ret, error: check fail for type Thk(Empty, ForallIdx("X", NmSet, Tt, Cons(Arrow(Ref(Var("X"), Prim(Nat)), Cons(L ... [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ Failed to synth expression AnnoC, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[X] βŠ† Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ let get = ... β‡’ Error: parameter 0 type mismatch in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ color_next β‡’ Thk[0](γ€ˆ0; 0γ€‰βŒŠColorβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ColorβŒ‹) [INFO] [stdout] β””αšœfungi_lang::examples::basic_read_effects:18 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β””αšœfungi_lang::examples::basic_read_effects:2 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—X⦘](Nat) βŠ† Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—X⦘](Nat) βŠ† Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ γ€ˆ@@β¦—Y⦘; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref ny 2 β‡’ ? [INFO] [stdout] β”‚ β”‚ } else { [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X] βŠ† Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref ny 2 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ Failed to synth value Pack, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force color_next β‡’ γ€ˆ0; 0γ€‰βŒŠColorβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ Failure term: Pack(Var("X"), Pair(Var("nx"), Var("r")))` [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[X] βŠ† Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—X⦘](Nat) βŠ† Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ Failed to synth expression Ret, error: parameter 0 unknown type [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—X⦘](Nat) βŠ† Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ (force color_next) red β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ [INFO] [stdout] β”‚ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ColorβŒ‹ βŠ† βŸ…ColorβŸ† [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ ⌊ColorβŒ‹ βŠ† βŸ…ColorβŸ† [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚ Failed to check expression Let, error: effect error: CannotSubtractNmSetTmFromNmSet(NmSet { cons: Some(Apart), terms: [Subset(Map(WriteScope, Var("X"))), Subset(Map(WriteScope, Var("Y")))] }, Subset(Map(WriteScope, Var("Z")))) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ny β‡’ Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚ Failure term: Let("r", Ref(Var("nz"), Nat(1)), Ret(Pack(Var("X"), Pair(Var("nx"), Var("r")))))` [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 2 β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(ny, 2) β‡’ γ€ˆ@@β¦—Y⦘; 0〉F Ref[@@β¦—Y⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref ny 2 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ny β‡’ Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 2 β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ny β‡’ Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 2 β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(ny, 2) β‡’ γ€ˆ@@β¦—Y⦘; 0〉F Ref[@@β¦—Y⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref ny 2 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref ny 2 β‡’ γ€ˆ@@β¦—Y⦘; 0〉F Ref[@@β¦—Y⦘](Nat) in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X βŠ₯ Y); 0〉F βˆƒZZ:NmSet | ZZ ≑ X βŠ₯ Y : NmSet. Nm[ZZ] ⨉ Ref[@!(ZZ)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Y⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ny β‡’ Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Y⦘; 0〉 ≑ γ€ˆ@@β¦—X⦘; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(ny, 2) β‡’ γ€ˆ@@β¦—Y⦘; 0〉F Ref[@@β¦—Y⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Y] βŠ† Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref ny 2 β‡’ γ€ˆ@@β¦—Y⦘; 0〉F Ref[@@β¦—Y⦘](Nat) in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X βŠ₯ Y); 0〉F βˆƒZZ:NmSet | ZZ ≑ X βŠ₯ Y : NmSet. Nm[ZZ βŠ₯ Z] ⨉ Ref[@!(ZZ)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Y⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ let red_next = ... β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Y⦘; 0〉 ≑ γ€ˆ@@β¦—X⦘; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 2 β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref ny 2 β‡’ γ€ˆ@@β¦—Y⦘; 0〉F Ref[@@β¦—Y⦘](Nat) in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X βŠ₯ Y); 0〉F βˆƒZ:NmSet | Z ≑ X βŠ₯ Y : NmSet. Nm[Z] ⨉ Ref[@!(Z)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Y⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(ny, 2) β‡’ γ€ˆ@@β¦—Y⦘; 0〉F Ref[@@β¦—Y⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Z] βŠ† Nm[Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[Z] βŠ† Nm[Y βŠ₯ Z] [INFO] [stdout] β”‚ let green_next = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—Y⦘](Nat) βŠ† Ref[@!(Y)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—Y⦘](Nat) βŠ† Ref[@!(Y)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref ny 2 β‡’ γ€ˆ@@β¦—Y⦘; 0〉F Ref[@@β¦—Y⦘](Nat) in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X βŠ₯ Y); 0〉F βˆƒZZ:NmSet | ZZ ≑ X βŠ₯ Y : NmSet. Nm[ZZ] ⨉ Ref[@!(ZZ)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚  failure: ... ⊒ Nm[Y] βŠ† Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Y⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1308 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Y⦘; 0〉 ≑ γ€ˆ@@β¦—X⦘; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ Detailed errors for checking type of variable ny: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ .. Variable ny's type: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ...does not check against type: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚  [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Y⦘; 0〉 ≑ γ€ˆ@@β¦—X⦘; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ (force color_next) green β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Y] βŠ† Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[Y] βŠ† Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ .. Variable ny's type: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ...does not check against type: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚  [INFO] [stdout] β”‚ β”‚ } [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1313 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—Y⦘](Nat) βŠ† Ref[@!(Y)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—Y⦘](Nat) βŠ† Ref[@!(Y)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ force color_next β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Y] βŠ† Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ } [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[Y] βŠ† Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚ Failed to check value Var, error: annotation mismatch [INFO] [stdout] β”‚ β”‚ β”‚ Failure term: Var("ny")` [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—Y⦘](Nat) βŠ† Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ color_next β‡’ Thk[0](γ€ˆ0; 0γ€‰βŒŠColorβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ColorβŒ‹) [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—Y⦘](Nat) βŠ† Ref[@!(Y)](Nat) [INFO] [stdout] β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—Y⦘](Nat) βŠ† Ref[@!(Y)](Nat) [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ let foo = ... β‡’ γ€ˆ0; 0〉F Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.βˆ€Z:NmSet|⊀.γ€ˆ0; 0〉Bool β†’ γ€ˆ0; 0〉Nm[X] β†’ γ€ˆ0; 0〉Nm[Y] β†’ γ€ˆ0; 0〉Nm[Z] β†’ γ€ˆ@!(X βŠ₯ Y); 0〉F βˆƒZZ:NmSet | ZZ ≑ X βŠ₯ Y : NmSet. Nm[ZZ βŠ₯ Z] ⨉ Ref[@!(ZZ)](Nat)) in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force color_next β‡’ γ€ˆ0; 0γ€‰βŒŠColorβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ let foo = ... β‡’ γ€ˆ0; 0〉F Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Bool β†’ γ€ˆ0; 0〉Nm[X] β†’ γ€ˆ0; 0〉Nm[Y] β†’ γ€ˆ@!(X βŠ₯ Y); 0〉F βˆƒZ:NmSet | Z ≑ X βŠ₯ Y : NmSet. Nm[Z] ⨉ Ref[@!(Z)](Nat)) in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stdout] test examples::basic_hostobj::color::docolors ... FAILED [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a884642 - fungi_lang::examples::basic_read_effects::listing0_err::help::h416a42848143e48f [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a8813b1 - fungi_lang::examples::basic_read_effects::listing0_err::{{closure}}::hf2cfe4292f9d1e4a [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857f21 - std::sys_common::backtrace::__rust_begin_short_backtrace::h8602dc1bbd5270d2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] β”‚ β”‚ β”‚  failure: ... ⊒ Ref[@@β¦—Y⦘](Nat) βŠ† Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1308 [INFO] [stderr] 19: 0x561f8a82ce71 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::habd48772aeedc29b [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ Detailed errors for checking type of variable r: [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] [INFO] [stderr] 20: 0x561f8a4fa170 - as core::ops::function::FnOnce<()>>::call_once::h1436880a5eec60c3 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ .. Variable r's type: [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ Ref[@@β¦—Y⦘](Nat) [INFO] [stderr] 21: 0x561f8a82ffad - std::panicking::try::do_call::h3c22f880ddbe6c87 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ...does not check against type: [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ Ref[@!(X)](Nat) [INFO] [stderr] 23: 0x561f8a82e1d7 - std::panicking::try::h56cc7b6d4d4e274e [INFO] [stdout] β”‚ β”‚ β”‚ β”‚  [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_read_effects:35 [INFO] [stderr] 24: 0x561f8a4fb931 - std::panic::catch_unwind::h5ea35fda3349421b [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ .. Variable r's type: [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ Ref[@@β¦—Y⦘](Nat) [INFO] [stderr] 25: 0x561f8a82b6bd - std::thread::Builder::spawn_unchecked::{{closure}}::hb3e5f1008785c2db [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ...does not check against type: [INFO] [stderr] 26: 0x561f8a6ac388 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9e91cfb175bf3a29 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ Ref[@!(X)](Nat) [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚  [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a8801a5 - fungi_lang::examples::basic_read_effects::listing0_ok::help::h9bdc2791eac567a5 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a87cb81 - fungi_lang::examples::basic_read_effects::listing0_ok::{{closure}}::hf61221e67d52dae4 [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a858081 - std::sys_common::backtrace::__rust_begin_short_backtrace::hc1c1a05957285af2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82ce51 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hab45c2b165288ae1 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa350 - as core::ops::function::FnOnce<()>>::call_once::h750f14892a05f180 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a830dbd - std::panicking::try::do_call::hecac96b2b52492f9 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82f827 - std::panicking::try::hf312f089dd465d61 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb7b1 - std::panic::catch_unwind::h000c561d66365980 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a829dfd - std::thread::Builder::spawn_unchecked::{{closure}}::h7162b09dc41314b0 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac0a8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h367b788bd9595945 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] test examples::basic_read_effects::listing0_ok ... FAILED [INFO] [stdout] β””αšœfungi_lang::examples::basic_existentials:2 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stdout] [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a8021d2 - fungi_lang::examples::basic_existentials::listing0_ok::help::ha02b3cd87d4d485f [INFO] [stderr] at src/vis.rs:197 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_subtyping:2 [INFO] [stdout] β”‚ β”‚ } [INFO] [stdout] β”‚ β”‚ Failed to check expression IfThenElse, error: parameter 1 type mismatch  [INFO] [stdout] β”‚ let get_one = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ let get = ... β‡’ ? [INFO] [stderr] 17: 0xthread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stdout] β””αšœfungi_lang::examples::basic_existentials:27 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ (force color_next) green β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ColorβŒ‹ βŠ† βŸ…ColorβŸ† [INFO] [stdout] β”‚ β”‚ βˆ€Z: NmSet [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ ⌊ColorβŒ‹ βŠ† βŸ…ColorβŸ† [INFO] [stdout] β”‚ β”‚ 𝞴b: Bool [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1313 [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ 𝞴nxz: Nm[X βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ 𝞴nyz: Nm[Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ Failed to check value Var, error: annotation mismatch [INFO] [stdout] β”‚ β”‚ if b { [INFO] [stdout] β”‚ β”‚ β”‚ Failure term: Var("r")` [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ Failed to check expression Ret, error: check fail for type Thk(Empty, ForallIdx("X", NmSet, Tt, ForallIdx("Y", NmSet, Tt, ForallIdx("Z", Nm ... [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[X βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stderr] 561f8a7fbce1 - fungi_lang::examples::basic_existentials::listing0_ok::{{closure}}::h703d94a7613210a8 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a858061 - std::sys_common::backtrace::__rust_begin_short_backtrace::hbf9a48f42afa725e [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cd11 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h685b6be46f7e9deb [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa2b0 - as core::ops::function::FnOnce<()>>::call_once::h624603635879d128 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a830c0d - std::panicking::try::do_call::hd95badfe54cbb658 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82dc87 - std::panicking::try::h27450f85cbdef1f2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb951 - std::panic::catch_unwind::h604a51286a6b1d82 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82b97d - std::thread::Builder::spawn_unchecked::{{closure}}::hb6e1b99c9feecda8 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac488 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hc478cd3c9c2c3d82 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ β”‚ Failed to check value Pair, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β”‚ 𝞴rx: Ref[X](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ Failed to check value Pack, error: parameter 1 type mismatch  [INFO] [stdout] test examples::basic_existentials::listing0_ok ... FAILED [INFO] [stdout] β”‚ β”‚ } else { [INFO] [stdout] test examples::basic_read_effects::listing0_err ... FAILED [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ Failed to synth expression AnnoC, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Y βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a80a7fc - fungi_lang::examples::basic_existentials::listing1_ok::help::h229e64aad68e60b5 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a803871 - fungi_lang::examples::basic_existentials::listing1_ok::{{closure}}::h5c6c5d47ee134d04 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857f81 - std::sys_common::backtrace::__rust_begin_short_backtrace::h94dd085d82d17955 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cdf1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h9f29735ca3de701c [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa2d0 - as core::ops::function::FnOnce<()>>::call_once::h660a04acebb53d21 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a830aed - std::panicking::try::do_call::hc5c602ea0a846581 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82dea7 - std::panicking::try::h4560686bdcd3b5e6 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb831 - std::panic::catch_unwind::h2b70d5cc3b89c126 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82c9fd - std::thread::Builder::spawn_unchecked::{{closure}}::hfbdb3eb3ee5a286f [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac2c8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h99c96b10244f4096 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] test examples::basic_existentials::listing1_ok ... FAILED [INFO] [stdout] β”‚ β”‚ β”‚ Failed to check expression Ret, error: check fail for type Exists("ZZ", NmSet, Equiv(Var("ZZ"), Apart(Var("X"), Var("Y")), NmSet), Prod(Nm( ... [INFO] [stdout] β”‚ β”‚ 𝞴ry: Ref[Y](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[Y βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ let x = get rx β‡’ ? [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] [INFO] [stdout] β”‚ let foo = ... β‡’ Error: parameter 0 type mismatch in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ } [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_subtyping:45 [INFO] [stdout] β”‚ β”‚ βœ” [INFO] [stdout] β”‚ let put_one = ... β‡’ ? [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ let get_one = ... β‡’ γ€ˆ0; 0〉F Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.βˆ€Z:NmSet|⊀.γ€ˆ0; 0〉Bool β†’ γ€ˆ0; 0〉Nm[X βŠ₯ Z] β†’ γ€ˆ0; 0〉Nm[Y βŠ₯ Z] β†’ γ€ˆ0; 0〉F Nm[X βŠ₯ Y βŠ₯ Z]) in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β””αšœfungi_lang::examples::basic_subtyping:2 [INFO] [stdout] β””αšœfungi_lang::examples::basic_existentials:51 [INFO] [stdout] β”‚ let green_next = ... β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ in [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stderr] stack backtrace: [INFO] [stdout] β”‚ β”‚ } [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] β”‚ β”‚ Failed to check expression IfThenElse, error: parameter 2 type mismatch  [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a5a2118 - fungi_lang::examples::basic_subtyping::listing0_one::help::ha8e2fe53b8d85d94 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a59d3b1 - fungi_lang::examples::basic_subtyping::listing0_one::{{closure}}::hb55e3952459294a5 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a858101 - std::sys_common::backtrace::__rust_begin_short_backtrace::hf0d8a335fdabedf1 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82ced1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hbfbed6ff769bb0d0 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa3d0 - as core::ops::function::FnOnce<()>>::call_once::h8a85f1c5e02b3a4f [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a8306fd - std::panicking::try::do_call::h9878e022c9452fed [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82e947 - std::panicking::try::h9b270abbdf8e35c5 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb971 - std::panic::catch_unwind::h68fa979a1ea131d3 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a827a3d - std::thread::Builder::spawn_unchecked::{{closure}}::h2e604178bce0eacd [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac2e8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9bfd0773300c61ed [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_subtyping:62 [INFO] [stdout] test examples::basic_subtyping::listing0_one ... FAILED [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a812b27 - fungi_lang::examples::basic_existentials::listing1_err1::help::h3da5eca242affc1f [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a80bf91 - fungi_lang::examples::basic_existentials::listing1_err1::{{closure}}::h8d2cae41c1824b40 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857ea1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h5efd57487e7b8842 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cf91 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::he1577d361eaa3c60 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa2f0 - as core::ops::function::FnOnce<()>>::call_once::h681d51c24a4936aa [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a8305dd - std::panicking::try::do_call::h94b8a2c9ecdb3058 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82ea57 - std::panicking::try::h9d36524c55a2a6f0 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb8f1 - std::panic::catch_unwind::h531c37c8f6287f1a [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82ae7d - std::thread::Builder::spawn_unchecked::{{closure}}::h9e1e7421af954c3d [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac558 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hd4c8ad1cec7f0048 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_subtyping:23 [INFO] [stdout] β”‚ let put_one = ... β‡’ ? [INFO] [stdout] β”‚ let get_pair = ... β‡’ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ let gold_next = ... β‡’ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ βˆ€Z: NmSet [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ 𝞴b: Bool [INFO] [stdout] β”‚ β”‚ βˆ€Z: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ (force color_next) gold β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ rx β‡’ Ref[X](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ force color_next β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ get rx β‡’ γ€ˆ0; X〉F Nat [INFO] [stdout] test examples::basic_existentials::listing1_err1 ... FAILED [INFO] [stdout] β”‚ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ 𝞴b: Bool [INFO] [stdout] β”‚ β”‚ Failed to check expression Ret, error: check fail for type Thk(Empty, ForallIdx("X", NmSet, Tt, ForallIdx("Y", NmSet, Tt, ForallIdx("Z", Nm ... [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ 𝞴nxz: Nm[X βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ Failed to synth expression AnnoC, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_write_effects:2 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ let x = get rx β‡’ γ€ˆ0; X〉F Nat in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ0; X βŠ₯ Y〉F Nat [INFO] [stdout] β”‚ let set = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ 𝞴nxz: Nm[X βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; X βŠ₯ Y〉 - γ€ˆ0; X〉 ≑ ? [INFO] [stdout] β”‚ β”‚ 𝞴nyz: Nm[Y βŠ₯ Z] [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ 𝞴nyz: Nm[Y βŠ₯ Z] [INFO] [stdout] β”‚ let foo = ... β‡’ Error: parameter 0 type mismatch in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ if b { [INFO] [stdout] β”‚ β”‚ success: ... ⊒ γ€ˆ0; X βŠ₯ Y〉 - γ€ˆ0; X〉 ≑ γ€ˆ0; X βŠ₯ Y〉 [INFO] [stdout] β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ βˆ€Z: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β””αšœfungi_lang::examples::basic_existentials:76 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ let y = get ry β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ color_next β‡’ Thk[0](γ€ˆ0; 0γ€‰βŒŠColorβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ColorβŒ‹) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stdout] β”‚ β”‚ if b { [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a81ad77 - fungi_lang::examples::basic_existentials::listing1_err2::help::hc3f3cd7e141caf5e [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a8141e1 - fungi_lang::examples::basic_existentials::listing1_err2::{{closure}}::hff3d661d3b0297f9 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857ec1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h5f84c69e7e466f77 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cd51 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h79acecc01e647224 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa110 - as core::ops::function::FnOnce<()>>::call_once::h0217e87e09c74a31 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a830c9d - std::panicking::try::do_call::hdbd7fd69b44ff34b [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82e507 - std::panicking::try::h726e6cc1e3b9e7e8 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fbb31 - std::panic::catch_unwind::hd9b150a56e672a8d [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a828d7d - std::thread::Builder::spawn_unchecked::{{closure}}::h46911d05d5ae4e27 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac008 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h30daf88bfddaae88 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ 𝞴b: Bool [INFO] [stdout] test examples::basic_existentials::listing1_err2 ... FAILED [INFO] [stdout] β”‚ β”‚ 𝞴nxz: Nm[X βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force color_next β‡’ γ€ˆ0; 0γ€‰βŒŠColorβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ry β‡’ Ref[Y](Nat) [INFO] [stdout] β”‚ β”‚ 𝞴nyz: Nm[Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ 𝞴n: Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β”‚ if b { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ get ry β‡’ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_write_effects:18 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ nxz β‡’ Nm[X βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ 𝞴x: Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ 0 ⇐ Nat [INFO] [stdout] β”‚ β”‚ β”‚ let r1 = ref nxz 0 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[X βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(nxz, 0) ⇐ γ€ˆ@!(X βŠ₯ Y βŠ₯ Z); 0〉F Ref[@!(X βŠ₯ Y βŠ₯ Z)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Y βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ (force color_next) gold β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[Y βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ColorβŒ‹ βŠ† βŸ…ColorβŸ† [INFO] [stdout] β”‚ β”‚ } else { [INFO] [stdout] β”‚ let set = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ let y = get ry β‡’ γ€ˆ0; Y〉F Nat in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ0; X βŠ₯ Y〉F Nat [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; X βŠ₯ Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] [INFO] [stdout] β”‚ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ nyz β‡’ Nm[Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_write_effects:34 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ 1 ⇐ Nat [INFO] [stdout] β”‚ β”‚ 𝞴n: Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Y βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ let set = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ ⌊ColorβŒ‹ βŠ† βŸ…ColorβŸ† [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ 𝞴x: Nat [INFO] [stdout] β”‚ β”‚ success: ... ⊒ γ€ˆ0; X βŠ₯ Y〉 - γ€ˆ0; Y〉 ≑ γ€ˆ0; X βŠ₯ Y〉 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stdout] β”‚ let get = ... β‡’ γ€ˆ0; 0〉F Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Ref[X](Nat) β†’ γ€ˆ0; 0〉Ref[Y](Nat) β†’ γ€ˆ0; X βŠ₯ Y〉F Nat) in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(nyz, 1) ⇐ γ€ˆ@!(X βŠ₯ Y βŠ₯ Z); 0〉F Ref[@!(X βŠ₯ Y βŠ₯ Z)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nxz β‡’ Nm[X βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 0 β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[Y βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ x ⇐ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(nxz, 0) β‡’ γ€ˆ@@β¦—X βŠ₯ Z⦘; 0〉F Ref[@@β¦—X βŠ₯ Z⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ ref(n, x) ⇐ γ€ˆ0; 0〉F Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ x ⇐ Nat [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ let gold_next = ... β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ } [INFO] [stdout] β”‚ β”‚ 𝞴n: Nm[X] [INFO] [stdout] β”‚ let set = ... β‡’ γ€ˆ0; 0〉F Thk[0](βˆ€X:NmSet|⊀.γ€ˆ0; 0〉Nm[X] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Ref[@!(X)](Nat)) in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[X βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ let triple_next = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ ref(n, x) ⇐ γ€ˆ@!(X); 0〉F Ref[@!(X)](Nat) [INFO] [stdout] β””αšœfungi_lang::examples::basic_read_effects:35 [INFO] [stdout] β””αšœfungi_lang::examples::basic_write_effects:18 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β”‚ } [INFO] [stdout] β”‚ β”‚ β”‚ let r1 = ref nxz 0 β‡’ γ€ˆ@@β¦—X βŠ₯ Z⦘; 0〉F Ref[@@β¦—X βŠ₯ Z⦘](Nat) in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X βŠ₯ Y βŠ₯ Z); 0〉F Ref[@!(X βŠ₯ Y βŠ₯ Z)](Nat) [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] :17 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a889bb4 - fungi_lang::examples::basic_read_effects::listing1_ok::help::he03f962f90acc9e8 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a885771 - fungi_lang::examples::basic_read_effects::listing1_ok::{{closure}}::hf462d1137edf64aa [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857f41 - std::sys_common::backtrace::__rust_begin_short_backtrace::h8a6214d1038c236a [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cc11 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h25e492ecf86f9da5 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa4d0 - as core::ops::function::FnOnce<()>>::call_once::hcc1ad5d09a9c3b20 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a830a5d - std::panicking::try::do_call::hb9e6714aa2b04c63 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82e727 - std::panicking::try::h7e1db6b34ec44f69 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb811 - std::panic::catch_unwind::h1b2161863db7cf89 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82b13d - std::thread::Builder::spawn_unchecked::{{closure}}::ha08f68e29371411c [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac1a8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h4d9db2e90abc6a82 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stdout] β”‚ β”‚ 𝞴x: Nat [INFO] [stderr] at src/vis.rs:249 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y βŠ₯ Z); 0〉 - γ€ˆ@@β¦—X βŠ₯ Z⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ let set = ... β‡’ γ€ˆ0; 0〉F Thk[0](βˆ€X:NmSet|⊀.γ€ˆ0; 0〉Nm[X] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ@!(X); 0〉F Ref[@!(X)](Nat)) in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ βœ” [INFO] [stdout] β”‚ let triple_next = ... β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ ⨉ ⌊ColorβŒ‹ ⨉ ⌊ColorβŒ‹ in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ let get_pair = ... β‡’ γ€ˆ0; 0〉F Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.βˆ€Z:NmSet|⊀.γ€ˆ0; 0〉Bool β†’ γ€ˆ0; 0〉Nm[X βŠ₯ Z] β†’ γ€ˆ0; 0〉Nm[Y βŠ₯ Z] β†’ γ€ˆ0; 0〉F Nm[X βŠ₯ Y βŠ₯ Z] ⨉ Nm[X βŠ₯ Y βŠ₯ Z]) in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ let r = ref n x β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y βŠ₯ Z); 0〉 - γ€ˆ@@β¦—X βŠ₯ Z⦘; 0〉 ≑ γ€ˆ@@β¦—Y⦘; 0〉 [INFO] [stderr] 16: 0x561f8a78cd51 - fungi_lang::examples::basic_write_effects::listing0_fail0_check::help::h11794aff30861da6 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—X βŠ₯ Z⦘](Nat) βŠ† Ref[@!(X βŠ₯ Y βŠ₯ Z)](Nat) [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a789501 - fungi_lang::examples::basic_write_effects::listing0_fail0_check::{{closure}}::hf90563daba65d37b [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857fc1 - std::sys_common::backtrace::__rust_begin_short_backtrace::hae342d0ef80496aa [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82ce11 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h9fd6d85ce43c36e5 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa4f0 - as core::ops::function::FnOnce<()>>::call_once::hdda15c5c162af956 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a83003d - std::panicking::try::do_call::h3f7db7c2433502f9 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82e0c7 - std::panicking::try::h50c1c354d694096e [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb7f1 - std::panic::catch_unwind::h122f61c6aeac8b99 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82853d - std::thread::Builder::spawn_unchecked::{{closure}}::h3f1837eddaa89f76 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac578 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hde9ec800bab67535 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ let put_one = ... β‡’ γ€ˆ0; 0〉F Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.βˆ€Z:NmSet|⊀.γ€ˆ0; 0〉Bool β†’ γ€ˆ0; 0〉Nm[X βŠ₯ Z] β†’ γ€ˆ0; 0〉Nm[Y βŠ₯ Z] β†’ γ€ˆ@!(X βŠ₯ Y βŠ₯ Z); 0〉F Ref[@!(X βŠ₯ Y βŠ₯ Z)](Nat)) in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] test examples::basic_read_effects::listing1_ok ... FAILED [INFO] [stdout] β””αšœfungi_lang::examples::basic_write_effects:2 [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a78826c - fungi_lang::examples::basic_write_effects::listing0::help::h315886542474f162 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a784631 - fungi_lang::examples::basic_write_effects::listing0::{{closure}}::hbef82f3ff3c0870c [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857e61 - std::sys_common::backtrace::__rust_begin_short_backtrace::h4d4d2e3aea5b8f92 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cef1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hc5edf0640bf22c30 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa370 - as core::ops::function::FnOnce<()>>::call_once::h7f0dbf2c050acf5e [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a83042d - std::panicking::try::do_call::h774c6e51d152339e [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82e3f7 - std::panicking::try::h59dfc80e3f571ad4 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb891 - std::panic::catch_unwind::h3ba3b4b2d6996a19 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82befd - std::thread::Builder::spawn_unchecked::{{closure}}::hc911eead3d4b0749 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6abf08 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1e0559ecdabb4542 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] test examples::basic_write_effects::listing0_fail0_check ... FAILED [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] test examples::basic_write_effects::listing0 ... FAILED [INFO] [stdout] β””αšœfungi_lang::examples::basic_subtyping:23 [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a5a8fc9 - fungi_lang::examples::basic_subtyping::listing0_pair::help::h116bdcd8fc62321f [INFO] [stdout] [INFO] [stderr] at src/vis.rs:197 [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] 17: 0x561f8a5a3501 - fungi_lang::examples::basic_subtyping::listing0_pair::{{closure}}::hc5596ff9686f9340 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—X βŠ₯ Z⦘](Nat) βŠ† Ref[@!(X βŠ₯ Y βŠ₯ Z)](Nat) [INFO] [stderr] at src/vis.rs:213 [INFO] [stdout] β””αšœfungi_lang::examples::basic_subtyping:45 [INFO] [stderr] 18: 0x561f8a857f01 - std::sys_common::backtrace::__rust_begin_short_backtrace::h6b8cf9681ad80b51 [INFO] [stdout] test examples::basic_subtyping::listing0_pair ... FAILED [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stderr] 19: 0x561f8a82ccf1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h66b4a29b7377965f [INFO] [stdout] [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_write_effects:101 [INFO] [stderr] 20: 0x561f8a4fa130 - as core::ops::function::FnOnce<()>>::call_once::h02b331c4a15a12b0 [INFO] [stdout] [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a830b7d - std::panicking::try::do_call::hd8a42240dd281a9f [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82fb57 - std::panicking::try::hf605ae0378455904 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fbad1 - std::panic::catch_unwind::hc918e73d9f5a4fb6 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82a0bd - std::thread::Builder::spawn_unchecked::{{closure}}::h762a2c6b31737dbb [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac6f8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hfde7f6683587205c [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a5b01b3 - fungi_lang::examples::basic_subtyping::listing1_check::help::hdf8f2b886829bbcf [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a5aa511 - fungi_lang::examples::basic_subtyping::listing1_check::{{closure}}::h7328dd1bc907f80a [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a8580e1 - std::sys_common::backtrace::__rust_begin_short_backtrace::hda753c43b58fad16 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cc31 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h292055c8854cfdee [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa410 - as core::ops::function::FnOnce<()>>::call_once::ha2917f7f27769b53 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a8308ad - std::panicking::try::do_call::had7ba98a431fb415 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82f937 - std::panicking::try::hf3aa6d008b9911bf [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fba31 - std::panic::catch_unwind::h86ea9e8552c18995 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82827d - std::thread::Builder::spawn_unchecked::{{closure}}::h3d74b83c50f12a98 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac3a8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha1f7d0e4213fb13a [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_write_effects:84 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_write_effects:67 [INFO] [stdout] β”‚ let set = ... β‡’ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ let set = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ x β‡’ Nat [INFO] [stdout] β”‚ let set = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(n, x) β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β”‚ let r2 = ref nyz 0 β‡’ ? [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] test examples::basic_subtyping::listing1_check ... FAILED [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ 𝞴n: Nm[X] [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ 𝞴x: Nat [INFO] [stdout] [INFO] [stdout] β”‚ β”‚ let r = ref n x β‡’ ? [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nyz β‡’ Nm[Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 0 β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(nyz, 0) β‡’ γ€ˆ@@β¦—Y βŠ₯ Z⦘; 0〉F Ref[@@β¦—Y βŠ₯ Z⦘](Nat) [INFO] [stdout] β”‚ β”‚ let r = ref n x β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F Ref[@!(X)](Nat) [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_write_effects:51 [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ let set = ... β‡’ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ failure: ... ⊬ γ€ˆ0; 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] [INFO] [stdout] β”‚ β”‚ Failed to check expression Let, error: effect error: CannotSubtractNmSetTmFromNmSet(NmSet { cons: None, terms: [] }, Subset(Map(WriteScope, Var("X")))) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ 𝞴n: Nm[X] [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_write_scope:2 [INFO] [stdout] β”‚ β”‚ Failure term: Let("r", Ref(Var("n"), Var("x")), Ret(Var("r")))` [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ 𝞴x: Nat [INFO] [stdout] β”‚ let foo = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”‚ let r2 = ref nyz 0 β‡’ γ€ˆ@@β¦—Y βŠ₯ Z⦘; 0〉F Ref[@@β¦—Y βŠ₯ Z⦘](Nat) in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X βŠ₯ Y βŠ₯ Z); 0〉F Ref[@!(X βŠ₯ Y βŠ₯ Z)](Nat) [INFO] [stdout] β”‚ β”‚ let r = ref n x β‡’ ? [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y βŠ₯ Z); 0〉 - γ€ˆ@@β¦—Y βŠ₯ Z⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ 𝞴n: Nm[X] [INFO] [stdout] β”‚ β”‚ 𝞴n: Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y βŠ₯ Z); 0〉 - γ€ˆ@@β¦—Y βŠ₯ Z⦘; 0〉 ≑ γ€ˆ@@β¦—X⦘; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ x β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—Y βŠ₯ Z⦘](Nat) βŠ† Ref[@!(X βŠ₯ Y βŠ₯ Z)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(n, x) β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—Y βŠ₯ Z⦘](Nat) βŠ† Ref[@!(X βŠ₯ Y βŠ₯ Z)](Nat) [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ let r = ref n x β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ@!(X); 0〉F Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ } [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ let bar = ws nmfn 𝞴x:Nm.@666βˆ™x { let let_split_sugar = {let memo_keyword_sugar = {thunk name @1 ret 111}; refthunk memo_keyword_sugar}; split(let_split_sugar, a1.b1.let let_split_sugar = {let memo_keyword_sugar = {thunk name @2 ret 222}; refthunk memo_keyword_sugar}; split(let_split_sugar, a2.b2.ret 0)) } β‡’ ? [INFO] [stdout] β”‚ β”‚ 𝞴x: Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ let r = ref n x β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ x β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ ws 𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)) [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β”‚ 𝞴x: Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2317 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ let r2 = ref n x β‡’ ? [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ Failed to check expression Ret, error: check fail for type Thk(Empty, ForallIdx("X", NmSet, Tt, Cons(Arrow(Nm(Var("X")), Cons(Arrow(Prim(Na ... [INFO] [stdout] β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(n, x) β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) [INFO] [stdout] β”‚ β”‚ Failed to synth expression AnnoC, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ let put_one = ... β‡’ γ€ˆ0; 0〉F Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.βˆ€Z:NmSet|⊀.γ€ˆ0; 0〉Bool β†’ γ€ˆ0; 0〉Nm[X βŠ₯ Z] β†’ γ€ˆ0; 0〉Nm[Y βŠ₯ Z] β†’ γ€ˆ@!(X βŠ₯ Y βŠ₯ Z); 0〉F Ref[@!(X βŠ₯ Y βŠ₯ Z)](Nat)) in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ let set = ... β‡’ Error: parameter 0 type mismatch in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β””αšœfungi_lang::examples::basic_write_effects:34 [INFO] [stdout] β””αšœfungi_lang::examples::basic_subtyping:62 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ let r = ref n x β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ@!(X); 0〉F Ref[@!(X)](Nat) [INFO] [stdout] β””αšœfungi_lang::examples::basic_hostobj::color::static_tests:55 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ x β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ ref check rule: [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a7918df - fungi_lang::examples::basic_write_effects::listing0_fail0_synth::help::h38309c37ccda86ef [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a78df71 - fungi_lang::examples::basic_write_effects::listing0_fail0_synth::{{closure}}::h7818c95ed87d1e08 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857d41 - std::sys_common::backtrace::__rust_begin_short_backtrace::h053ea1037e9d4798 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82ce31 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::ha86346595c3d7a14 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa150 - as core::ops::function::FnOnce<()>>::call_once::h0d82b0c66d9df025 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a83039d - std::panicking::try::do_call::h71d0adbb2187b823 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82dfb7 - std::panicking::try::h4935540fd33bfe30 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fbb91 - std::panic::catch_unwind::hebd7806a359e760b [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82c47d - std::thread::Builder::spawn_unchecked::{{closure}}::he4e09066c7c7d1c9 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6abf88 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1faaca61eccc5d29 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(n, x) β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ x β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ x ⇐ Nat [INFO] [stderr] 16: 0x561f8a76b1c5 - fungi_lang::examples::basic_hostobj::color::static_tests::typing::help::h5e8b34caa2b77d7d [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stderr] at src/vis.rs:197 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stderr] 17: 0x561f8a767f21 - fungi_lang::examples::basic_hostobj::color::static_tests::typing::{{closure}}::h8ae883f89fa06bc2 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stderr] at src/vis.rs:213 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stderr] 18: 0x561f8a857fe1 - std::sys_common::backtrace::__rust_begin_short_backtrace::hae55325861baa449 [INFO] [stdout] β”‚ β”‚ let r2 = ref n x β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) in [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F Ref[@!(X)](Nat) [INFO] [stderr] 19: 0x561f8a82cd71 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h7ee1205b8e2b76f2 [INFO] [stdout] test examples::basic_subtyping::listing2_synth ... FAILED [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stderr] 20: 0x561f8a4fa1b0 - as core::ops::function::FnOnce<()>>::call_once::h2c693f0fe4e3632c [INFO] [stdout] test examples::basic_hostobj::color::static_tests::typing ... FAILED [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ x ⇐ Nat [INFO] [stderr] 21: 0x561f8a82fd6d - std::panicking::try::do_call::h039ae2663730cef3 [INFO] [stdout] test examples::basic_write_effects::listing0_fail0_synth ... FAILED [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82e617 - std::panicking::try::h72953a8de38a152b [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fba51 - std::panic::catch_unwind::h8ebed4181cd06701 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82987d - std::thread::Builder::spawn_unchecked::{{closure}}::h70c28f4dbe1c198e [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac718 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hfef818c12244a385 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a5b767b - fungi_lang::examples::basic_subtyping::listing2_synth::help::h75b99b77413b9bb5 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a5b1761 - fungi_lang::examples::basic_subtyping::listing2_synth::{{closure}}::hce689f9ba77b61f7 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a858141 - std::sys_common::backtrace::__rust_begin_short_backtrace::hfbfc3d60b0ff2921 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cbd1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h239f7ca7c1861cdc [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa230 - as core::ops::function::FnOnce<()>>::call_once::h3be2e25fe208505b [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a83027d - std::panicking::try::do_call::h6b549060fd69fa48 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82e2e7 - std::panicking::try::h56eeb7f5571b4477 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb991 - std::panic::catch_unwind::h6a300860d0b75305 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a827fbd - std::thread::Builder::spawn_unchecked::{{closure}}::h378b856c9cb9c9bc [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6abd88 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h005e8d8d1996b41b [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ failure: ... ⊬ γ€ˆ0; 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ Failed to check expression Let, error: effect error: CannotSubtractNmSetTmFromNmSet(NmSet { cons: None, terms: [] }, Subset(Map(WriteScope, Var("X")))) [INFO] [stdout] β”‚ β”‚ Failure term: Let("r2", Ref(Var("n"), Var("x")), Ret(Var("r2")))` [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ ref(n, x) ⇐ γ€ˆ0; 0〉F Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ ref(n, x) ⇐ γ€ˆ@!(X); 0〉F Ref[X](Nat) [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(n, x) β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) [INFO] [stdout] [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”Œαšœfungi_lang::examples::list_nat:258 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ let set = ... β‡’ γ€ˆ0; 0〉F Thk[0](βˆ€X:NmSet|⊀.γ€ˆ0; 0〉Nm[X] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ@!(X); 0〉F Ref[@!(X)](Nat)) in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ let r = ref n x β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ@!(X); 0〉F Ref[X](Nat) [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ let set = ... β‡’ γ€ˆ0; 0〉F Thk[0](βˆ€X:NmSet|⊀.γ€ˆ0; 0〉Nm[X] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ@!(X); 0〉F Ref[X](Nat)) in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ Failed to check expression Ret, error: check fail for type Thk(Empty, ForallIdx("X", NmSet, Tt, Cons(Arrow(Nm(Var("X")), Cons(Arrow(Prim(Na ... [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β””αšœfungi_lang::examples::basic_write_effects:84 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a7a0607 - fungi_lang::examples::basic_write_effects::listing0_fail2_check::help::h8a5e678cd65fb291 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a79c801 - fungi_lang::examples::basic_write_effects::listing0_fail2_check::{{closure}}::hc08056c029c6fd30 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857e21 - std::sys_common::backtrace::__rust_begin_short_backtrace::h2ed16912d6f33e95 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cc71 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h45af85d6890b61b4 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa490 - as core::ops::function::FnOnce<()>>::call_once::hc314e98efbf9de3c [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a8309cd - std::panicking::try::do_call::hb89cde4c3ab1b288 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82f1c7 - std::panicking::try::hd47f3312cbcdb90d [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb8b1 - std::panic::catch_unwind::h3fa856a64affead9 [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stderr] 25: 0x561f8a828abd - std::thread::Builder::spawn_unchecked::{{closure}}::h46486a2360e4bb50 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac658 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hf37dca8be68410ac [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ name @1 β‡’ Nm[{@1}] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ret 111 β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β”‚ Failed to synth expression AnnoC, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ thunk(name @1, ret 111) β‡’ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘; 0〉F Thk[(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘](γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ type List : ? := (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2]))) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ let cons = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—X⦘](Nat) βŠ† Ref[X](Nat) [INFO] [stdout] β”‚ β”‚  failure: ... ⊒ Ref[@@β¦—X⦘](Nat) βŠ† Ref[X](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘; 0〉F Thk[(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘](γ€ˆ0; 0〉F Nat) in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:1308 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β””αšœfungi_lang::examples::basic_write_effects:51 [INFO] [stdout] test examples::basic_write_effects::listing0_fail2_check ... FAILED [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a79666d - fungi_lang::examples::basic_write_effects::listing0_fail1_check::help::h63aad14355e1ceaf [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a792ab1 - fungi_lang::examples::basic_write_effects::listing0_fail1_check::{{closure}}::haa488db9b8edb208 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857e41 - std::sys_common::backtrace::__rust_begin_short_backtrace::h39b2dcd2d00f10a7 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cd91 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h823aa410f3c168ce [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa310 - as core::ops::function::FnOnce<()>>::call_once::h6bd99a80c4d3583d [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a8300cd - std::panicking::try::do_call::h4896bea4607b2b8a [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82f717 - std::panicking::try::heda1f4362dc5d406 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fbbb1 - std::panic::catch_unwind::hee8334db7f145501 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a8271fd - std::thread::Builder::spawn_unchecked::{{closure}}::h144f4e0acce5066e [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac2a8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h7290ff8d89233e0d [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ β”‚ Detailed errors for checking type of variable r: [INFO] [stdout] β”‚ let set = ... β‡’ Error: parameter 0 type mismatch in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ .. Variable r's type: [INFO] [stdout] β”‚ β”‚ β”‚ Ref[@@β¦—X⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ [INFO] [stdout] β”‚ β”‚ β”‚ ...does not check against type: [INFO] [stdout] β”‚ β”‚ β”‚ Ref[X](Nat) [INFO] [stdout] β”‚ β”‚ β”‚  [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_keyword_sugar β‡’ Thk[(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘](γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ refthunk memo_keyword_sugar β‡’ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}β¦˜γ€‰F Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘](Nat) ⨉ Nat [INFO] [stdout] test examples::basic_write_effects::listing0_fail1_check ... FAILED [INFO] [stdout] β”‚ β”‚ β”‚ .. Variable r's type: [INFO] [stdout] β”‚ β”‚ β”‚ Ref[@@β¦—X⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ [INFO] [stdout] β”‚ β”‚ β”‚ ...does not check against type: [INFO] [stdout] β”‚ β”‚ β”‚ Ref[X](Nat) [INFO] [stdout] β”‚ β”‚ β”‚  [INFO] [stdout] β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stdout] β”‚ β”‚ βˆ€X1: NmSet [INFO] [stdout] β”‚ β”‚ βˆ€X2: NmSet [INFO] [stdout] β””αšœfungi_lang::examples::basic_write_effects:101 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘; 0〉 then γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ ≑ ? [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] β”‚ β”‚ βˆ€Y1: NmSet [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a7a5805 - fungi_lang::examples::basic_write_effects::listing0_fail2_synth::help::h1561f5c7f5273c6f [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a7a18e1 - fungi_lang::examples::basic_write_effects::listing0_fail2_synth::{{closure}}::hef83ad6e0ed23590 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857da1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h1632b70c9b330fef [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cfb1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::he364498aab0cd5a2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa190 - as core::ops::function::FnOnce<()>>::call_once::h2b5d6a66b286506a [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a83078d - std::panicking::try::do_call::ha55c53103fb4e780 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82fc67 - std::panicking::try::hf7c19b1ea9a0e18e [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fba71 - std::panic::catch_unwind::h9414e72cbdaaae97 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82c1bd - std::thread::Builder::spawn_unchecked::{{closure}}::hcdb582a42cfd8af7 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac468 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hc37ba4e13cc62819 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ βˆ€Y2: NmSet [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:1313 [INFO] [stdout] β”‚ β”‚ Failed to check value Var, error: annotation mismatch [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘; 0〉 then γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ ≑ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ [INFO] [stdout] test examples::basic_write_effects::listing0_fail2_synth ... FAILED [INFO] [stdout] β”‚ β”‚ 𝞴n: Nm[X1] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ... β‡’ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}β¦˜γ€‰F Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘](Nat) ⨉ Nat in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ Failure term: Var("r")` [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ split let_split_sugar a1. b1. ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ var a1 : Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ var b1 : Nat [INFO] [stdout] β”‚ β”‚ Failed to check expression Ret, error: check fail for type Ref(Var("X"), Prim(Nat))` [INFO] [stdout] β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] test examples::list_nat::dynamic_tests::short ... FAILED [INFO] [stdout] β”‚ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::list_nat::static_tests:155 [INFO] [stdout] β”Œαšœfungi_lang::examples::name::static_tests:55 [INFO] [stdout] β”‚ open crate::examples::list_nat [INFO] [stdout] β”‚ open crate::examples::name [INFO] [stdout] β”‚ mod fungi_lang::examples::name { [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β”‚ Failed to check expression Ret, error: check fail for type Thk(Empty, ForallIdx("X", NmSet, Tt, Cons(Arrow(Nm(Var("X")), Cons(Arrow(Prim(Na ... [INFO] [stdout] β”‚ mod fungi_lang::examples::list_nat { [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β”‚ 𝞴h: Nat [INFO] [stdout] β”‚ β”‚ Failed to synth expression AnnoC, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ let set = ... β‡’ Error: parameter 0 type mismatch in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] β”‚ β”‚ 𝞴t: Ref[Y1](⌊ListβŒ‹[X2][Y2]) [INFO] [stdout] β””αšœfungi_lang::examples::basic_write_effects:67 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::list_nat_dedup::static_tests:113 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ open crate::examples::op_nat [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] β”‚ β•‘ mod fungi_lang::examples::op_nat { [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a79b5cb - fungi_lang::examples::basic_write_effects::listing0_fail1_synth::help::h8e94b806f43e0236 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a7978f1 - fungi_lang::examples::basic_write_effects::listing0_fail1_synth::{{closure}}::hcbfb3d94115d4f8a [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857e81 - std::sys_common::backtrace::__rust_begin_short_backtrace::h4deead300f7c9d7a [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cd31 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h72cd90ef8d1eb3ac [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa270 - as core::ops::function::FnOnce<()>>::call_once::h475551b0e6f1e93c [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a830edd - std::panicking::try::do_call::hf9b7752faa9d4cb4 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82ed87 - std::panicking::try::hac6f6736655a819f [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb7d1 - std::panic::catch_unwind::h0daf005011a1ea99 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82903d - std::thread::Builder::spawn_unchecked::{{closure}}::h519e81c53ee47b7c [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac188 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h4c05f732bffad8b1 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ fn name_of_nat : Thk[0](βˆ€X:NmSet|⊀.γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Nm[X]) := ... [INFO] [stdout] β”‚ β•‘ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β”‚  success: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] test examples::basic_write_effects::listing0_fail1_synth ... FAILED [INFO] [stdout] β”‚ β•‘ β•‘ open crate::examples::nat [INFO] [stdout] β”‚ β•‘ β•‘ mod fungi_lang::examples::nat { [INFO] [stdout] β”‚ β•‘ β•‘ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::nat::static_tests:75 [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ open crate::examples::list_nat_dedup [INFO] [stdout] β”‚ mod fungi_lang::examples::list_nat_dedup { [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ fn name_of_nat : Thk[0](βˆ€X:NmSet|⊀.γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Nm[X]) [Check OK] [INFO] [stdout] β”‚ β•‘ fn name_eq : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Nm[X] β†’ γ€ˆ0; 0〉Nm[Y] β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ name @2 β‡’ Nm[{@2}] [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ret 222 β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ fn name_eq : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Nm[X] β†’ γ€ˆ0; 0〉Nm[Y] β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ } [fungi_lang::examples::name: ?/? ok items] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ thunk(name @2, ret 222) β‡’ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘; 0〉F Thk[(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘](γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Ref[Y1](⌊ListβŒ‹[X2][Y2]) βŠ† Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1~:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1~:NmSet. βˆƒY2~:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ type List : ? := (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y]))) [INFO] [stdout] β”‚ open crate::examples::nat [INFO] [stdout] β”‚ β”‚  success: ... ⊒ Ref[Y1](⌊ListβŒ‹[X2][Y2]) βŠ† Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1~:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1~:NmSet. βˆƒY2~:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ type RefList : ? := βˆ€X:NmSet.βˆ€Y:NmSet.Ref[Y](⌊ListβŒ‹[X][Y]) [INFO] [stdout] β”‚ mod fungi_lang::examples::nat { [INFO] [stdout] β”‚ β•‘ fn list_len : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œList”[X][Y] β†’ γ€ˆ0; Y〉F β€œNat”) := ... [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ let cons = ... β‡’ γ€ˆ0; 0〉F Thk[0](βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y1:NmSet|⊀.βˆ€Y2:NmSet|⊀.γ€ˆ0; 0〉Nm[X1] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Ref[Y1](⌊ListβŒ‹[X2][Y2]) β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹[X1 βŠ₯ X2][Y1 βŠ₯ Y2]) in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘; 0〉F Thk[(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘](γ€ˆ0; 0〉F Nat) in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stdout] β”‚ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stderr] stack backtrace: [INFO] [stdout] β”‚ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] β”‚ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] β””αšœfungi_lang::examples::list_nat:258 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] β”‚ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) := ... [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X: NmSet [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stdout] β”‚ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) [Check OK] [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stdout] β”‚ β•‘ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] β””αšœfungi_lang::examples::name::static_tests:55 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] β”‚ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴l: ⌊ListβŒ‹[X][Y] [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a65717c - fungi_lang::examples::list_nat::listing1::help::hd9bbe6e8f346c47b [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a64d551 - fungi_lang::examples::list_nat::listing1::{{closure}}::hc8f987114ceaa79f [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857d81 - std::sys_common::backtrace::__rust_begin_short_backtrace::h13c84bd4f15e37c0 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cdd1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h9d5d0b17cd3fa86e [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa1d0 - as core::ops::function::FnOnce<()>>::call_once::h33c49f84d0c6a859 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a8301ed - std::panicking::try::do_call::h6673a7f36be0f470 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82ee97 - std::panicking::try::hbfd78dbac4b2af57 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb911 - std::panic::catch_unwind::h5c6eaec65ce8ed42 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82c73d - std::thread::Builder::spawn_unchecked::{{closure}}::hf5e086041697124f [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac168 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h4730870db3c1d7f4 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴n: Nat [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stderr] 16: 0x561f8a57591b - fungi_lang::examples::name::static_tests::typing::help::h4c912b736266c3ab [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a573661 - fungi_lang::examples::name::static_tests::typing::{{closure}}::h2e8acf17f3427aed [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857dc1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h1c57bf7abb060c3f [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82ccb1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h4f24ff193f9bfc11 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa470 - as core::ops::function::FnOnce<()>>::call_once::hb99fe8b91b8fe08b [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a82ff1d - std::panicking::try::do_call::h36d0f999fdbd175f [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82f3e7 - std::panicking::try::hdedd62930cd44724 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fbb71 - std::panic::catch_unwind::he592bad36da818b9 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82a63d - std::thread::Builder::spawn_unchecked::{{closure}}::h81e6ec0e837bc519 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6abe08 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h032732c282500008 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ case sugar_match_unroll of ... [INFO] [stdout] test examples::list_nat::listing1 ... FAILED [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] test examples::name::static_tests::typing ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ subcase c : βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X2][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_keyword_sugar β‡’ Thk[(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘](γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ refthunk memo_keyword_sugar β‡’ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰F Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘](Nat) ⨉ Nat [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘; 0〉 then γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ exists X1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ 𝞴n: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_is_odd β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ exists X2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ prop X1 βŠ₯ X2 ≑ X : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] test examples::pure_list_nat::dynamic_tests::reduction ... FAILED [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘; 0〉 then γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ ≑ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ... β‡’ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰F Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘](Nat) ⨉ Nat in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::op_nat::static_tests:100 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ split let_split_sugar a2. b2. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ var a2 : Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘](Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ var b2 : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let let_split_sugar = ret c β‡’ γ€ˆ0; 0〉F Nm[X1] ⨉ Nat ⨉ Ref[Y]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X2][Y]) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ split let_split_sugar x. sugar_split_snd. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var x : Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var sugar_split_snd : Nat ⨉ Ref[Y]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X2][Y]) [INFO] [stdout] β”‚ open crate::examples::op_nat [INFO] [stdout] β”‚ mod fungi_lang::examples::op_nat { [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β•‘ open crate::examples::nat [INFO] [stdout] β”‚ β•‘ mod fungi_lang::examples::nat { [INFO] [stdout] β”‚ β•‘ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] test examples::list_nat::dynamic_tests::long ... FAILED [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ ? [INFO] [stdout] [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”Œαšœfungi_lang::examples::pure_list_nat::static_tests:138 [INFO] [stdout] β”‚ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ split sugar_split_snd y. ys. ... [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var y : Nat [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var ys : Ref[Y]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X2][Y]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ then γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let m = n + 1 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let lenys = let app_get_sugar_ys = {get ys}; (force list_len[X2][Y]) app_get_sugar_ys β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ then γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ ≑ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘ βŠ₯ (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘ βˆͺ (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2320 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ let bar = ws nmfn 𝞴x:Nm.@666βˆ™x { let let_split_sugar = {let memo_keyword_sugar = {thunk name @1 ret 111}; refthunk memo_keyword_sugar}; split(let_split_sugar, a1.b1.let let_split_sugar = {let memo_keyword_sugar = {thunk name @2 ret 222}; refthunk memo_keyword_sugar}; split(let_split_sugar, a2.b2.ret 0)) } β‡’ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘ βŠ₯ (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘ βˆͺ (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰F Nat in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ@!({@666} βŠ₯ {@777}βˆ™{@1} βŠ₯ {@2}); @!({@666} βŠ₯ {@777}βˆ™{@1} βŠ₯ {@2})〉F Nat [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!({@666} βŠ₯ {@777}βˆ™{@1} βŠ₯ {@2}); @!({@666} βŠ₯ {@777}βˆ™{@1} βŠ₯ {@2})〉 - γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘ βŠ₯ (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘ βˆͺ (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ ≑ ? [INFO] [stdout] β”‚ open crate::examples::pure_list_nat [INFO] [stdout] β”‚ mod fungi_lang::examples::pure_list_nat { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let m = n + 1 β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ type List : ? := (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let app_get_sugar_ys = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ success: ... ⊒ γ€ˆ@!({@666} βŠ₯ {@777}βˆ™{@1} βŠ₯ {@2}); @!({@666} βŠ₯ {@777}βˆ™{@1} βŠ₯ {@2})〉 - γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘ βŠ₯ (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘ βˆͺ (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ ≑ γ€ˆ{@@(@777β‹…@1)} βŠ₯ {@@(@777β‹…@2)}; @!({@666} βŠ₯ {@777}βˆ™{@1} βŠ₯ {@2})〉 [INFO] [stdout] β”Œαšœfungi_lang::examples::ref_edit::static_tests:36 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β”‚ let baz = ws nmfn 𝞴x:Nm.@777βˆ™x { let let_split_sugar = {let memo_keyword_sugar = {thunk name @1 ret 111}; refthunk memo_keyword_sugar}; split(let_split_sugar, a1.b1.let let_split_sugar = {let memo_keyword_sugar = {thunk name @2 ret 222}; refthunk memo_keyword_sugar}; split(let_split_sugar, a2.b2.ret 0)) } β‡’ ? [INFO] [stdout] β”‚ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ open crate::examples::ref_edit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ys β‡’ Ref[Y]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X2][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ get ys β‡’ γ€ˆ0; Y〉F (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X2][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_is_odd β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ mod fungi_lang::examples::ref_edit { [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β•‘ fn ref_update : Thk[0](βˆ€X:NmSet|⊀.Β«Effect::Parse error: `forall`Β»β€œA”(Β«Type::Parse error: `.`Β»)(Β«Type::Parse error: `0`Β»)(β€œRef”)[X](β€œA”) β†’ γ€ˆ0; 0γ€‰β€œA” β†’ γ€ˆX; 0〉F Unit) := ... [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ ws 𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)) [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2317 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ fn ref_update : Thk[0](βˆ€X:NmSet|⊀.Β«Effect::Parse error: `forall`Β»β€œA”(Β«Type::Parse error: `.`Β»)(Β«Type::Parse error: `0`Β»)(β€œRef”)[X](β€œA”) β†’ γ€ˆ0; 0γ€‰β€œA” β†’ γ€ˆX; 0〉F Unit) [Check OK] [INFO] [stdout] β”‚ β•‘ expand_type: undefined type identifer: A [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let app_get_sugar_ys = ... β‡’ γ€ˆ0; Y〉F (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X2][Y] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•‘ β•‘ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ } [INFO] [stdout] β”‚ β•‘ expand_type: undefined type identifer: Ref [INFO] [stdout] β”‚ β•‘ expand_type: undefined type identifer: A [INFO] [stdout] β”‚ β•‘ expand_type: undefined type identifer: A [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force list_len[X2][Y]) app_get_sugar_ys β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force list_len[X2][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) := ... [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ fn nil : Thk[0](γ€ˆ0; 0〉F β€œList”) := ... [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ } [fungi_lang::examples::nat: ?/? ok items] [INFO] [stdout] β””αšœfungi_lang::examples::nat::static_tests:75 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a57263b - fungi_lang::examples::nat::static_tests::typing::help::h4b3703691e5c0c68 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a570381 - fungi_lang::examples::nat::static_tests::typing::{{closure}}::hc1061044ad3d74ce [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a858041 - std::sys_common::backtrace::__rust_begin_short_backtrace::hb7bcc7c9d4297c5d [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cdb1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h889bd088ea1d7991 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa390 - as core::ops::function::FnOnce<()>>::call_once::h85cf786c2ce97cf8 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a82fe8d - std::panicking::try::do_call::h26e9bba58fd100ff [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82db77 - std::panicking::try::h11304effe6c8d60f [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fba91 - std::panic::catch_unwind::h9f239572dc6637ee [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82bc3d - std::thread::Builder::spawn_unchecked::{{closure}}::hc3293b1ff6ff8ded [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac0e8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h3abac64a3591c271 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] test examples::nat::static_tests::typing ... FAILED [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ name @1 β‡’ Nm[{@1}] [INFO] [stdout] β”‚ } [fungi_lang::examples::ref_edit: ?/? ok items] [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stdout] β””αšœfungi_lang::examples::ref_edit::static_tests:36 [INFO] [stderr] stack backtrace: [INFO] [stdout] test examples::ref_edit::static_tests::typing ... FAILED [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴n: Nat [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a871afb - fungi_lang::examples::ref_edit::static_tests::typing::help::he12c65dcd720192b [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a86f841 - fungi_lang::examples::ref_edit::static_tests::typing::{{closure}}::h2fb8402e09319d8d [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857f61 - std::sys_common::backtrace::__rust_begin_short_backtrace::h94d31c1e977cde80 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cc51 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h34d8993a05926739 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa430 - as core::ops::function::FnOnce<()>>::call_once::ha78860e3f096087b [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a8304bd - std::panicking::try::do_call::h7d8884aa29a9c4d9 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82f2d7 - std::panicking::try::hd8c3883197e15c4c [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb9b1 - std::panic::catch_unwind::h6ed8029f2c478d06 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a829b3d - std::thread::Builder::spawn_unchecked::{{closure}}::h71101fc589d59c26 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac0c8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h38e58b9f583f1ad8 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”Œαšœfungi_lang::examples::seq_filter:2 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force list_len[X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force list_len β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β•‘ fn nil : Thk[0](γ€ˆ0; 0〉F β€œList”) [Check OK] [INFO] [stdout] β”‚ β•‘ fn cons : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0〉F β€œList”) := ... [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ret 111 β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ thunk(name @1, ret 111) β‡’ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘; 0〉F Thk[(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘](γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴h: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ list_len β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ type Lev : ? := Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ type Seq : ? := (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4]))) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘; 0〉F Thk[(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘](γ€ˆ0; 0〉F Nat) in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ idxtm Seq_SR : Nm β†’ NmSet := 𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2} [INFO] [stdout] β”‚ idxtm WS_Seq_SR : NmSet β†’ NmSet := 𝞴x:NmSet.@!(Seq_SRβ¦—x⦘) [INFO] [stdout] β”‚ idxtm WS_Seq_SR1 : NmSet β†’ NmSet := 𝞴x:NmSet.@!(xβˆ™{@1}) [INFO] [stdout] β”‚ idxtm WS_Seq_SR2 : NmSet β†’ NmSet := 𝞴x:NmSet.@!(xβˆ™{@2}) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: ⌊ListβŒ‹ [INFO] [stdout] β”‚ fn opnat_filter_nat : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force list_len β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β”‚ 𝞴opnat: ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ 𝞴pred: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ let m = n + 1 β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ case opnat of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::seq_max:2 [INFO] [stdout] β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ fn opnat_max : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β”‚ subcase n : Nat [INFO] [stdout] β”‚ β•‘ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_is_odd β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_keyword_sugar β‡’ Thk[(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘](γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ let sugar_if_scrutinee = (force pred) n β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ 𝞴xo: ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ fn cons : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0〉F β€œList”) [Check OK] [INFO] [stdout] β”‚ β•‘ fn gen : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œList”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force list_len[X2] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y] β†’ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ let m = n + 1 β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force list_len[X2][Y] β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y] β†’ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β”‚ 𝞴yo: ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ refthunk memo_keyword_sugar β‡’ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}β¦˜γ€‰F Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘](Nat) ⨉ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴n: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force pred) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force list_len[X2][Y]) app_get_sugar_ys β‡’ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_zero) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘; 0〉 then γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X2][Y] βŠ† (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X2][Y] [INFO] [stdout] β”‚ β”‚ case xo of ... [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X2][Y] βŠ† (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X2][Y] [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_zero) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 then γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force pred β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 then γ€ˆ0; Y〉 ≑ γ€ˆ0; Y βˆͺ Y〉 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_zero β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘; 0〉 then γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ ≑ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ... β‡’ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}β¦˜γ€‰F Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘](Nat) ⨉ Nat in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let m = n + 1 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ split let_split_sugar a1. b1. ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ var a1 : Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ } [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let lenys = let app_get_sugar_ys = {get ys}; (force list_len[X2][Y]) app_get_sugar_ys β‡’ γ€ˆ0; Y βˆͺ Y〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y βˆͺ Y〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ βœ” [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ pred β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β”‚ subcase x : Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ var b1 : Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force pred β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ case yo of ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ failure: ... ⊬ γ€ˆ0; Y〉 - γ€ˆ0; Y βˆͺ Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to check expression Let, error: effect error: CannotDecideReadSubset(SubsetSearchFailureMisc("Subcase-1")) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Let("lenys", Let("app_get_sugar_ys", Get(Var("ys")), App(IdxApp(IdxApp(Force(Var ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to check expression Split, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to check expression Split, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let m = n + 1 β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_is_zero β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to check expression Unpack, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_zero β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ β•‘ } [fungi_lang::examples::nat: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to check expression Unpack, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β•‘ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β”‚ β”‚ subcase y : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β•‘ type Op2Nat : ? := (Unit οΌ‹ Nat ⨉ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force pred) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β•‘ fn opnat_split : Thk[0](γ€ˆ0; 0γ€‰β€œOp2Nat” β†’ γ€ˆ0; 0〉F β€œOpNat” ⨉ β€œOpNat”) := ... [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_zero) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let sugar_if_scrutinee = x < y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check expression Case, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check expression Unroll, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴xyo: ⌊Op2NatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let sugar_if_scrutinee = x < y β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_zero) n β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check expression Fix, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ let sugar_if_scrutinee = (force pred) n β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ case xyo of ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ name @2 β‡’ Nm[{@2}] [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ret 222 β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β”‚ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ thunk(name @2, ret 222) β‡’ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘; 0〉F Thk[(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘](γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ subcase xy : Nat ⨉ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘; 0〉F Thk[(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘](γ€ˆ0; 0〉F Nat) in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ [INFO] [stdout] β”‚ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ β•‘ fn list_len : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œList”[X][Y] β†’ γ€ˆ0; Y〉F β€œNat”) [Check error] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_keyword_sugar β‡’ Thk[(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘](γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ type Trie : ? := (rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y])))) [INFO] [stdout] β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β•‘ type RefTrie : ? := βˆ€X:NmSet.βˆ€Y:NmSet.Ref[Y](⌊TrieβŒ‹[X][Y]) [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ refthunk memo_keyword_sugar β‡’ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰F Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘](Nat) ⨉ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stdout] β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘; 0〉 then γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let let_split_sugar = ret xy β‡’ ? [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ nmtm Zero : Nm := β–² [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let let_split_sugar = ret xy β‡’ γ€ˆ0; 0〉F Nat ⨉ Nat in [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ ⨉ ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ force nil β‡’ ? [INFO] [stdout] β”‚ fn opnat_filter_nat : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ fn is_empty : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œSeq”[X][Y] β†’ γ€ˆ0; Y〉F β€œBool”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β”‚ 𝞴seq: ⌊SeqβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘; 0〉 then γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ ≑ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ [INFO] [stdout] β”‚ β•‘ } [fungi_lang::examples::nat: ?/? ok items] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ... β‡’ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰F Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘](Nat) ⨉ Nat in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ nil β‡’ Thk[0](γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β”‚ subcase on : (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nil β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ split let_split_sugar a2. b2. ... [INFO] [stdout] β”‚ β”‚ β”‚ case on of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ var a2 : Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ var b2 : Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ type Op2Nat : ? := (Unit οΌ‹ Nat ⨉ Nat) [INFO] [stdout] β”‚ β•‘ fn opnat_split : Thk[0](γ€ˆ0; 0γ€‰β€œOp2Nat” β†’ γ€ˆ0; 0〉F β€œOpNat” ⨉ β€œOpNat”) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ idxtm Succ : Nm β†’ NmSet := 𝞴x:Nm.{β–²βˆ™x} [INFO] [stdout] β”‚ β”‚ β”‚ subcase _n : Nat [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ idxtm Gte : Nm β†’ NmSet := 𝞴x:Nm.Succ*β¦—{x}⦘ [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ fn opnat_max : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ type Lev : ? := Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ split let_split_sugar x. y. ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ var x : Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ var y : Nat [INFO] [stdout] β”‚ β•‘ idxtm Nat : NmSet := Gte(β–²) [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β”‚ subcase _bin : βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2]) ⨉ Ref[Y3]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4]) [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴xyo: ⌊Op2NatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ type Seq : ? := (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4]))) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ fn is_empty : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œSeq”[X][Y] β†’ γ€ˆ0; Y〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ then γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let m = ((force nat_sub) n) 1 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force nat_sub) n) 1 β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ then γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ ≑ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘ βŠ₯ (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘ βˆͺ (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ [INFO] [stdout] β”‚ β•‘ idxtm Ins : NmSet β†’ NmSet := 𝞴X:NmSet.Xβˆ™Nat [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2320 [INFO] [stdout] β”‚ idxtm Seq_SR : Nm β†’ NmSet := 𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2} [INFO] [stdout] β”‚ let filter = ... β‡’ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ case xyo of ... [INFO] [stdout] β”‚ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β”‚ let baz = ws nmfn 𝞴x:Nm.@777βˆ™x { let let_split_sugar = {let memo_keyword_sugar = {thunk name @1 ret 111}; refthunk memo_keyword_sugar}; split(let_split_sugar, a1.b1.let let_split_sugar = {let memo_keyword_sugar = {thunk name @2 ret 222}; refthunk memo_keyword_sugar}; split(let_split_sugar, a2.b2.ret 0)) } β‡’ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘ βŠ₯ (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘ βˆͺ (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰F Nat in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ{@@(@777β‹…@1)} βŠ₯ {@@(@777β‹…@2)}; @!({@666} βŠ₯ {@777}βˆ™{@1} βŠ₯ {@2})〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force nat_sub) n β‡’ ? [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ{@@(@777β‹…@1)} βŠ₯ {@@(@777β‹…@2)}; @!({@666} βŠ₯ {@777}βˆ™{@1} βŠ₯ {@2})〉 - γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘ βŠ₯ (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘ βˆͺ (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ ≑ ? [INFO] [stdout] β”‚ idxtm WS_Seq_SR : NmSet β†’ NmSet := 𝞴x:NmSet.@!(Seq_SRβ¦—x⦘) [INFO] [stdout] β”‚ let max = ... β‡’ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ idxtm WS_Trie : NmSet β†’ NmSet := 𝞴X:NmSet.@!(Ins(X)) [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ idxtm Out_Dedup : NmSet β†’ NmSet := 𝞴X:NmSet.{@@r}βˆ™X [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ 𝞴seq: ⌊SeqβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ subcase xy : Nat ⨉ Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β•‘ fn opnat_split : Thk[0](γ€ˆ0; 0γ€‰β€œOp2Nat” β†’ γ€ˆ0; 0〉F β€œOpNat” ⨉ β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β”‚ 𝞴f: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β•‘ fn opnat_pair : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” ⨉ β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOp2Nat”) := ... [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let let_split_sugar = ret xy β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ 𝞴seq: ⌊SeqβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴xoyo: ⌊OpNatβŒ‹ ⨉ ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ let let_split_sugar = ret xoyo β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ idxtm WS_Dedup : NmSet β†’ NmSet := 𝞴X:NmSet.WS_Trie(X) βŠ₯ {@@dd}βˆ™X βŠ₯ Out_Dedup(X) [INFO] [stdout] β”‚ β•‘ fn nat_hash_bit : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ fn nat_hash_bit : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•‘ fn nat_print : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) := ... [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let let_split_sugar = ret xy β‡’ γ€ˆ0; 0〉F Nat ⨉ Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ ⨉ ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ success: ... ⊒ γ€ˆ{@@(@777β‹…@1)} βŠ₯ {@@(@777β‹…@2)}; @!({@666} βŠ₯ {@777}βˆ™{@1} βŠ₯ {@2})〉 - γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘ βŠ₯ (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘ βˆͺ (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ ≑ γ€ˆ0; @!({@666} βŠ₯ {@777}βˆ™{@1} βŠ₯ {@2})〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_sub β‡’ ? [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ let foo = ... β‡’ γ€ˆ0; 0〉F Thk[0](γ€ˆ@!({@666} βŠ₯ {@777}βˆ™{@1} βŠ₯ {@2}); @!({@666} βŠ₯ {@777}βˆ™{@1} βŠ₯ {@2})〉F Nat) in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stdout] β””αšœfungi_lang::examples::basic_write_scope:2 [INFO] [stderr] stack backtrace: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ split let_split_sugar x. y. ... [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var x : Nat [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a54c902 - fungi_lang::examples::basic_write_scope::listing::help::h15376659c3ab5f6a [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a547f01 - fungi_lang::examples::basic_write_scope::listing::{{closure}}::hc4fa991d4c69a532 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857fa1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h9cd0d6a918666238 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cf11 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hd6f73b024b624c5a [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa3b0 - as core::ops::function::FnOnce<()>>::call_once::h88c0d09d6f0b2c0b [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a830e4d - std::panicking::try::do_call::hefbaf759a40cc796 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82f607 - std::panicking::try::hed5645ed58a35c7c [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fbb51 - std::panic::catch_unwind::he462080e0cac8513 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82abbd - std::thread::Builder::spawn_unchecked::{{closure}}::h93bed6d657f8864a [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac428 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hb3313f8f5d95a84d [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ fn nat_print : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ let let_split_sugar = ret xoyo β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ ⨉ ⌊OpNatβŒ‹ in [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊Op2NatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_sub β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ fn nat_print2 : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) := ... [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_sub β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var y : Nat [INFO] [stdout] β”‚ β”‚ subcase on : (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] test examples::basic_write_scope::listing ... FAILED [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ fn nat_print2 : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) [Check OK] [INFO] [stdout] β”‚ β•‘ fn print_found_duplicate : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) := ... [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β”‚ subcase on : (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force nat_sub) n β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ (Unit οΌ‹ Nat) βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ let on = ((force opnat_filter_nat) on) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ (Unit οΌ‹ Nat) βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force opnat_filter_nat) on) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ split let_split_sugar xo. yo. ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ var xo : ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ var yo : ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ fn print_found_duplicate : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ case xo of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ fn children : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œRefTrie”[X][Y] β†’ γ€ˆ0; Y〉F βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. β€œRefTrie”[X1][Y] ⨉ β€œRefTrie”[X2][Y]) := ... [INFO] [stdout] [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”Œαšœfungi_lang::examples::seq_nat::static_tests:38 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ open crate::examples::seq_nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ mod fungi_lang::examples::seq_nat { [INFO] [stdout] β”‚ β”‚ subcase bin : βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2]) ⨉ Ref[Y3]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4]) [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ exists X1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force nat_sub) n) 1 β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ type Lev : ? := Nat [INFO] [stdout] β”‚ β•‘ type Seq : ? := (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ Nm[X] ⨉ Nat(βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y](seq[X2][Y]) ⨉ Ref[Y](seq[X3][Y])))) [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ type RefSeq : ? := βˆ€X:NmSet.βˆ€Y:NmSet.Ref[Y](⌊SeqβŒ‹[X][Y]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: ⌊RefTrieβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ subcase x : Nat [INFO] [stdout] β”‚ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force opnat_filter_nat) on β‡’ ? [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ fn opnat_split : Thk[0](γ€ˆ0; 0γ€‰β€œOp2Nat” β†’ γ€ˆ0; 0〉F β€œOpNat” ⨉ β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ fn opnat_pair : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” ⨉ β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOp2Nat”) := ... [INFO] [stdout] β”‚ β”‚ β”‚ exists X2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ let emp = ref 0 roll inj1 () : F β€œRefTrie”[0][0] β‡’ ? [INFO] [stdout] β”‚ } [fungi_lang::examples::seq_nat: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴xoyo: ⌊OpNatβŒ‹ ⨉ ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ let let_split_sugar = ret xoyo β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force opnat_filter_nat β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ exists X3 : NmSet [INFO] [stdout] β”‚ β”‚ β”‚ prop X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let m = ((force nat_sub) n) 1 β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ case yo of ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β””αšœfungi_lang::examples::seq_nat::static_tests:38 [INFO] [stdout] β”‚ β”‚ β”‚ exists Y1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a57bedb - fungi_lang::examples::seq_nat::static_tests::typing::help::h14e80cfe20d13a62 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a579c21 - fungi_lang::examples::seq_nat::static_tests::typing::{{closure}}::h7aaedc5c79b84511 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857ee1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h67cb02d283db74e1 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cf71 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hdfddab27d3928b6f [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa290 - as core::ops::function::FnOnce<()>>::call_once::h58a2e9e8be828162 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a82fdfd - std::panicking::try::do_call::h23c542b6ae0c6429 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82efa7 - std::panicking::try::hcb086e38c4f0eaf4 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb9f1 - std::panic::catch_unwind::h76dd5d242375af4d [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82a8fd - std::thread::Builder::spawn_unchecked::{{closure}}::h873cff6895d45232 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6abfa8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h27bd9c4a23015653 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ opnat_filter_nat β‡’ Thk[0](γ€ˆ0; 0γ€‰βŒŠOpNatβŒ‹ β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β”‚ β”‚ exists Y2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ let emp = ref 0 roll inj1 () : F β€œRefTrie”[0][0] β‡’ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[0][0] in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ0; Y〉F βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. ⌊RefTrieβŒ‹[X1][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β”‚ β”‚ exists Y3 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let l = (force gen) m β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ subcase y : Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] test examples::seq_nat::static_tests::typing ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ let tt = get t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force opnat_filter_nat β‡’ γ€ˆ0; 0γ€‰βŒŠOpNatβŒ‹ β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force gen) m β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ let let_split_sugar = ret xoyo β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ ⨉ ⌊OpNatβŒ‹ in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊Op2NatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force opnat_filter_nat) on β‡’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ t β‡’ ⌊RefTrieβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ get t β‡’ γ€ˆ0; Y〉F (rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ split let_split_sugar xo. yo. ... [INFO] [stdout] β”‚ β•‘ β”‚ var xo : ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ var yo : ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force gen β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ exists Y4 : NmSet [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β”‚ β”‚ prop Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ let tt = get t β‡’ γ€ˆ0; Y〉F (rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X][Y] in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ0; Y〉F βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. ⌊RefTrieβŒ‹[X1][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β”‚ case xo of ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (Unit οΌ‹ Nat) βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (Unit οΌ‹ Nat) βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β•‘ fn opnat_pair : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” ⨉ β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOp2Nat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β•‘ fn opnat_filter_nat : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”‚ let let_split_sugar = ret bin β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force opnat_filter_nat) on) f β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ let let_split_sugar = ret bin β‡’ γ€ˆ0; 0〉F Nm[X1] ⨉ Nat ⨉ Ref[Y1]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2]) ⨉ Ref[Y3]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4]) in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ subcase x : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ subcase _emp : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ gen β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ β”‚ β”‚ split let_split_sugar n. sugar_split_snd. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ var n : Nm[X1] [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴opnat: ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[0][0] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Ø][Y]) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴pred: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[0][0] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Ø][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ case yo of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force gen β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase y : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[0][0] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Ø][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[0][0] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Ø][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ case opnat of ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force gen) m β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ subcase n : Nat [INFO] [stdout] β”‚ β•‘ β”‚ subcase sugar_match_snd : (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y])) [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ case sugar_match_snd of ... [INFO] [stdout] β”‚ β”‚ β”‚ var sugar_split_snd : Nat ⨉ Ref[Y1]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2]) ⨉ Ref[Y3]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4]) [INFO] [stdout] β”‚ β”‚ β”‚ split sugar_split_snd lev. sugar_split_snd. ... [INFO] [stdout] β”‚ β”‚ β”‚ var lev : Nat [INFO] [stdout] β”‚ β”‚ β”‚ var sugar_split_snd : Ref[Y1]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2]) ⨉ Ref[Y3]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4]) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let sugar_if_scrutinee = (force pred) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ let on = ((force opnat_filter_nat) on) f β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊SeqβŒ‹[X][(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase leaf : Nm[X] ⨉ Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force pred) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ split sugar_split_snd l. r. ... [INFO] [stdout] β”‚ β”‚ β”‚ var l : Ref[Y1]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[0][0] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Ø][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let l = (force gen) m β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ var r : Ref[Y3]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force pred β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[0][0] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Ø][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[0][0] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Ø][Y]) [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ subcase bin : βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2]) ⨉ Ref[Y3]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4]) [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] test examples::list_nat_dedup::dynamic_tests::short_10_2 ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[0][0] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Ø][Y]) [INFO] [stdout] β”‚ β”‚ β”‚ let let_split_sugar = let memo_name_sugar = {n * name @1}; let memo_keyword_sugar = {thunk memo_name_sugar let app_get_sugar_l = {get l}; (force max[X2][Y2]) app_get_sugar_l}; refthunk memo_keyword_sugar β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase bin : βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y]) [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ fn opnat_pair : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” ⨉ β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOp2Nat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ pred β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ fn opnat_filter_nat : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y]) βŠ† βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. ⌊RefTrieβŒ‹[X1][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] test examples::seq_nat_dfs::dynamic_tests::short ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) m) l β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force pred β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β”‚ exists X1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴opnat: ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y]) βŠ† βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. ⌊RefTrieβŒ‹[X1][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) m β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴pred: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ case opnat of ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ γ€ˆ0; 0〉F Nm[X1βˆ™{@1}] in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force pred) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ exists X2 : NmSet [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] [INFO] [stdout] β”‚ β”‚ β”‚ exists X3 : NmSet [INFO] [stdout] β”Œαšœfungi_lang::examples::trie_nat::static_tests:176 [INFO] [stdout] β”‚ β”‚ β”‚ prop X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet true [INFO] [stdout] β”‚ open crate::examples::trie_nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ exists Y1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ fn children : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œRefTrie”[X][Y] β†’ γ€ˆ0; Y〉F βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. β€œRefTrie”[X1][Y] ⨉ β€œRefTrie”[X2][Y]) [Check OK] [INFO] [stdout] β”‚ mod fungi_lang::examples::trie_nat { [INFO] [stdout] β”‚ β•‘ β”‚ subcase n : Nat [INFO] [stdout] β”Œαšœfungi_lang::examples::seq_nat_gen::static_tests:32 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_l = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ fn is_leaf_with_nat : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œRefTrie”[X][Y] β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; Y〉F β€œBool”) := ... [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ open crate::examples::seq_nat_gen [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let sugar_if_scrutinee = (force pred) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ cons β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ mod fungi_lang::examples::seq_nat_gen { [INFO] [stdout] β”‚ β•‘ type Trie : ? := (rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y])))) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ l β‡’ Ref[Y1]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2]) [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ open crate::examples::seq_nat [INFO] [stdout] β”‚ β•‘ mod fungi_lang::examples::seq_nat { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ get l β‡’ γ€ˆ0; Y1〉F (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β•‘ type Lev : ? := Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: ⌊RefTrieβŒ‹[X][Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_l = ... β‡’ γ€ˆ0; Y1〉F (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2] in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) m β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ exists Y2 : NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force max[X2][Y2]) app_get_sugar_l β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ exists Y3 : NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β”‚ β”‚ exists Y4 : NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max[X2][Y2] β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ prop Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet true [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β”‚ β”‚ let let_split_sugar = ret bin β‡’ ? [INFO] [stdout] β”‚ β•‘ type RefTrie : ? := βˆ€X:NmSet.βˆ€Y:NmSet.Ref[Y](⌊TrieβŒ‹[X][Y]) [INFO] [stdout] β”‚ β•‘ nmtm Zero : Nm := β–² [INFO] [stdout] β”‚ β•‘ idxtm Succ : Nm β†’ NmSet := 𝞴x:Nm.{β–²βˆ™x} [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let sugar_if_scrutinee = (force pred) n β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ idxtm Gte : Nm β†’ NmSet := 𝞴x:Nm.Succ*β¦—{x}⦘ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ idxtm Nat : NmSet := Gte(β–²) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴n: Nat [INFO] [stdout] β”‚ β•‘ β”‚ let tt = get t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ let let_split_sugar = ret bin β‡’ γ€ˆ0; 0〉F Nm[X1] ⨉ Nat ⨉ Ref[Y1]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2]) ⨉ Ref[Y3]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4]) in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊SeqβŒ‹[X][(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force pred) n β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ idxtm Ins : NmSet β†’ NmSet := 𝞴X:NmSet.Xβˆ™Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force pred β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max[X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ pred β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ t β‡’ ⌊RefTrieβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force pred β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ idxtm WS_Trie : NmSet β†’ NmSet := 𝞴X:NmSet.@!(Ins(X)) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ idxtm Out_Dedup : NmSet β†’ NmSet := 𝞴X:NmSet.{@@r}βˆ™X [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ get t β‡’ γ€ˆ0; Y〉F (rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X][Y] [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β•‘ type Seq : ? := (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ Nm[X] ⨉ Nat(βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y](seq[X2][Y]) ⨉ Ref[Y](seq[X3][Y])))) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ split let_split_sugar n. sugar_split_snd. ... [INFO] [stdout] β”‚ β•‘ β•‘ type RefSeq : ? := βˆ€X:NmSet.βˆ€Y:NmSet.Ref[Y](⌊SeqβŒ‹[X][Y]) [INFO] [stdout] β”‚ β”‚ β”‚ var n : Nm[X1] [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force pred) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ let tt = get t β‡’ γ€ˆ0; Y〉F (rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X][Y] in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ } [fungi_lang::examples::seq_nat: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ open crate::examples::name [INFO] [stdout] β”‚ β•‘ mod fungi_lang::examples::name { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) m) l β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β”‚ β”‚ var sugar_split_snd : Nat ⨉ Ref[Y1]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2]) ⨉ Ref[Y3]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4]) [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β”‚ β”‚ split sugar_split_snd lev. sugar_split_snd. ... [INFO] [stdout] β”‚ β•‘ β•‘ fn opnat_filter_nat : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ var lev : Nat [INFO] [stdout] β”‚ β•‘ β•‘ fn opnat_max : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ max β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ fn name_of_nat : Thk[0](βˆ€X:NmSet|⊀.γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Nm[X]) := ... [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let sugar_if_scrutinee = (force pred) n β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ var sugar_split_snd : Ref[Y1]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2]) ⨉ Ref[Y3]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ β”‚ split sugar_split_snd l. r. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ var l : Ref[Y1]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴xo: ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴yo: ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ fn name_of_nat : Thk[0](βˆ€X:NmSet|⊀.γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Nm[X]) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β•‘ fn name_eq : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Nm[X] β†’ γ€ˆ0; 0〉Nm[Y] β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β”‚ β”‚ var r : Ref[Y3]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ let let_split_sugar = let memo_name_sugar = {n * name @1}; let memo_keyword_sugar = {thunk memo_name_sugar (let app_get_sugar_l = {get l}; (force filter[X2][Y2]) app_get_sugar_l) f}; refthunk memo_keyword_sugar β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max[X2] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X2][Y] β†’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ case xo of ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max[X2][Y2] β‡’ γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X2][Y2] β†’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ idxtm WS_Dedup : NmSet β†’ NmSet := 𝞴X:NmSet.WS_Trie(X) βŠ₯ {@@dd}βˆ™X βŠ₯ Out_Dedup(X) [INFO] [stdout] β”‚ β•‘ fn nat_hash_bit : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ subcase _emp : Unit [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ fn nat_hash_bit : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ fn nat_print : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force max[X2][Y2]) app_get_sugar_l β‡’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ fn nat_print : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2] βŠ† (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ fn nat_print2 : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ γ€ˆ0; 0〉F Nm[X1βˆ™{@1}] in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2] βŠ† (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ fn nat_print2 : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 [INFO] [stdout] β”‚ β•‘ fn print_found_duplicate : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β•‘ fn name_eq : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Nm[X] β†’ γ€ˆ0; 0〉Nm[Y] β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ } [fungi_lang::examples::name: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ open crate::examples::nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (let app_get_sugar_l = {get l}; (force filter[X2][Y2]) app_get_sugar_l) f β‡’ ? [INFO] [stdout] β”‚ β•‘ mod fungi_lang::examples::nat { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ fn gen : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œList”) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_l = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ fn map : Thk[0](γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) β†’ γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0〉F β€œList”) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ 𝞴f: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ 𝞴l: ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ fn print_found_duplicate : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ subcase sugar_match_snd : (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y])) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ case sugar_match_snd of ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ l β‡’ Ref[Y1]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ subcase x : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•‘ fn opnat_filter_nat : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β•‘ fn opnat_max : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ fn children : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œRefTrie”[X][Y] β†’ γ€ˆ0; Y〉F βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. β€œRefTrie”[X1][Y] ⨉ β€œRefTrie”[X2][Y]) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ get l β‡’ γ€ˆ0; Y1〉F (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase leaf : Nm[X] ⨉ Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ subcase c : Nat ⨉ (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret leaf β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴xo: ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴yo: ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ case yo of ... [INFO] [stdout] β”‚ β•‘ β”‚ case xo of ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ γ€ˆ0; 0〉F Nat ⨉ (rec list. (Unit οΌ‹ Nat ⨉ list)) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret leaf β‡’ γ€ˆ0; 0〉F Nm[X] ⨉ Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_name_sugar β‡’ Nm[X1βˆ™{@1}] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ let app_get_sugar_l = {get l}; (force max[X2][Y2]) app_get_sugar_l β‡’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: ⌊RefTrieβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ let emp = ref 0 roll inj1 () : F β€œRefTrie”[0][0] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ split let_split_sugar h. t. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_l = ... β‡’ γ€ˆ0; Y1〉F (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2] in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β”‚ subcase x : Nat [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β•‘ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ case yo of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar _x. y. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ var h : Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ thunk(memo_name_sugar, let app_get_sugar_l = {get l}; (force max[X2][Y2]) app_get_sugar_l) β‡’ γ€ˆ@@β¦—X1βˆ™{@1}⦘; 0〉F Thk[@@β¦—X1βˆ™{@1}⦘](γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ var t : (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let h2 = (force f) h β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ let emp = ref 0 roll inj1 () : F β€œRefTrie”[0][0] β‡’ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[0][0] in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ0; Y〉F βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. ⌊RefTrieβŒ‹[X1][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ subcase y : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ let sugar_if_scrutinee = x < y β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴n: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var _x : Nm[X] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var y : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let b = n == y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force filter[X2][Y2]) app_get_sugar_l β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ γ€ˆ@@β¦—X1βˆ™{@1}⦘; 0〉F Thk[@@β¦—X1βˆ™{@1}⦘](γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F ⌊OpNatβŒ‹) in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; @@β¦—X1βˆ™{@1}β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ let tt = get t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X2][Y2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let b = n == y β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ t β‡’ ⌊RefTrieβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; @@β¦—X1βˆ™{@1}β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ get t β‡’ γ€ˆ0; Y〉F (rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase bin : βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_keyword_sugar β‡’ Thk[@@β¦—X1βˆ™{@1}⦘](γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X2] β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ refthunk memo_keyword_sugar β‡’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F Ref[@@β¦—X1βˆ™{@1}⦘](⌊OpNatβŒ‹) ⨉ ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase y : Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ let sugar_if_scrutinee = x < y β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let sugar_if_scrutinee = x < y β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ f β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ fn is_leaf_with_nat : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œRefTrie”[X][Y] β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; Y〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•‘ fn trie_replrec : Thk[0](βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰β€œRefTrie”[X1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆWS_Trie(X2); Y〉F β€œRefTrie”[X1 βŠ₯ X2][Y βˆͺ WS_Trie(X2)] ⨉ β€œBool”) := ... [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@@β¦—X1βˆ™{@1}⦘; 0〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ let tt = get t β‡’ γ€ˆ0; Y〉F (rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X][Y] in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ0; Y〉F βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. ⌊RefTrieβŒ‹[X1][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let sugar_if_scrutinee = x < y β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@@β¦—X1βˆ™{@1}⦘; 0〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ γ€ˆ@@β¦—X1βˆ™{@1}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_is_odd β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X1: NmSet [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X2: NmSet [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ@@β¦—X1βˆ™{@1}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ@@β¦—X1βˆ™{@1}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ γ€ˆ@@β¦—X1βˆ™{@1}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Z: Nm [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: ⌊RefTrieβŒ‹[X1][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴x: Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ subcase _emp : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴y: Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴i: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let h2 = (force f) h β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ fn opnat_max : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ let let_split_sugar = let memo_name_sugar = {n * name @1}; let memo_keyword_sugar = {thunk memo_name_sugar let app_get_sugar_l = {get l}; (force max[X2][Y2]) app_get_sugar_l}; refthunk memo_keyword_sugar β‡’ γ€ˆ@@β¦—X1βˆ™{@1}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F Ref[@@β¦—X1βˆ™{@1}⦘](⌊OpNatβŒ‹) ⨉ ⌊OpNatβŒ‹ in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ filter β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊SeqβŒ‹[X][(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)]) [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ@@β¦—X1βˆ™{@1}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴n: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊SeqβŒ‹[X][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[0][0] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Ø][Y]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X2] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X2][Y] β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F ⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let t2 = ((force map) f) t β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X2][Y2] β‡’ γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X2][Y2] β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F ⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴ni: Nm[{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[0][0] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Ø][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = i == 12 β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = i == 12 β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[0][0] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Ø][Y]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force filter[X2][Y2]) app_get_sugar_l β‡’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F ⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[0][0] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Ø][Y]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2] βŠ† (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ fn opnat_max : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_is_odd β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2] βŠ† (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][Y2] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let m = n + 1 β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ subcase sugar_match_snd : (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y])) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ case sugar_match_snd of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force map) f) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴n: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force map) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let b = ((force is_leaf_with_nat[X1][Y]) t) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let m = n + 1 β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; Y1〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase leaf : Nm[X] ⨉ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (let app_get_sugar_l = {get l}; (force filter[X2][Y2]) app_get_sugar_l) f β‡’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F ⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let m = n + 1 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_is_odd β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force is_leaf_with_nat[X1][Y]) t) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[0][0] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Ø][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force is_leaf_with_nat[X1][Y]) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[0][0] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Ø][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ map β‡’ Thk[0](γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[0][0] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Ø][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map β‡’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat[X1][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat[X1] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[0][0] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Ø][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force map) f β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_name_sugar β‡’ Nm[X1βˆ™{@1}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase bin : βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y]) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (let app_get_sugar_l = {get l}; (force filter[X2][Y2]) app_get_sugar_l) f β‡’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F ⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)] [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ } [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let m = n + 1 β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y]) βŠ† βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. ⌊RefTrieβŒ‹[X1][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ βœ” [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ thunk(memo_name_sugar, (let app_get_sugar_l = {get l}; (force filter[X2][Y2]) app_get_sugar_l) f) β‡’ γ€ˆ@@β¦—X1βˆ™{@1}⦘; 0〉F Thk[@@β¦—X1βˆ™{@1}⦘](γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F ⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)]) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ γ€ˆ@@β¦—X1βˆ™{@1}⦘; 0〉F Thk[@@β¦—X1βˆ™{@1}⦘](γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F ⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)]) in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ@@β¦—X1βˆ™{@1}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ γ€ˆ@@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X1⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X3⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X3⦘⦘; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; @@β¦—X1βˆ™{@1}β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y]) βŠ† βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. ⌊RefTrieβŒ‹[X1][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force map) f) t β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ β”‚ split let_split_sugar _rsl. ml. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ is_leaf_with_nat β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X][Y] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool) [INFO] [stdout] β”‚ β”‚ β”‚ var _rsl : Ref[@@β¦—X1βˆ™{@1}⦘](⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ var ml : ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X][Y] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ let let_split_sugar = let memo_name_sugar = {n * name @2}; let memo_keyword_sugar = {thunk memo_name_sugar let app_get_sugar_r = {get r}; (force max[X3][Y4]) app_get_sugar_r}; refthunk memo_keyword_sugar β‡’ ? [INFO] [stdout] β”‚ β•‘ } [fungi_lang::examples::nat: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ fn seq_gen : Thk[0](βˆ€Y1:NmSet|⊀.βˆ€X1:NmSet|⊀.βˆ€Y2:NmSet|⊀.γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Ref[Y1](β€œSeq”[X1][Y2])) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let m = n + 1 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ } else { [INFO] [stdout] β”‚ β•‘ fn children : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œRefTrie”[X][Y] β†’ γ€ˆ0; Y〉F βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. β€œRefTrie”[X1][Y] ⨉ β€œRefTrie”[X2][Y]) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; @@β¦—X1βˆ™{@1}β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ fn is_leaf_with_nat : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œRefTrie”[X][Y] β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; Y〉F β€œBool”) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_keyword_sugar β‡’ Thk[@@β¦—X1βˆ™{@1}⦘](γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F ⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y1: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let m = n + 1 β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X1: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y2: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ } [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ refthunk memo_keyword_sugar β‡’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F Ref[@@β¦—X1βˆ™{@1}⦘](⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)]) ⨉ ⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ βœ” [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@@β¦—X1βˆ™{@1}⦘; 0〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat[X1] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴n: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_zero) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat[X1][Y] β‡’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ γ€ˆ0; 0〉F Nm[X1βˆ™{@2}] in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let t2 = ((force map) f) t β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: ⌊RefTrieβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_zero) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴n: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@@β¦—X1βˆ™{@1}⦘; 0〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ γ€ˆ@@β¦—X1βˆ™{@1}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force is_leaf_with_nat[X1][Y]) t β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ@@β¦—X1βˆ™{@1}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ@@β¦—X1βˆ™{@1}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ γ€ˆ@@β¦—X1βˆ™{@1}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_r = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ let tt = get t β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ let let_split_sugar = let memo_name_sugar = {n * name @1}; let memo_keyword_sugar = {thunk memo_name_sugar (let app_get_sugar_l = {get l}; (force filter[X2][Y2]) app_get_sugar_l) f}; refthunk memo_keyword_sugar β‡’ γ€ˆ@@β¦—X1βˆ™{@1}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉F Ref[@@β¦—X1βˆ™{@1}⦘](⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)]) ⨉ ⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)] in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊SeqβŒ‹[X][(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) h2) t2 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_zero β‡’ ? [INFO] [stdout] β”‚ β•‘ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ } [fungi_lang::examples::op_nat: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ type List : ? := (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2]))) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force is_leaf_with_nat[X1][Y]) t) y β‡’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_is_zero β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ@@β¦—X1βˆ™{@1}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) h2 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_zero β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_zero) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ r β‡’ Ref[Y3]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ get r β‡’ γ€ˆ0; Y3〉F (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ t β‡’ ⌊RefTrieβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ get t β‡’ γ€ˆ0; Y〉F (rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ fn ref_cons : Thk[0](βˆ€X:NmSet|⊀.βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Y:NmSet|⊀.βˆ€Y1:NmSet|⊀.βˆ€Y2:NmSet|Y1 βŠ₯ Y2 ≑ Y : NmSet.γ€ˆ0; 0〉Nm[X1] β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉Ref[Y1](β€œList”[X2][Y2]) β†’ γ€ˆ@!(X1); 0〉F Ref[@!(X1)](β€œList”[X1 βŠ₯ X2][Y1 βŠ₯ Y2])) := ... [INFO] [stdout] β”‚ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let b = ((force is_leaf_with_nat[X1][Y]) t) y β‡’ γ€ˆ0; Y〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ } [fungi_lang::examples::op_nat: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ let tt = get t β‡’ γ€ˆ0; Y〉F (rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X][Y] in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X1: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_zero) n β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ0; 0〉F Ref[Y1](⌊SeqβŒ‹[X1][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X2: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_r = ... β‡’ γ€ˆ0; Y3〉F (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4] in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force max[X3][Y4]) app_get_sugar_r β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; Y〉 ≑ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let r = let ref_name_sugar = {x * ni}; ref ref_name_sugar roll inj2 inj1 (x, y) : F β€œRefTrie”[X2][WS_Trie(X2)] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ cons β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y1: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y2: NmSet [INFO] [stdout] β””αšœfungi_lang::examples::op_nat::static_tests:100 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴n: Nm[X1] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max[X3][Y4] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴h: Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) h2 β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: Ref[Y1](⌊ListβŒ‹[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ subcase _emp : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ@@β¦—X1βˆ™{@1}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2); @@β¦—X1βˆ™{@1}⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)〉 ≑ γ€ˆ@@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X1⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X3⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X3⦘⦘; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stdout] β”‚ β•‘ β”‚ subcase sugar_match_snd : (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y])) [INFO] [stderr] stack backtrace: [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a86917b - fungi_lang::examples::op_nat::static_tests::typing::help::h641648d9078246d0 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a866ec1 - fungi_lang::examples::op_nat::static_tests::typing::{{closure}}::h67b9355852fedf8d [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857e01 - std::sys_common::backtrace::__rust_begin_short_backtrace::h2ba64b44821eb48e [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cbf1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h24967a41c87505f7 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa210 - as core::ops::function::FnOnce<()>>::call_once::h358316b4a05dd481 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a830d2d - std::panicking::try::do_call::he14ca737b50b9662 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82f4f7 - std::panicking::try::heb0950a04912d0ce [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fbab1 - std::panic::catch_unwind::ha1d1295f03968d92 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a827cfd - std::thread::Builder::spawn_unchecked::{{closure}}::h377b7c4f779b404c [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6abea8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h169f468400303653 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max[X3] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ case sugar_match_snd of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase leaf : Nm[X] ⨉ Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ γ€ˆ0; 0〉F Nm[X2βˆ™{Z}] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X2][(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] test examples::op_nat::static_tests::typing ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret leaf β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ split let_split_sugar rsl. sl. ... [INFO] [stdout] β”‚ β”‚ β”‚ var rsl : Ref[@@β¦—X1βˆ™{@1}⦘](⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)]) [INFO] [stdout] β”‚ β”‚ β”‚ var sl : ⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) h2) t2 β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] test shared::list_example::test_elim_forms ... ok [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret leaf β‡’ γ€ˆ0; 0〉F Nm[X] ⨉ Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] test shared::list_example::test_intro_forms ... ok [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar _x. y. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var _x : Nm[X] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var y : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ let let_split_sugar = let memo_name_sugar = {n * name @2}; let memo_keyword_sugar = {thunk memo_name_sugar (let app_get_sugar_r = {get r}; (force filter[X3][Y4]) app_get_sugar_r) f}; refthunk memo_keyword_sugar β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ ? [INFO] [stdout] test shared::list_example::test_serde ... ok [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref_name_sugar β‡’ Nm[X2βˆ™{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ roll inj2 inj1 (x, y) ⇐ βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y])))[X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(ref_name_sugar, roll inj2 inj1 (x, y)) ⇐ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X2][(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let b = n == y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ fn map : Thk[0](γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) β†’ γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0〉F β€œList”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let r = let ref_name_sugar = {x * ni}; ref ref_name_sugar roll inj2 inj1 (x, y) : F β€œRefTrie”[X2][WS_Trie(X2)] β‡’ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X2][(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ fn filter : Thk[0](γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) β†’ γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0〉F β€œList”) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ 𝞴f: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ 𝞴l: ⌊ListβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ max β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚  success: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X2][(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1 βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ γ€ˆ0; 0〉F Nm[X1βˆ™{@2}] in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max[X3] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X3][Y] β†’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ name @0 β‡’ Nm[{@0}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ Ref[Y1](⌊ListβŒ‹[X2][Y2]) βŠ† Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1~:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1~:NmSet. βˆƒY2~:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ roll inj1 () ⇐ βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ Nm[X] ⨉ Nat(βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ Nm[X] ⨉ Nat(βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y](seq[X2][Y]) ⨉ Ref[Y](seq[X3][Y]))))[X2][Y]) ⨉ Ref[Y]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ Nm[X] ⨉ Nat(βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y](seq[X2][Y]) ⨉ Ref[Y](seq[X3][Y]))))[X3][Y])))[X1][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X2][(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1 βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let b = n == y β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ subcase c : Nat ⨉ (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚  success: ... ⊒ Ref[Y1](⌊ListβŒ‹[X2][Y2]) βŠ† Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1~:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1~:NmSet. βˆƒY2~:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ ref(name @0, roll inj1 ()) ⇐ γ€ˆ0; 0〉F Ref[Y1](⌊SeqβŒ‹[X1][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max[X3][Y4] β‡’ γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X3][Y4] β†’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⊒ n β‡’ Nm[X1] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ γ€ˆ0; 0〉F Nat ⨉ (rec list. (Unit οΌ‹ Nat ⨉ list)) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⊒ roll inj2 pack[X1] pack[X2] pack[Y1] pack[Y2] (n, (h, t)) ⇐ βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]))[X1 βŠ₯ X2][Y1 βŠ₯ Y2] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force max[X3][Y4]) app_get_sugar_r β‡’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4] βŠ† (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⊒ ref(n, roll inj2 pack[X1] pack[X2] pack[Y1] pack[Y2] (n, (h, t))) ⇐ γ€ˆ@!(X1); 0〉F Ref[@!(X1)](⌊ListβŒ‹[X1 βŠ₯ X2][Y1 βŠ₯ Y2]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4] βŠ† (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase bin : βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ fn ref_cons : Thk[0](βˆ€X:NmSet|⊀.βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Y:NmSet|⊀.βˆ€Y1:NmSet|⊀.βˆ€Y2:NmSet|Y1 βŠ₯ Y2 ≑ Y : NmSet.γ€ˆ0; 0〉Nm[X1] β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉Ref[Y1](β€œList”[X2][Y2]) β†’ γ€ˆ@!(X1); 0〉F Ref[@!(X1)](β€œList”[X1 βŠ₯ X2][Y1 βŠ₯ Y2])) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ fn cons_ref : Thk[0](βˆ€X:NmSet|⊀.βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Y2:NmSet|⊀.γ€ˆ0; 0〉Nm[X1] β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œList”[X2][Y2] β†’ γ€ˆ@!(X1); 0〉F β€œList”[X1 βŠ₯ X2][@!(X1) βŠ₯ Y2]) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (let app_get_sugar_r = {get r}; (force filter[X3][Y4]) app_get_sugar_r) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_r = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X1: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X2: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y2: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴n: Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let nm = (force name_of_nat) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴h: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: ⌊ListβŒ‹[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ let rt = ref n t β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force name_of_nat) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ r β‡’ Ref[Y3]((rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let j = i + 1 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ split let_split_sugar h. t. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ t β‡’ ⌊ListβŒ‹[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ var h : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ ref(n, t) β‡’ γ€ˆ@@β¦—X1⦘; 0〉F Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let j = i + 1 β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β”‚ let rt = ref n t β‡’ γ€ˆ@@β¦—X1⦘; 0〉F Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][Y2]) in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ@!(X1); 0〉F ⌊ListβŒ‹[X1 βŠ₯ X2][@!(X1) βŠ₯ Y2] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ get r β‡’ γ€ˆ0; Y3〉F (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4] [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ@!(X1); 0〉 - γ€ˆ@@β¦—X1⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ var t : (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ@!(X1); 0〉 - γ€ˆ@@β¦—X1⦘; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let t2 = ((force filter) f) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force name_of_nat β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ fn is_leaf_with_nat : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œRefTrie”[X][Y] β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; Y〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ fn trie_replrec : Thk[0](βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰β€œRefTrie”[X1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆWS_Trie(X2); Y〉F β€œRefTrie”[X1 βŠ₯ X2][Y βˆͺ WS_Trie(X2)] ⨉ β€œBool”) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let nj = name β–² * ni β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y3〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force filter) f) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ name_of_nat β‡’ Thk[0](βˆ€X:NmSet|⊀.γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nm[X]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_r = ... β‡’ γ€ˆ0; Y3〉F (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4] in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force name_of_nat β‡’ βˆ€X:NmSet|⊀.γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nm[X] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force filter) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let nj = name β–² * ni β‡’ γ€ˆ0; 0〉F Nm[{β–²}βˆ™{Z}] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force filter[X3][Y4]) app_get_sugar_r β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1992 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚  success: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth expression App, error: unexpected effect type: ForallIdx("X", NmSet, Tt, Cons(Arrow(Prim(Nat), Cons(Lift(Nm(Var("X"))), WR(Empt ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failure term: App(Force(Var("name_of_nat")), Var("n"))` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X3][Y4] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][Y2]) βŠ† Ref[@!(X1)]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1~:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2~:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y3〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 [INFO] [stdout] β”‚ β•‘ β”‚  success: ... ⊒ Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][Y2]) βŠ† Ref[@!(X1)]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1~:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2~:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X1: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X2: NmSet [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ fn cons_ref : Thk[0](βˆ€X:NmSet|⊀.βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Y2:NmSet|⊀.γ€ˆ0; 0〉Nm[X1] β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œList”[X2][Y2] β†’ γ€ˆ@!(X1); 0〉F β€œList”[X1 βŠ₯ X2][@!(X1) βŠ₯ Y2]) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let nm = (force name_of_nat) n β‡’ Error: unexpected effect type: ForallIdx("X", NmSet, Tt, Cons(Arrow(Prim(Nat), Cons(Lift(Nm(Var("X"))), WR(Empt ... in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F Ref[Y1](⌊SeqβŒ‹[X1][Y2]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let pred = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ fn len : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œList”[X][Y] β†’ γ€ˆ0; Y〉F β€œNat”) := ... [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Z: Nm [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: ⌊RefTrieβŒ‹[X1][Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_name_sugar β‡’ Nm[X1βˆ™{@2}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ let app_get_sugar_r = {get r}; (force max[X3][Y4]) app_get_sugar_r β‡’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force nat_sub) n) 1 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ thunk(memo_name_sugar, let app_get_sugar_r = {get r}; (force max[X3][Y4]) app_get_sugar_r) β‡’ γ€ˆ@@β¦—X1βˆ™{@2}⦘; 0〉F Thk[@@β¦—X1βˆ™{@2}⦘](γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X3] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴l: ⌊ListβŒ‹[X][Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴x: Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force nat_sub) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴y: Nat [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴i: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let tc = (force children[X1][Y]) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_sub β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β•‘ β”‚ subcase c : βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ γ€ˆ@@β¦—X1βˆ™{@2}⦘; 0〉F Thk[@@β¦—X1βˆ™{@2}⦘](γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F ⌊OpNatβŒ‹) in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ exists X1 : NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴ni: Nm[{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ exists X2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = i == 12 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ prop X1 βŠ₯ X2 ≑ X : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ exists Y1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force children[X1][Y]) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_sub β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ filter β‡’ Thk[0](γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_sub β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children[X1][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children[X1] β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; @@β¦—X1βˆ™{@2}β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ exists Y2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = i == 12 β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ prop Y1 βŠ₯ Y2 ≑ Y : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; @@β¦—X1βˆ™{@2}β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter β‡’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let let_split_sugar = ret c β‡’ γ€ˆ0; 0〉F Nm[X1] ⨉ Nat ⨉ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ filter β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊SeqβŒ‹[X][(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force nat_sub) n β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_keyword_sugar β‡’ Thk[@@β¦—X1βˆ™{@2}⦘](γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊SeqβŒ‹[X][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)] [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force filter) f β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ split let_split_sugar x. sugar_split_snd. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force nat_sub) n) 1 β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let b = ((force is_leaf_with_nat[X1][Y]) t) y β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ refthunk memo_keyword_sugar β‡’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F Ref[@@β¦—X1βˆ™{@2}⦘](⌊OpNatβŒ‹) ⨉ ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var x : Nm[X1] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@@β¦—X1βˆ™{@2}⦘; 0〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X3] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X3][Y] β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F ⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ children β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. ⌊RefTrieβŒ‹[X1][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X3][Y4] β‡’ γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X3][Y4] β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F ⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var sugar_split_snd : Nat ⨉ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ split sugar_split_snd y. ys. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var y : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force is_leaf_with_nat[X1][Y]) t) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let pred = ... β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let seq_ref = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force is_leaf_with_nat[X1][Y]) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force filter[X3][Y4]) app_get_sugar_r β‡’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F ⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force filter) f) t β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4] βŠ† (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var ys : Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4] βŠ† (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][Y4] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. ⌊RefTrieβŒ‹[X1][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force seq_gen) pred β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force seq_gen β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat[X1][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let lenys = let app_get_sugar_ys = {get ys}; (force len[X2][Y2]) app_get_sugar_ys β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let app_get_sugar_ys = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let t2 = ((force filter) f) t β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y3〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let sugar_if_scrutinee = (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children[X1] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; Y〉F βˆƒX1~:NmSet. βˆƒX2:NmSet | X1~ βŠ₯ X2 ≑ X1 : NmSet. ⌊RefTrieβŒ‹[X1~][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat[X1] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@@β¦—X1βˆ™{@2}⦘; 0〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ γ€ˆ@@β¦—X1βˆ™{@2}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ys β‡’ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ get ys β‡’ γ€ˆ0; Y1〉F (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ@@β¦—X1βˆ™{@2}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ@@β¦—X1βˆ™{@2}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ γ€ˆ@@β¦—X1βˆ™{@2}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ seq_gen β‡’ Thk[0](βˆ€Y1:NmSet|⊀.βˆ€X1:NmSet|⊀.βˆ€Y2:NmSet|⊀.γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Ref[Y1](⌊SeqβŒ‹[X1][Y2])) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children[X1][Y] β‡’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; Y〉F βˆƒX1~:NmSet. βˆƒX2:NmSet | X1~ βŠ₯ X2 ≑ X1 : NmSet. ⌊RefTrieβŒ‹[X1~][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force children[X1][Y]) t β‡’ γ€ˆ0; Y〉F βˆƒX1~:NmSet. βˆƒX2:NmSet | X1~ βŠ₯ X2 ≑ X1 : NmSet. ⌊RefTrieβŒ‹[X1~][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y3〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; Y3〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (let app_get_sugar_r = {get r}; (force filter[X3][Y4]) app_get_sugar_r) f β‡’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F ⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let app_get_sugar_ys = ... β‡’ γ€ˆ0; Y1〉F (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ is_leaf_with_nat β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X][Y] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force len[X2][Y2]) app_get_sugar_ys β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force len[X2][Y2] β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ let let_split_sugar = let memo_name_sugar = {n * name @2}; let memo_keyword_sugar = {thunk memo_name_sugar let app_get_sugar_r = {get r}; (force max[X3][Y4]) app_get_sugar_r}; refthunk memo_keyword_sugar β‡’ γ€ˆ@@β¦—X1βˆ™{@2}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F Ref[@@β¦—X1βˆ™{@2}⦘](⌊OpNatβŒ‹) ⨉ ⌊OpNatβŒ‹ in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X1⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X3⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X3⦘⦘; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X1⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X3⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X3⦘⦘; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ@@β¦—X1βˆ™{@2}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force len[X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y3〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force len β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let tc = (force children[X1][Y]) t β‡’ γ€ˆ0; Y〉F βˆƒX1~:NmSet. βˆƒX2:NmSet | X1~ βŠ₯ X2 ≑ X1 : NmSet. ⌊RefTrieβŒ‹[X1~][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ len β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y3〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force len β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force len[X2] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y] β†’ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force len[X2][Y2] β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y2] β†’ γ€ˆ0; Y2〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X][Y] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force seq_gen β‡’ βˆ€Y1:NmSet|⊀.βˆ€X1:NmSet|⊀.βˆ€Y2:NmSet|⊀.γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Ref[Y1](⌊SeqβŒ‹[X1][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force len[X2][Y2]) app_get_sugar_ys β‡’ γ€ˆ0; Y2〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] βŠ† (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1992 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] βŠ† (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth expression App, error: unexpected effect type: ForallIdx("Y1", NmSet, Tt, ForallIdx("X1", NmSet, Tt, ForallIdx("Y2", NmSet, Tt, ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failure term: App(Force(Var("seq_gen")), Var("pred"))` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let seq_ref = ... β‡’ Error: unexpected effect type: ForallIdx("Y1", NmSet, Tt, ForallIdx("X1", NmSet, Tt, ForallIdx("Y2", NmSet, Tt, ... in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let leaf_ref = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth value Var, error: variable nm not in scope [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat[X1] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failure term: Var("nm")` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_name_sugar β‡’ Nm[X1βˆ™{@2}] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (let app_get_sugar_r = {get r}; (force filter[X3][Y4]) app_get_sugar_r) f β‡’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F ⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth value Var, error: variable nm not in scope [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat[X1][Y] β‡’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failure term: Var("nm")` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; Y〉 ≑ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth value Pair, error: parameter 0 unknown type [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ f β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ exists X1l : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ exists X1r : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y2〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force is_leaf_with_nat[X1][Y]) t β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y2〉 ≑ γ€ˆ0; Y2〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ thunk(memo_name_sugar, (let app_get_sugar_r = {get r}; (force filter[X3][Y4]) app_get_sugar_r) f) β‡’ γ€ˆ@@β¦—X1βˆ™{@2}⦘; 0〉F Thk[@@β¦—X1βˆ™{@2}⦘](γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F ⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth value Inj1, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ prop X1l βŠ₯ X1r ≑ X1 : NmSet true [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ γ€ˆ@@β¦—X1βˆ™{@2}⦘; 0〉F Thk[@@β¦—X1βˆ™{@2}⦘](γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F ⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)]) in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ0; Y2〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ0; Y2〉 ≑ γ€ˆ0; Y1 βˆͺ Y2〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; @@β¦—X1βˆ™{@2}β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failure term: Inj1(Pair(Var("nm"), Var("n")))` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let let_split_sugar = ret tc β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let lenys = let app_get_sugar_ys = {get ys}; (force len[X2][Y2]) app_get_sugar_ys β‡’ γ€ˆ0; Y1 βˆͺ Y2〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; @@β¦—X1βˆ™{@2}β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y1 βˆͺ Y2〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_keyword_sugar β‡’ Thk[@@β¦—X1βˆ™{@2}⦘](γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F ⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth value Inj2, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ refthunk memo_keyword_sugar β‡’ γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F Ref[@@β¦—X1βˆ™{@2}⦘](⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)]) ⨉ ⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@@β¦—X1βˆ™{@2}⦘; 0〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@@β¦—X1βˆ™{@2}⦘; 0〉 then γ€ˆ(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ γ€ˆ@@β¦—X1βˆ™{@2}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ@@β¦—X1βˆ™{@2}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ@@β¦—X1βˆ™{@2}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ γ€ˆ@@β¦—X1βˆ™{@2}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X1⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X3⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X3⦘⦘; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ@@β¦—X1βˆ™{@2}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ γ€ˆ0; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 [INFO] [stdout] β”‚ β”‚ β”‚ let let_split_sugar = let memo_name_sugar = {n * name @2}; let memo_keyword_sugar = {thunk memo_name_sugar (let app_get_sugar_r = {get r}; (force filter[X3][Y4]) app_get_sugar_r) f}; refthunk memo_keyword_sugar β‡’ γ€ˆ@@β¦—X1βˆ™{@2}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉F Ref[@@β¦—X1βˆ™{@2}⦘](⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)]) ⨉ ⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)] in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X1⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X3⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X3⦘⦘; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊SeqβŒ‹[X][(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failure term: Inj2(Inj1(Pair(Var("nm"), Var("n"))))` [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X1⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X3⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X3⦘⦘; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ@@β¦—X1βˆ™{@2}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth value Roll, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let let_split_sugar = ret tc β‡’ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X1l][Y] ⨉ ⌊RefTrieβŒ‹[X1r][Y] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y1 βˆͺ Y2〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆΓ˜; Γ˜γ€‰F Nat βŠ† γ€ˆΓ˜; Y1 βŠ₯ Y2〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failure term: Roll(Inj2(Inj1(Pair(Var("nm"), Var("n")))))` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth expression Ref, error: error inside (the 'primary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let leaf_ref = ... β‡’ Error: error inside (the 'primary' subderivation) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force is_leaf_with_nat[X1][Y]) t) y β‡’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ fn len : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œList”[X][Y] β†’ γ€ˆ0; Y〉F β€œNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β”‚ β”‚ split let_split_sugar _rsr. mr. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ split let_split_sugar lc. rc. ... [INFO] [stdout] β”‚ β”‚ β”‚ var _rsr : Ref[@@β¦—X1βˆ™{@2}⦘](⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var lc : ⌊RefTrieβŒ‹[X1l][Y] [INFO] [stdout] β”‚ β”‚ β”‚ var mr : ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var rc : ⌊RefTrieβŒ‹[X1r][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let sugar_if_scrutinee = (force f) h β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let nmb = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth value Var, error: variable nm not in scope [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failure term: Var("nm")` [INFO] [stdout] β”‚ β•‘ β”‚ fn map : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) β†’ γ€ˆ0; 0γ€‰β€œList”[X][Y] β†’ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F β€œList”[X][@!(X)]) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth expression NameBin, error: parameter 0 unknown type [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X1⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X3⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X3⦘⦘; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ@@β¦—X1βˆ™{@2}⦘ βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3); @@β¦—X1βˆ™{@2}⦘ βˆͺ Y3 βˆͺ Y4 βŠ₯ (𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)〉 ≑ γ€ˆ0; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ split let_split_sugar rsr. sr. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let nmb = ... β‡’ Error: parameter 0 unknown type in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let bit = ((force nat_hash_bit) y) i β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ var rsr : Ref[@@β¦—X1βˆ™{@2}⦘](⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β”‚ β”‚ var sr : ⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ let sugar_if_scrutinee = (force is_empty[X2][WS_Seq_SR(X2)]) sl β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force nat_hash_bit) y) i β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force is_empty[X2][WS_Seq_SR(X2)]) sl β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ 𝞴f: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty[X2][WS_Seq_SR(X2)] β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force opnat_max) ml) mr β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty[X2] β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force opnat_max) ml β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let b = ((force is_leaf_with_nat[X1][Y]) t) y β‡’ γ€ˆ0; Y〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force opnat_max β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; Y〉 ≑ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let r = let ref_name_sugar = {x * ni}; ref ref_name_sugar roll inj2 inj1 (x, y) : F β€œRefTrie”[X2][WS_Trie(X2)] β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ 𝞴l: ⌊ListβŒ‹[X][Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) h) t2 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ is_empty β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force nat_hash_bit) y β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Var, error: variable nmb not in scope [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Var("nmb")` [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty[X2] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X2][Y] β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth index-term Unknown, error: unknown index term [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Unknown` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty[X2][WS_Seq_SR(X2)] β‡’ γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X2][WS_Seq_SR(X2)] β†’ γ€ˆ0; WS_Seq_SR(X2)〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth index-term Unknown, error: unknown index term [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Unknown` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force is_empty[X2][WS_Seq_SR(X2)]) sl β‡’ γ€ˆ0; WS_Seq_SR(X2)〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)] βŠ† (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][@@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X2⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X2⦘⦘] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_hash_bit β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)] βŠ† (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X2][@@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X2⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X2⦘⦘] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; WS_Seq_SR(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; WS_Seq_SR(X2)〉 ≑ γ€ˆ0; WS_Seq_SR(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_hash_bit β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ let sugar_if_scrutinee = (force is_empty[X2][WS_Seq_SR(X2)]) sl β‡’ γ€ˆ0; WS_Seq_SR(X2)〉F Bool in [INFO] [stdout] β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊SeqβŒ‹[X][(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase c : βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ0; WS_Seq_SR(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ opnat_max β‡’ Thk[0](γ€ˆ0; 0γ€‰βŒŠOpNatβŒ‹ β†’ γ€ˆ0; 0γ€‰βŒŠOpNatβŒ‹ β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force opnat_max β‡’ γ€ˆ0; 0γ€‰βŒŠOpNatβŒ‹ β†’ γ€ˆ0; 0γ€‰βŒŠOpNatβŒ‹ β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists X1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ γ€ˆ0; 0〉F Nm[X2βˆ™{Z}] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X2][(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists X2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ prop X1 βŠ₯ X2 ≑ X : NmSet true [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ0; WS_Seq_SR(X2)〉 ≑ γ€ˆ0; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)] βŠ† (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X][@@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X⦘⦘] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_hash_bit β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth index-term Unknown, error: unknown index term [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Unknown` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)] βŠ† (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X][@@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X⦘⦘] [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists Y1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists Y2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ prop Y1 βŠ₯ Y2 ≑ Y : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ cons β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force opnat_max) ml β‡’ γ€ˆ0; 0γ€‰βŒŠOpNatβŒ‹ β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Var, error: variable nmb not in scope [INFO] [stdout] β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Var("nmb")` [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Var, error: variable leaf_ref not in scope [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let sugar_if_scrutinee = (force is_empty[X3][WS_Seq_SR(X3)]) sr β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Var("leaf_ref")` [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force nat_hash_bit) y β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref_name_sugar β‡’ Nm[X2βˆ™{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ roll inj2 inj1 (x, y) ⇐ βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y])))[X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) h β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ γ€ˆ0; 0〉F Nm[X1] ⨉ Nat ⨉ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F ⌊ListβŒ‹[X][@!(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(ref_name_sugar, roll inj2 inj1 (x, y)) ⇐ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X2][(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force is_empty[X3][WS_Seq_SR(X3)]) sr β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Var, error: variable seq_ref not in scope [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty[X3][WS_Seq_SR(X3)] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Var("seq_ref")` [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force opnat_max) ml) mr β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force nat_hash_bit) y) i β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar n. sugar_split_snd. ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Pair, error: parameter 0 unknown type [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var n : Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var sugar_split_snd : Nat ⨉ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Pair, error: parameter 1 unknown type [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let r = let ref_name_sugar = {x * ni}; ref ref_name_sugar roll inj2 inj1 (x, y) : F β€œRefTrie”[X2][WS_Trie(X2)] β‡’ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X2][(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split sugar_split_snd h. t. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Pair, error: parameter 0 unknown type [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var h : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Pack, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var t : Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty[X3] β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) h) t2 β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let h2 = (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Pack(Unknown, Pair(Var("nmb"), Pair(Var("n"), Pair(Var("leaf_ref"), Var("seq_ref ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆΓ˜; Γ˜γ€‰F (Unit οΌ‹ Nat) βŠ† γ€ˆΓ˜; Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X1⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X1⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X2⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X2⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X3⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X3β¦˜β¦˜γ€‰F (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let bit = ((force nat_hash_bit) y) i β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X2][(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1 βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X2][(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1 βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Pack, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Pack(Unknown, Pack(Unknown, Pair(Var("nmb"), Pair(Var("n"), Pair(Var("leaf_ref") ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Pack, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Pack(Unknown, Pack(Unknown, Pack(Unknown, Pair(Var("nmb"), Pair(Var("n"), Pair(V ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ is_empty β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F Bool) [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ let max = ... β‡’ γ€ˆ0; 0〉F Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊OpNatβŒ‹) in [INFO] [stdout] β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ if bit { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = (((((force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc) x) y) j) nj β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Inj2, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Inj2(Pack(Unknown, Pack(Unknown, Pack(Unknown, Pair(Var("nmb"), Pair(Var("n"), P ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let j = i + 1 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β””αšœfungi_lang::examples::seq_max:2 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty[X3] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X3][Y] β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ f β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty[X3][WS_Seq_SR(X3)] β‡’ γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X3][WS_Seq_SR(X3)] β†’ γ€ˆ0; WS_Seq_SR(X3)〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force is_empty[X3][WS_Seq_SR(X3)]) sr β‡’ γ€ˆ0; WS_Seq_SR(X3)〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Inj2, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)] βŠ† (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][@@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X3⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X3⦘⦘] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Inj2(Inj2(Pack(Unknown, Pack(Unknown, Pack(Unknown, Pair(Var("nmb"), Pair(Var("n ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Roll, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Roll(Inj2(Inj2(Pack(Unknown, Pack(Unknown, Pack(Unknown, Pair(Var("nmb"), Pair(V ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((((force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc) x) y) j) nj β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth expression Ref, error: error inside (the 'primary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ fn filter : Thk[0](γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) β†’ γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0〉F β€œList”) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)] βŠ† (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X3][@@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X3⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X3⦘⦘] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc) x) y) j β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let j = i + 1 β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; WS_Seq_SR(X3)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; WS_Seq_SR(X3)〉 ≑ γ€ˆ0; WS_Seq_SR(X3)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ fn map_filter : Thk[0](γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) β†’ γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0〉F β€œList”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let sugar_if_scrutinee = (force is_empty[X3][WS_Seq_SR(X3)]) sr β‡’ γ€ˆ0; WS_Seq_SR(X3)〉F Bool in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊SeqβŒ‹[X][(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ0; WS_Seq_SR(X3)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ 𝞴f: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ 𝞴l: ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to check expression Let, error: unexpected effect type: ForallIdx("X", NmSet, Tt, Cons(Arrow(Prim(Nat), Cons(Lift(Nm(Var("X"))), WR(Empt ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let nj = name β–² * ni β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc) x) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc) x β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let h2 = (force f) h β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F ⌊ListβŒ‹[X][@!(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let nj = name β–² * ni β‡’ γ€ˆ0; 0〉F Nm[{β–²}βˆ™{Z}] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = let memo_keyword_sugar = {thunk n let app_get_sugar_t = {get t}; ((force map[X2][Y2]) f) app_get_sugar_t}; refthunk memo_keyword_sugar β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Let("nm", App(Force(Var("name_of_nat")), Var("n")), Let("pred", App(App(Force(Va ... [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_t = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check expression IfThenElse, error: parameter 2 type mismatch  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ subcase c : Nat ⨉ (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ0; WS_Seq_SR(X3)〉 ≑ γ€ˆ0; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2] β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)] βŠ† (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X][@@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X⦘⦘] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let tc = (force children[X1][Y]) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check expression Fix, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ t β‡’ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force children[X1][Y]) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ fn seq_gen : Thk[0](βˆ€Y1:NmSet|⊀.βˆ€X1:NmSet|⊀.βˆ€Y2:NmSet|⊀.γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Ref[Y1](β€œSeq”[X1][Y2])) [Check error] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children[X1][Y] β‡’ ? [INFO] [stdout] β”‚ } [fungi_lang::examples::seq_nat_gen: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β””αšœfungi_lang::examples::seq_nat_gen::static_tests:32 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ γ€ˆ0; 0〉F Nat ⨉ (rec list. (Unit οΌ‹ Nat ⨉ list)) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ get t β‡’ γ€ˆ0; Y1〉F (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ split let_split_sugar h. t. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children[X1] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ var h : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ var t : (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ trie_replrec β‡’ Thk[0](βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let t2 = ((force map_filter) f) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_t = ... β‡’ γ€ˆ0; Y1〉F (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force map_filter) f) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)] βŠ† (rec seq. βˆ€X:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet. βˆƒX3:NmSet | X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2][Y2]) ⨉ Ref[Y3](seq[X3][Y4])))[X][@@β¦—(𝞴x:Nm.xβˆ™@1)β¦—X⦘⦘ βŠ₯ @@β¦—(𝞴x:Nm.xβˆ™@2)β¦—X⦘⦘] [INFO] [stderr] stack backtrace: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force map[X2][Y2]) f) app_get_sugar_t β‡’ ? [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] thread ' ' panicked at ' Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" } ', src/vis.rs : 249 : 17 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a57f1bb - fungi_lang::examples::seq_nat_gen::static_tests::typing::help::h045fa42e59b13052 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a57cf01 - fungi_lang::examples::seq_nat_gen::static_tests::typing::{{closure}}::h20a203fa26a1d603 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a8580c1 - std::sys_common::backtrace::__rust_begin_short_backtrace::hd98b1c6ae39d57a8 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cf51 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hdde28ee809bb3a0e [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa510 - as core::ops::function::FnOnce<()>>::call_once::hf0eb64e7523c2475 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a83030d - std::panicking::try::do_call::h70e414536d3a73a0 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82eb67 - std::panicking::try::ha94fcee2413c98d4 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb8d1 - std::panic::catch_unwind::h4a5867d1a24ed616 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a8274bd - std::thread::Builder::spawn_unchecked::{{closure}}::h1ef570e925357df2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac108 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h4395a327332736bc [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force map[X2][Y2]) f β‡’ ? [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force map_filter) f β‡’ ? [INFO] [stderr] stack backtrace: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map_filter β‡’ ? [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ } else { [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a76550d - fungi_lang::examples::seq_max::listing::help::h2845a7a7c4683e52 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a755061 - fungi_lang::examples::seq_max::listing::{{closure}}::h92e04a0b6aa350ef [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a8580a1 - std::sys_common::backtrace::__rust_begin_short_backtrace::hc23dd88f124477cf [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82ce91 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hac32f46c2cd5ce56 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa3f0 - as core::ops::function::FnOnce<()>>::call_once::h9badf12354fe1f77 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a83081d - std::panicking::try::do_call::ha6ec2087d6d1d2d4 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82f0b7 - std::panicking::try::hcc9b41474d8a0f9c [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb9d1 - std::panic::catch_unwind::h718bdb494f0268f5 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82777d - std::thread::Builder::spawn_unchecked::{{closure}}::h21c86736e67fc6f5 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6abda8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h01203e61505fa204 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] test examples::seq_nat_gen::static_tests::typing ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map[X2][Y2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l] β‡’ βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1l βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1l][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ children β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. ⌊RefTrieβŒ‹[X1][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2] β‡’ βˆ€Y:NmSet|X1l βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1l][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. ⌊RefTrieβŒ‹[X1][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ map_filter β‡’ Thk[0](γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map_filter β‡’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—X1βˆ™{@1}⦘](⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)]) βŠ† Ref[(𝞴x:NmSet.@!(xβˆ™{@1}))(X1)]((rec seq. βˆ€X~:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1~:NmSet. βˆƒX2~:NmSet. βˆƒX3~:NmSet | X1~ βŠ₯ X2~ βŠ₯ X3~ ≑ X~ : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1~] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2~][Y2]) ⨉ Ref[Y3](seq[X3~][Y4])))[X2][(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children[X1] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; Y〉F βˆƒX1~:NmSet. βˆƒX2:NmSet | X1~ βŠ₯ X2 ≑ X1 : NmSet. ⌊RefTrieβŒ‹[X1~][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map[X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children[X1][Y] β‡’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; Y〉F βˆƒX1~:NmSet. βˆƒX2:NmSet | X1~ βŠ₯ X2 ≑ X1 : NmSet. ⌊RefTrieβŒ‹[X1~][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force children[X1][Y]) t β‡’ γ€ˆ0; Y〉F βˆƒX1~:NmSet. βˆƒX2:NmSet | X1~ βŠ₯ X2 ≑ X1 : NmSet. ⌊RefTrieβŒ‹[X1~][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2][Y] β‡’ βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1l][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force map_filter) f β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] test examples::seq_max::listing ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force map_filter) f) t β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—X1βˆ™{@1}⦘](⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)]) βŠ† Ref[(𝞴x:NmSet.@!(xβˆ™{@1}))(X1)]((rec seq. βˆ€X~:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1~:NmSet. βˆƒX2~:NmSet. βˆƒX3~:NmSet | X1~ βŠ₯ X2~ βŠ₯ X3~ ≑ X~ : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1~] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2~][Y2]) ⨉ Ref[Y3](seq[X3~][Y4])))[X2][(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—X1βˆ™{@2}⦘](⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)]) βŠ† Ref[(𝞴x:NmSet.@!(xβˆ™{@2}))(X1)]((rec seq. βˆ€X~:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1~:NmSet. βˆƒX2~:NmSet. βˆƒX3~:NmSet | X1~ βŠ₯ X2~ βŠ₯ X3~ ≑ X~ : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1~] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2~][Y2]) ⨉ Ref[Y3](seq[X3~][Y4])))[X3][(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}] β‡’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1l][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let tc = (force children[X1][Y]) t β‡’ γ€ˆ0; Y〉F βˆƒX1~:NmSet. βˆƒX2:NmSet | X1~ βŠ₯ X2 ≑ X1 : NmSet. ⌊RefTrieβŒ‹[X1~][Y] ⨉ ⌊RefTrieβŒ‹[X2][Y] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc β‡’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ map β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X][Y] β†’ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F ⌊ListβŒ‹[X][@!(X)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X][Y] β†’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X); Y βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X)〉F ⌊ListβŒ‹[X][(𝞴x:NmSet.@@β¦—x⦘)(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1l][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1l][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let t2 = ((force map_filter) f) t β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; Y〉 ≑ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—X1βˆ™{@2}⦘](⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)]) βŠ† Ref[(𝞴x:NmSet.@!(xβˆ™{@2}))(X1)]((rec seq. βˆ€X~:NmSet.βˆ€Y:NmSet.((Unit οΌ‹ Nat) οΌ‹ βˆƒX1~:NmSet. βˆƒX2~:NmSet. βˆƒX3~:NmSet | X1~ βŠ₯ X2~ βŠ₯ X3~ ≑ X~ : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet. βˆƒY3:NmSet. βˆƒY4:NmSet | Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet. Nm[X1~] ⨉ ⌊LevβŒ‹ ⨉ Ref[Y1](seq[X2~][Y2]) ⨉ Ref[Y3](seq[X3~][Y4])))[X3][(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let oh2 = (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ exists X1l : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ exists X1r : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1l][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1l][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ prop X1l βŠ₯ X1r ≑ X1 : NmSet true [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map[X2] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y] β†’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ f β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map[X2][Y2] β‡’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y2] β†’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force map[X2][Y2]) f β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y2] β†’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let let_split_sugar = ret tc β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let let_split_sugar = ret tc β‡’ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X1l][Y] ⨉ ⌊RefTrieβŒ‹[X1r][Y] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc) x β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let oh2 = (force f) h β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc) x) y β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ split let_split_sugar lc. rc. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var lc : ⌊RefTrieβŒ‹[X1l][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var rc : ⌊RefTrieβŒ‹[X1r][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let bit = ((force nat_hash_bit) y) i β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force nat_hash_bit) y) i β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ case oh2 of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force map[X2][Y2]) f) app_get_sugar_t β‡’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ subcase h2 : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc) x) y) j β‡’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force nat_hash_bit) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) h) t2 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_hash_bit β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] βŠ† (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] βŠ† (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ let filter = ... β‡’ γ€ˆ0; 0〉F Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X); Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉F ⌊SeqβŒ‹[X][(𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)]) in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β””αšœfungi_lang::examples::seq_filter:2 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ cons β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_hash_bit β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_hash_bit β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ let app_get_sugar_t = {get t}; ((force map[X2][Y2]) f) app_get_sugar_t β‡’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ thunk(n, let app_get_sugar_t = {get t}; ((force map[X2][Y2]) f) app_get_sugar_t) β‡’ γ€ˆ@@β¦—X1⦘; 0〉F Thk[@@β¦—X1⦘](γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) h β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((((force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc) x) y) j) nj β‡’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ γ€ˆ@@β¦—X1⦘; 0〉F Thk[@@β¦—X1⦘](γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force nat_hash_bit) y β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; @@β¦—X1β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[{β–²}βˆ™{Z}] βŠ† Nm[{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) h) t2 β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; @@β¦—X1β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  failure: ... ⊒ Nm[{β–²}βˆ™{Z}] βŠ† Nm[{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1308 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Detailed errors for checking type of variable nj: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ .. Variable nj's type: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Nm[{β–²}βˆ™{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ...does not check against type: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Nm[{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_keyword_sugar β‡’ Thk[@@β¦—X1⦘](γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ refthunk memo_keyword_sugar β‡’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) ⨉ ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ .. Variable nj's type: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Nm[{β–²}βˆ™{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ...does not check against type: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Nm[{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1313 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check value Var, error: annotation mismatch [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ fn map_filter : Thk[0](γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) β†’ γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0〉F β€œList”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ Failure term: Var("nj")` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ fn reverse : Thk[0](γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0〉F β€œList”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth expression App, error: parameter 1 type incorrect [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force nat_hash_bit) y) i β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@@β¦—X1⦘; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = (((((force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc) x) y) j) nj β‡’ Error: parameter 1 type incorrect in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ 𝞴l: ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ 𝞴r: ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@@β¦—X1⦘; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = let memo_keyword_sugar = {thunk n let app_get_sugar_t = {get t}; ((force map[X2][Y2]) f) app_get_sugar_t}; refthunk memo_keyword_sugar β‡’ γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) ⨉ ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F ⌊ListβŒ‹[X][@!(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ split let_split_sugar tx. b. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ var tx : ⌊RefTrieβŒ‹[X1l][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ var b : ⌊RefTrieβŒ‹[X1r][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let r = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let bit = ((force nat_hash_bit) y) i β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ subcase c : Nat ⨉ (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ0; Y βŠ₯ @!(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar rt2. _t2. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var rt2 : Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var _t2 : ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ γ€ˆ0; 0〉F Nm[X2βˆ™{Z}] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ γ€ˆ0; 0〉F Nat ⨉ (rec list. (Unit οΌ‹ Nat ⨉ list)) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ if bit { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) βŠ† Ref[@!(X1)]((rec list. βˆ€X~:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1~:NmSet. βˆƒX2~:NmSet | X1~ βŠ₯ X2~ ≑ X~ : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1~] ⨉ Nat ⨉ Ref[Y1](list[X2~][Y2])))[X2][@!(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1l][Y] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2~][Y]))))[X1l βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1l][Y] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2~][Y]))))[X1l βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1r][Y] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2~][Y]))))[X1r][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ split let_split_sugar h. t. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ var h : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ var t : (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let r2 = ((force cons) h) r β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) βŠ† Ref[@!(X1)]((rec list. βˆ€X~:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1~:NmSet. βˆƒX2~:NmSet | X1~ βŠ₯ X2~ ≑ X~ : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1~] ⨉ Nat ⨉ Ref[Y1](list[X2~][Y2])))[X2][@!(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = (((((force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc) x) y) j) nj β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) h) r β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ fn map : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) β†’ γ€ˆ0; 0γ€‰β€œList”[X][Y] β†’ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F β€œList”[X][@!(X)]) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ fn filter : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) β†’ γ€ˆ0; 0γ€‰β€œList”[X][Y] β†’ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F β€œList”[X][@!(X)]) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1r][Y] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2~][Y]))))[X1r][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref_name_sugar β‡’ Nm[X2βˆ™{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ 𝞴f: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((((force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc) x) y) j) nj β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ 𝞴l: ⌊ListβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ roll inj2 inj2 pack[X1l βŠ₯ X2] pack[X1r] (tx, rc) ⇐ βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y])))[X1 βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(ref_name_sugar, roll inj2 inj2 pack[X1l βŠ₯ X2] pack[X1r] (tx, rc)) ⇐ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ cons β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) h β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc) x) y) j β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc) x) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc) x β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let r = ... β‡’ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2][Y][β–²βˆ™Z] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) h) r β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: parameter 1 type incorrect [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase c : βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists X1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists X2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ prop X1 βŠ₯ X2 ≑ X : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = (((((force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc) x) y) j) nj β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let r2 = ((force cons) h) r β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force reverse) t) r2 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists Y1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists Y2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ prop Y1 βŠ₯ Y2 ≑ Y : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ γ€ˆ0; 0〉F Nm[X1] ⨉ Nat ⨉ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F ⌊ListβŒ‹[X][@!(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force reverse) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force reverse β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ trie_replrec β‡’ Thk[0](βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((((force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc) x) y) j) nj β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc) x) y) j β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ reverse β‡’ Thk[0](γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar n. sugar_split_snd. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force reverse β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var n : Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var sugar_split_snd : Nat ⨉ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split sugar_split_snd h. t. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var h : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var t : Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = let memo_keyword_sugar = {thunk n let app_get_sugar_t = {get t}; ((force filter[X2][Y2]) f) app_get_sugar_t}; refthunk memo_keyword_sugar β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l] β‡’ βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1l βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1l][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2] β‡’ βˆ€Y:NmSet|X1l βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1l][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_t = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2][Y] β‡’ βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1l][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ t β‡’ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc) x) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ get t β‡’ γ€ˆ0; Y1〉F (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc) x β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_t = ... β‡’ γ€ˆ0; Y1〉F (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force filter[X2][Y2]) f) app_get_sugar_t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force filter[X2][Y2]) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2][Y][β–²βˆ™Z] β‡’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1l][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{β–²βˆ™Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force reverse) t β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X2][Y2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force reverse) t) r2 β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc β‡’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{β–²βˆ™Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1l][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1l][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1l][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1l][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ filter β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X][Y] β†’ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F ⌊ListβŒ‹[X][@!(X)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ trie_replrec β‡’ Thk[0](βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ fn reverse : Thk[0](γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0〉F β€œList”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X][Y] β†’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X); Y βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X)〉F ⌊ListβŒ‹[X][(𝞴x:NmSet.@@β¦—x⦘)(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc) x β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{β–²βˆ™Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X2] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y] β†’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ fn fold : Thk[0](γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) β†’ γ€ˆ0; 0〉F β€œNat”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ 𝞴l: ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc) x) y β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{β–²βˆ™Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ 𝞴a: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ 𝞴f: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X2][Y2] β‡’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y2] β†’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force filter[X2][Y2]) f β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y2] β†’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r] β‡’ βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1r βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1r][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2] β‡’ βˆ€Y:NmSet|X1r βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1r][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc) x) y) j β‡’ γ€ˆ0; 0〉Nm[{β–²βˆ™Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ subcase c : Nat ⨉ (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2][Y] β‡’ βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1r][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force filter[X2][Y2]) f) app_get_sugar_t β‡’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((((force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc) x) y) j) nj β‡’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[{β–²}βˆ™{Z}] βŠ† Nm[{β–²βˆ™Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[{β–²}βˆ™{Z}] βŠ† Nm[{β–²βˆ™Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] βŠ† (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] βŠ† (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}] β‡’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1r][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc β‡’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 ≑ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ γ€ˆ0; 0〉F Nat ⨉ (rec list. (Unit οΌ‹ Nat ⨉ list)) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = (((((force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc) x) y) j) nj β‡’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1r][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1r][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1r][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1r][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ split let_split_sugar h. t. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ var h : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ var t : (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let a2 = ((force f) a) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ let app_get_sugar_t = {get t}; ((force filter[X2][Y2]) f) app_get_sugar_t β‡’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc) x β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ thunk(n, let app_get_sugar_t = {get t}; ((force filter[X2][Y2]) f) app_get_sugar_t) β‡’ γ€ˆ@@β¦—X1⦘; 0〉F Thk[@@β¦—X1⦘](γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force f) a) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) a β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a599a58 - fungi_lang::examples::seq_filter::listing::help::hbafcd0a8d64d82f0 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a5801e1 - fungi_lang::examples::seq_filter::listing::{{closure}}::h80edc7b45c1e1203 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857d61 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0b22832282c398e7 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82ceb1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hb169cd9e55061fd6 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa250 - as core::ops::function::FnOnce<()>>::call_once::h43ecb0c0941b8bab [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a83066d - std::panicking::try::do_call::h98518af754b6e151 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82ec77 - std::panicking::try::hac31e05487bd9030 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb851 - std::panic::catch_unwind::h312b445e69c43e5b [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a8295bd - std::thread::Builder::spawn_unchecked::{{closure}}::h6d6c5131857e6265 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac3c8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::haa3167e88856a7b1 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar tx. b. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ γ€ˆ@@β¦—X1⦘; 0〉F Thk[@@β¦—X1⦘](γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; @@β¦—X1β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; @@β¦—X1β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var tx : ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var b : Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let r = let ref_name_sugar = {x * ni}; ref ref_name_sugar roll inj2 inj2 pack[X1l βŠ₯ X2] pack[X1r] (tx, rc) : F β€œRefTrie”[X1 βŠ₯ X2][Y βˆͺ WS_Trie(X2)] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] test examples::seq_filter::listing ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ f β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_keyword_sugar β‡’ Thk[@@β¦—X1⦘](γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ refthunk memo_keyword_sugar β‡’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) ⨉ ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc) x) y β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ γ€ˆ0; 0〉F Nm[X2βˆ™{Z}] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@@β¦—X1⦘; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@@β¦—X1⦘; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = let memo_keyword_sugar = {thunk n let app_get_sugar_t = {get t}; ((force filter[X2][Y2]) f) app_get_sugar_t}; refthunk memo_keyword_sugar β‡’ γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) ⨉ ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F ⌊ListβŒ‹[X][@!(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2~][Y]))))[X1l βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc) x) y) j β‡’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) a β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1l βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2~][Y]))))[X1l βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ0; Y βŠ₯ @!(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1r][Y] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2~][Y]))))[X1r][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1r][Y] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2~][Y]))))[X1r][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((((force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc) x) y) j) nj β‡’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar rt2. t2. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[{β–²}βˆ™{Z}] βŠ† Nm[{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  failure: ... ⊒ Nm[{β–²}βˆ™{Z}] βŠ† Nm[{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1308 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var rt2 : Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var t2 : ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let sugar_if_scrutinee = (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Detailed errors for checking type of variable nj: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ .. Variable nj's type: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Nm[{β–²}βˆ™{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ...does not check against type: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Nm[{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref_name_sugar β‡’ Nm[X2βˆ™{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ .. Variable nj's type: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Nm[{β–²}βˆ™{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ...does not check against type: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Nm[{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ roll inj2 inj2 pack[X1l βŠ₯ X2] pack[X1r] (tx, rc) ⇐ βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y])))[X1 βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1313 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check value Var, error: annotation mismatch [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(ref_name_sugar, roll inj2 inj2 pack[X1l βŠ₯ X2] pack[X1r] (tx, rc)) ⇐ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failure term: Var("nj")` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth expression App, error: parameter 1 type incorrect [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force f) a) h β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let r = let ref_name_sugar = {x * ni}; ref ref_name_sugar roll inj2 inj2 pack[X1l βŠ₯ X2] pack[X1r] (tx, rc) : F β€œRefTrie”[X1 βŠ₯ X2][Y βˆͺ WS_Trie(X2)] β‡’ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ f β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1 βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1 βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = (((((force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc) x) y) j) nj β‡’ Error: parameter 1 type incorrect in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ split let_split_sugar tx. b. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ var tx : ⌊RefTrieβŒ‹[X1l][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ var b : ⌊RefTrieβŒ‹[X1r][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = (((((force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc) x) y) j) nj β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let r = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((((force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc) x) y) j) nj β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let sugar_if_scrutinee = (force f) h β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; Y βŠ₯ @!(X)〉F ⌊ListβŒ‹[X][@!(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc) x) y) j β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc) x) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let a2 = ((force f) a) h β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y βŠ₯ @!(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force fold) t) a2) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force fold) t) a2 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc) x β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force fold) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2][Y][β–²βˆ™Z] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force fold β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ γ€ˆ0; 0〉F Nm[X2βˆ™{Z}] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ fold β‡’ Thk[0](γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force fold β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) βŠ† Ref[@!(X1)]((rec list. βˆ€X~:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1~:NmSet. βˆƒX2~:NmSet | X1~ βŠ₯ X2~ ≑ X~ : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1~] ⨉ Nat ⨉ Ref[Y1](list[X2~][Y2])))[X2][@!(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force fold) t β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) βŠ† Ref[@!(X1)]((rec list. βˆ€X~:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1~:NmSet. βˆƒX2~:NmSet | X1~ βŠ₯ X2~ ≑ X~ : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1~] ⨉ Nat ⨉ Ref[Y1](list[X2~][Y2])))[X2][@!(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force fold) t) a2 β‡’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1l][Y] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X1r βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X1r βŠ₯ X2][Y]))))[X1l][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force fold) t) a2) f β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆΓ˜; Γ˜γ€‰F Nat βŠ† γ€ˆΓ˜; Γ˜γ€‰F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] βŠ† (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X][@@β¦—X⦘] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ fn fold : Thk[0](γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) β†’ γ€ˆ0; 0〉F β€œNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ } [fungi_lang::examples::pure_list_nat: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::examples::pure_list_nat::static_tests:138 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1l][Y] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X1r βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X1r βŠ₯ X2][Y]))))[X1l][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1l][Y] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X1r βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X1r βŠ₯ X2][Y]))))[X1r βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ ? [INFO] [stderr] stack backtrace: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a86e81b - fungi_lang::examples::pure_list_nat::static_tests::typing::help::habe427e4f52a6a06 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a86c561 - fungi_lang::examples::pure_list_nat::static_tests::typing::{{closure}}::hcd4120926fc4e22b [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a857de1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h265cf695ecfdbac1 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82ccd1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h600392e5d443e85d [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa1f0 - as core::ops::function::FnOnce<()>>::call_once::h34f897d1d3a9c018 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a83054d - std::panicking::try::do_call::h900d4d81423d2764 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82fa47 - std::panicking::try::hf57e06dd74143d8f [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fbb11 - std::panic::catch_unwind::hd8363bdc6f3a9c25 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82a37d - std::thread::Builder::spawn_unchecked::{{closure}}::h81800e39363b9d1d [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac228 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h66269f8219bbae8f [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] test examples::pure_list_nat::static_tests::typing ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  failure: ... ⊒ ⌊RefTrieβŒ‹[X1l][Y] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X1r βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X1r βŠ₯ X2][Y]))))[X1r βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ trie_replrec β‡’ Thk[0](βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1308 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] βŠ† (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X][@@β¦—X⦘] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Detailed errors for checking type of variable tx: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ .. Variable tx's type: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ⌊RefTrieβŒ‹[X1l][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ...does not check against type: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X1r βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X1r βŠ₯ X2][Y]))))[X1r βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ .. Variable tx's type: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1l][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ...does not check against type: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X1r βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X1r βŠ₯ X2][Y]))))[X1r βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1313 [INFO] [stdout] β”‚ β•‘ β”‚ fn filter : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) β†’ γ€ˆ0; 0γ€‰β€œList”[X][Y] β†’ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F β€œList”[X][@!(X)]) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ fn map_filter : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) β†’ γ€ˆ0; 0γ€‰β€œList”[X][Y] β†’ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F β€œList”[X][@!(X)]) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check value Var, error: annotation mismatch [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failure term: Var("tx")` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check value Pair, error: parameter 1 type mismatch  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check value Pack, error: parameter 1 type mismatch  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check value Pack, error: parameter 1 type mismatch  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ 𝞴f: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check value Inj2, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ 𝞴l: ⌊ListβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check value Inj2, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r] β‡’ βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1r βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1r][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2] β‡’ βˆ€Y:NmSet|X1r βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1r][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref_name_sugar β‡’ Nm[X2βˆ™{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ roll inj2 inj2 pack[X1l] pack[X1r βŠ₯ X2] (lc, tx) ⇐ Error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(ref_name_sugar, roll inj2 inj2 pack[X1l] pack[X1r βŠ₯ X2] (lc, tx)) ⇐ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let r = ... β‡’ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase c : βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2][Y] β‡’ βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1r][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: parameter 1 type incorrect [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2][Y][β–²βˆ™Z] β‡’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1r][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{β–²βˆ™Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression IfThenElse, error: parameter 1 type mismatch  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc β‡’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{β–²βˆ™Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Split, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1r][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1r][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1r][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1r][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Unpack, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Unpack, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists X1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to check expression IfThenElse, error: parameter 2 type mismatch  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists X2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ prop X1 βŠ₯ X2 ≑ X : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc) x β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{β–²βˆ™Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to check expression Fix, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists Y1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists Y2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ fn trie_replrec : Thk[0](βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰β€œRefTrie”[X1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆWS_Trie(X2); Y〉F β€œRefTrie”[X1 βŠ₯ X2][Y βˆͺ WS_Trie(X2)] ⨉ β€œBool”) [Check error] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ prop Y1 βŠ₯ Y2 ≑ Y : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ fn trie_replace : Thk[0](βˆ€Z1:NmSet|⊀.βˆ€Z2:NmSet|⊀.βˆ€YZ:NmSet|Z1 βŠ₯ Z2 ≑ Z : NmSet.γ€ˆ0; 0γ€‰β€œRefTrie”[Z1][YZ] β†’ γ€ˆ0; 0〉Nm[Z2] β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆWS_Trie(Z2); YZ〉F β€œRefTrie”[Z1 βŠ₯ Z2][YZ βˆͺ WS_Trie(Z2)] ⨉ β€œBool”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ βˆ€Z1: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ βˆ€Z2: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ γ€ˆ0; 0〉F Nm[X1] ⨉ Nat ⨉ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F ⌊ListβŒ‹[X][@!(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ βˆ€YZ: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ 𝞴t: ⌊RefTrieβŒ‹[Z1][YZ] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ 𝞴x: Nm[Z2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar n. sugar_split_snd. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ 𝞴y: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var n : Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var sugar_split_snd : Nat ⨉ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y) 0) name β–² β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split sugar_split_snd h. t. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var h : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y) 0 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var t : Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = let memo_keyword_sugar = {thunk n let app_get_sugar_t = {get t}; ((force map_filter[X2][Y2]) f) app_get_sugar_t}; refthunk memo_keyword_sugar β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[Z1][Z2][YZ][{β–²}]) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc) x) y β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{β–²βˆ™Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_t = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2][YZ][{β–²}] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2][YZ] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ t β‡’ Ref[Y1]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ get t β‡’ γ€ˆ0; Y1〉F (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc) x) y) j β‡’ γ€ˆ0; 0〉Nm[{β–²βˆ™Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_t = ... β‡’ γ€ˆ0; Y1〉F (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ trie_replrec β‡’ Thk[0](βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force map_filter[X2][Y2]) f) app_get_sugar_t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force map_filter[X2][Y2]) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map_filter[X2][Y2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1] β‡’ βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|Z1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[Z1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((((force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc) x) y) j) nj β‡’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[{β–²}βˆ™{Z}] βŠ† Nm[{β–²βˆ™Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2] β‡’ βˆ€Y:NmSet|Z1 βŠ₯ Z2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[Z1][Y] β†’ γ€ˆ0; 0〉Nm[Z2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); Y〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2][YZ] β‡’ βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[Z1][YZ] β†’ γ€ˆ0; 0〉Nm[Z2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[{β–²}βˆ™{Z}] βŠ† Nm[{β–²βˆ™Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2][YZ][{β–²}] β‡’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[Z1][YZ] β†’ γ€ˆ0; 0〉Nm[Z2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map_filter[X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 ≑ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[Z1][Z2][YZ][{β–²}]) t β‡’ γ€ˆ0; 0〉Nm[Z2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map_filter β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[Z1][YZ] βŠ† Ref[YZ]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Z1][YZ]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = (((((force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc) x) y) j) nj β‡’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[Z1][YZ] βŠ† Ref[YZ]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Z1][YZ]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Z2] βŠ† Nm[Z2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[Z2] βŠ† Nm[Z2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ map_filter β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X][Y] β†’ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F ⌊ListβŒ‹[X][@!(X)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar tx. b. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var tx : ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var b : Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y) 0 β‡’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let r = let ref_name_sugar = {x * ni}; ref ref_name_sugar roll inj2 inj2 pack[X1l] pack[X1r βŠ₯ X2] (lc, tx) : F β€œRefTrie”[X1 βŠ₯ X2][Y βˆͺ WS_Trie(X2)] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map_filter β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X][Y] β†’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X); Y βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X)〉F ⌊ListβŒ‹[X][(𝞴x:NmSet.@@β¦—x⦘)(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y) 0) name β–² β‡’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉 ≑ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ γ€ˆ0; 0〉F Nm[X2βˆ™{Z}] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map_filter[X2] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y] β†’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@@β¦—Z2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘; YZ〉F Ref[@@β¦—Z2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX YZ]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Z1 βŠ₯ Z2][@@β¦—Z2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX YZ]) ⨉ Bool βŠ† γ€ˆ@@β¦—Z2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘; YZ〉F Ref[@@β¦—Z2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX YZ]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Z1 βŠ₯ Z2][@@β¦—Z2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX YZ]) ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ fn trie_replace : Thk[0](βˆ€Z1:NmSet|⊀.βˆ€Z2:NmSet|⊀.βˆ€YZ:NmSet|Z1 βŠ₯ Z2 ≑ Z : NmSet.γ€ˆ0; 0γ€‰β€œRefTrie”[Z1][YZ] β†’ γ€ˆ0; 0〉Nm[Z2] β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆWS_Trie(Z2); YZ〉F β€œRefTrie”[Z1 βŠ₯ Z2][YZ βˆͺ WS_Trie(Z2)] ⨉ β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map_filter[X2][Y2] β‡’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y2] β†’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ fn dedup : Thk[0](βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œRefList”[X1][Y] β†’ γ€ˆ0; 0γ€‰β€œRefTrie”[X2][Y] β†’ γ€ˆWS_Dedup(X1); Y〉F β€œRefList”[X1][Out_Dedup(X1)]) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ βˆ€X1: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force map_filter[X2][Y2]) f β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y2] β†’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ βˆ€X2: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ 𝞴l: ⌊RefListβŒ‹[X1][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ 𝞴t: ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let ln = get l β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force map_filter[X2][Y2]) f) app_get_sugar_t β‡’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] βŠ† (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] βŠ† (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X2][Y2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ l β‡’ ⌊RefListβŒ‹[X1][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1l][Y] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X1r βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X1r βŠ₯ X2][Y]))))[X1l][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ get l β‡’ γ€ˆ0; Y〉F (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X1][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1l][Y] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X1r βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X1r βŠ₯ X2][Y]))))[X1l][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X1r βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X1r βŠ₯ X2][Y]))))[X1r βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let ln = get l β‡’ γ€ˆ0; Y〉F (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X1][Y] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1); Y〉F ⌊RefListβŒ‹[X1][(𝞴X:NmSet.{@@r}βˆ™X)(X1)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1); Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1r βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X1r βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X1r βŠ₯ X2][Y]))))[X1r βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1); Y〉 - γ€ˆ0; Y〉 ≑ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1); Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref_name_sugar β‡’ Nm[X2βˆ™{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ roll inj2 inj2 pack[X1l] pack[X1r βŠ₯ X2] (lc, tx) ⇐ βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1][Y]) ⨉ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X2][Y])))[X1 βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(ref_name_sugar, roll inj2 inj2 pack[X1l] pack[X1r βŠ₯ X2] (lc, tx)) ⇐ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ subcase c : βˆƒX1~:NmSet. βˆƒX2:NmSet | X1~ βŠ₯ X2 ≑ X1 : NmSet. Nm[X1~] ⨉ Nat ⨉ Ref[Y]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X2][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ let app_get_sugar_t = {get t}; ((force map_filter[X2][Y2]) f) app_get_sugar_t β‡’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ thunk(n, let app_get_sugar_t = {get t}; ((force map_filter[X2][Y2]) f) app_get_sugar_t) β‡’ γ€ˆ@@β¦—X1⦘; 0〉F Thk[@@β¦—X1⦘](γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ exists X1a : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let r = let ref_name_sugar = {x * ni}; ref ref_name_sugar roll inj2 inj2 pack[X1l] pack[X1r βŠ₯ X2] (lc, tx) : F β€œRefTrie”[X1 βŠ₯ X2][Y βˆͺ WS_Trie(X2)] β‡’ γ€ˆ0; 0〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ exists X1b : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ prop X1a βŠ₯ X1b ≑ X1 : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ γ€ˆ@@β¦—X1⦘; 0〉F Thk[@@β¦—X1⦘](γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1 βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; @@β¦—X1β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] βŠ† Ref[@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1 βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ γ€ˆ0; 0〉F Nm[X1a] ⨉ Nat ⨉ Ref[Y]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X1b][Y]) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1); Y〉F ⌊RefListβŒ‹[X1][(𝞴X:NmSet.{@@r}βˆ™X)(X1)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; @@β¦—X1β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_keyword_sugar β‡’ Thk[@@β¦—X1⦘](γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1); Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ refthunk memo_keyword_sugar β‡’ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) ⨉ ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1); Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1); Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ split let_split_sugar x. sugar_split_snd. ... [INFO] [stdout] β”‚ β•‘ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@@β¦—X1⦘; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ var x : Nm[X1a] [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@@β¦—X1⦘; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 [INFO] [stdout] β”‚ β•‘ fn trie_replrec : Thk[0](βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰β€œRefTrie”[X1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆWS_Trie(X2); Y〉F β€œRefTrie”[X1 βŠ₯ X2][Y βˆͺ WS_Trie(X2)] ⨉ β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ var sugar_split_snd : Nat ⨉ Ref[Y]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X1b][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ fn trie_replace : Thk[0](βˆ€Z1:NmSet|⊀.βˆ€Z2:NmSet|⊀.βˆ€YZ:NmSet|Z1 βŠ₯ Z2 ≑ Z : NmSet.γ€ˆ0; 0γ€‰β€œRefTrie”[Z1][YZ] β†’ γ€ˆ0; 0〉Nm[Z2] β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆWS_Trie(Z2); YZ〉F β€œRefTrie”[Z1 βŠ₯ Z2][YZ βˆͺ WS_Trie(Z2)] ⨉ β€œBool”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ split sugar_split_snd y. ys. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = let memo_keyword_sugar = {thunk n let app_get_sugar_t = {get t}; ((force map_filter[X2][Y2]) f) app_get_sugar_t}; refthunk memo_keyword_sugar β‡’ γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉F Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) ⨉ ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F ⌊ListβŒ‹[X][@!(X)] [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Z1: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Z2: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ0; Y βŠ₯ @!(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar rt2. t2. ... [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€YZ: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var rt2 : Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: ⌊RefTrieβŒ‹[Z1][YZ] [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴x: Nm[Z2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var t2 : ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴y: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let oh2 = (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ var y : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⊒ (((((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y) 0) name β–² β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ var ys : Ref[Y]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X1b][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ws nmfn 𝞴x:Nm.@@tβˆ™x { (((force trie_replace[X2][X1a][Y]) t) x) y } β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y) 0 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[Z1][Z2][YZ][{β–²}]) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ f β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2][YZ][{β–²}] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2][YZ] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ws 𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2317 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replace[X2][X1a][Y]) t) x) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replace[X2][X1a][Y]) t) x β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ trie_replrec β‡’ Thk[0](βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let oh2 = (force f) h β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; Y βŠ₯ @!(X)〉F ⌊ListβŒ‹[X][@!(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replace[X2][X1a][Y]) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|X1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[X1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1] β‡’ βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|Z1 βŠ₯ X2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[Z1][Y] β†’ γ€ˆ0; 0〉Nm[X2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ X2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2] β‡’ βˆ€Y:NmSet|Z1 βŠ₯ Z2 ≑ X : NmSet.βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[Z1][Y] β†’ γ€ˆ0; 0〉Nm[Z2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); Y〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y βŠ₯ @!(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ case oh2 of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2][YZ] β‡’ βˆ€Z:Nm|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[Z1][YZ] β†’ γ€ˆ0; 0〉Nm[Z2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2][YZ][{β–²}] β‡’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[Z1][YZ] β†’ γ€ˆ0; 0〉Nm[Z2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] βŠ† (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X][@@β¦—X⦘] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replace[X2][X1a][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[Z1][Z2][YZ][{β–²}]) t β‡’ γ€ˆ0; 0〉Nm[Z2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] βŠ† (rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y1](list[X2][Y2])))[X][@@β¦—X⦘] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[Z1][YZ] βŠ† Ref[YZ]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Z1][YZ]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replace[X2][X1a] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ subcase h2 : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[Z1][YZ] βŠ† Ref[YZ]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Z1][YZ]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replace[X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replace β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Z2] βŠ† Nm[Z2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[Z2] βŠ† Nm[Z2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) βŠ† Ref[@!(X1)]((rec list. βˆ€X~:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1~:NmSet. βˆƒX2~:NmSet | X1~ βŠ₯ X2~ ≑ X~ : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1~] ⨉ Nat ⨉ Ref[Y1](list[X2~][Y2])))[X2][@!(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) βŠ† Ref[@!(X1)]((rec list. βˆ€X~:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1~:NmSet. βˆƒX2~:NmSet | X1~ βŠ₯ X2~ ≑ X~ : NmSet. βˆƒY1:NmSet. βˆƒY2:NmSet | Y1 βŠ₯ Y2 ≑ Y : NmSet. Nm[X1~] ⨉ Nat ⨉ Ref[Y1](list[X2~][Y2])))[X2][@!(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ fn map_filter : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) β†’ γ€ˆ0; 0γ€‰β€œList”[X][Y] β†’ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F β€œList”[X][@!(X)]) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ } [fungi_lang::examples::list_nat: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•™αšœfungi_lang::examples::list_nat::static_tests:155 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y) 0 β‡’ γ€ˆ0; 0〉Nm[{Z}] β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ trie_replace β‡’ Thk[0](βˆ€Z1:NmSet|⊀.βˆ€Z2:NmSet|⊀.βˆ€YZ:NmSet|Z1 βŠ₯ Z2 ≑ Z : NmSet.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[Z1][YZ] β†’ γ€ˆ0; 0〉Nm[Z2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replace β‡’ βˆ€Z1:NmSet|⊀.βˆ€Z2:NmSet|⊀.βˆ€YZ:NmSet|Z1 βŠ₯ Z2 ≑ Z : NmSet.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[Z1][YZ] β†’ γ€ˆ0; 0〉Nm[Z2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⊒ (((((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y) 0) name β–² β‡’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F ⌊RefTrieβŒ‹[Z1 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉 ≑ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ@@β¦—Z2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘; YZ〉F Ref[@@β¦—Z2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX YZ]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Z1 βŠ₯ Z2][@@β¦—Z2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX YZ]) ⨉ Bool βŠ† γ€ˆ@@β¦—Z2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘; YZ〉F Ref[@@β¦—Z2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX YZ]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[Z1 βŠ₯ Z2][@@β¦—Z2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX YZ]) ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ fn trie_replace : Thk[0](βˆ€Z1:NmSet|⊀.βˆ€Z2:NmSet|⊀.βˆ€YZ:NmSet|Z1 βŠ₯ Z2 ≑ Z : NmSet.γ€ˆ0; 0γ€‰β€œRefTrie”[Z1][YZ] β†’ γ€ˆ0; 0〉Nm[Z2] β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆWS_Trie(Z2); YZ〉F β€œRefTrie”[Z1 βŠ₯ Z2][YZ βˆͺ WS_Trie(Z2)] ⨉ β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replace[X2] β‡’ βˆ€Z2:NmSet|⊀.βˆ€YZ:NmSet|X2 βŠ₯ Z2 ≑ Z : NmSet.γ€ˆ0; 0γ€‰βˆ€X:NmSet.βˆ€Y:NmSet.Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2~][Y]))))[X][Y])[X2][YZ] β†’ γ€ˆ0; 0〉Nm[Z2] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2); YZ〉F βˆ€X:NmSet.βˆ€Y:NmSet.Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2~][Y]))))[X][Y])[X2 βŠ₯ Z2][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(Z2)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ } [fungi_lang::examples::trie_nat: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•™αšœfungi_lang::examples::trie_nat::static_tests:176 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replace[X2][X1a] β‡’ βˆ€YZ:NmSet|X2 βŠ₯ X1a ≑ Z : NmSet.γ€ˆ0; 0γ€‰βˆ€X:NmSet.βˆ€Y:NmSet.Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2~][Y]))))[X][Y])[X2][YZ] β†’ γ€ˆ0; 0〉Nm[X1a] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a); YZ〉F βˆ€X:NmSet.βˆ€Y:NmSet.Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2~][Y]))))[X][Y])[X2 βŠ₯ X1a][YZ βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replace[X2][X1a][Y] β‡’ γ€ˆ0; 0γ€‰βˆ€X:NmSet.βˆ€Y~:NmSet.Ref[Y~]((rec trie. βˆ€X:NmSet.βˆ€Y~:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y~](trie[X1][Y~]) ⨉ Ref[Y~](trie[X2~][Y~]))))[X][Y~])[X2][Y] β†’ γ€ˆ0; 0〉Nm[X1a] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a); Y〉F βˆ€X:NmSet.βˆ€Y~:NmSet.Ref[Y~]((rec trie. βˆ€X:NmSet.βˆ€Y~:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y~](trie[X1][Y~]) ⨉ Ref[Y~](trie[X2~][Y~]))))[X][Y~])[X2 βŠ₯ X1a][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replace[X2][X1a][Y]) t β‡’ γ€ˆ0; 0〉Nm[X1a] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a); Y〉F βˆ€X:NmSet.βˆ€Y~:NmSet.Ref[Y~]((rec trie. βˆ€X:NmSet.βˆ€Y~:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y~](trie[X1][Y~]) ⨉ Ref[Y~](trie[X2~][Y~]))))[X][Y~])[X2 βŠ₯ X1a][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊RefTrieβŒ‹[X2][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y~:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y~](trie[X1][Y~]) ⨉ Ref[Y~](trie[X2~][Y~]))))[X2][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊RefTrieβŒ‹[X2][Y] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y~:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y~](trie[X1][Y~]) ⨉ Ref[Y~](trie[X2~][Y~]))))[X2][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replace[X2][X1a][Y]) t) x β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a); Y〉F βˆ€X:NmSet.βˆ€Y~:NmSet.Ref[Y~]((rec trie. βˆ€X:NmSet.βˆ€Y~:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y~](trie[X1][Y~]) ⨉ Ref[Y~](trie[X2~][Y~]))))[X][Y~])[X2 βŠ₯ X1a][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a)] ⨉ Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X1a] βŠ† Nm[X1a] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X1a] βŠ† Nm[X1a] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replace[X2][X1a][Y]) t) x) y β‡’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a); Y〉F βˆ€X:NmSet.βˆ€Y~:NmSet.Ref[Y~]((rec trie. βˆ€X:NmSet.βˆ€Y~:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y~](trie[X1][Y~]) ⨉ Ref[Y~](trie[X2~][Y~]))))[X][Y~])[X2 βŠ₯ X1a][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a)] ⨉ Bool [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a874ddb - fungi_lang::examples::list_nat::static_tests::typing::help::h8ce1dacccc5828ed [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a872b21 - fungi_lang::examples::list_nat::static_tests::typing::{{closure}}::h459a65c0fa360b67 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a858021 - std::sys_common::backtrace::__rust_begin_short_backtrace::hb2c4d5f9409683b8 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cf31 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hd7840bd3e7fab05c [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa4b0 - as core::ops::function::FnOnce<()>>::call_once::hc4dd65347fe8fef6 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a83015d - std::panicking::try::do_call::h57bf8be95fd4373e [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82da67 - std::panicking::try::h0ab9cbf0451a669e [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fba11 - std::panic::catch_unwind::h79d28f3bc5157ed7 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a8287fd - std::thread::Builder::spawn_unchecked::{{closure}}::h44ad2ed996804713 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6abec8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1864a8bd858894e4 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] test examples::list_nat::static_tests::typing ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a); Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a); Y〉 ≑ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a); Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2320 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ws nmfn 𝞴x:Nm.@@tβˆ™x { (((force trie_replace[X2][X1a][Y]) t) x) y } β‡’ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a); Y〉F βˆ€X:NmSet.βˆ€Y~:NmSet.Ref[Y~]((rec trie. βˆ€X:NmSet.βˆ€Y~:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y~](trie[X1][Y~]) ⨉ Ref[Y~](trie[X2~][Y~]))))[X][Y~])[X2 βŠ₯ X1a][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a)] ⨉ Bool in [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1); Y〉F ⌊RefListβŒ‹[X1][(𝞴X:NmSet.{@@r}βˆ™X)(X1)] [INFO] [stderr] stack backtrace: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1); Y〉 - γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a); Y〉 ≑ ? [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a578bfb - fungi_lang::examples::trie_nat::static_tests::typing::help::h9d69988f1c3eed05 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a576941 - fungi_lang::examples::trie_nat::static_tests::typing::{{closure}}::h8c4f88b5cae29b70 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a858001 - std::sys_common::backtrace::__rust_begin_short_backtrace::haed0ac54a11871f0 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cc91 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h4f171b2fc5d1fbf9 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa450 - as core::ops::function::FnOnce<()>>::call_once::hb1a2897ce3b014dc [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a83093d - std::panicking::try::do_call::hb30b5567aa53ab7b [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82e837 - std::panicking::try::h8224d5b0911a3aa0 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fb871 - std::panic::catch_unwind::h3ab7380f10f3abae [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a8292fd - std::thread::Builder::spawn_unchecked::{{closure}}::h543f7aa47533c74a [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac448 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hc0e2d07558f45375 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ failure: ... ⊬ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1); Y〉 - γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a); Y〉 ≑ ? [INFO] [stdout] test examples::trie_nat::static_tests::typing ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ split let_split_sugar tx. b. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ var tx : βˆ€X:NmSet.βˆ€Y~:NmSet.Ref[Y~]((rec trie. βˆ€X:NmSet.βˆ€Y~:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y~](trie[X1][Y~]) ⨉ Ref[Y~](trie[X2~][Y~]))))[X][Y~])[X2 βŠ₯ X1a][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ var b : Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ γ€ˆ0; 0〉F Nm[{@@dd}βˆ™X1a] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force dedup[X1b][X1a βŠ₯ X2][Y]) ys) tx β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force dedup[X1b][X1a βŠ₯ X2][Y]) ys β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force dedup[X1b][X1a βŠ₯ X2][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force dedup[X1b][X1a βŠ₯ X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force dedup[X1b] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force dedup β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ dedup β‡’ Thk[0](βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefListβŒ‹[X1][Y] β†’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X2][Y] β†’ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1); Y〉F ⌊RefListβŒ‹[X1][(𝞴X:NmSet.{@@r}βˆ™X)(X1)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force dedup β‡’ βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefListβŒ‹[X1][Y] β†’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X2][Y] β†’ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1); Y〉F ⌊RefListβŒ‹[X1][(𝞴X:NmSet.{@@r}βˆ™X)(X1)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force dedup[X1b] β‡’ βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefListβŒ‹[X1b][Y] β†’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X2][Y] β†’ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1b); Y〉F ⌊RefListβŒ‹[X1b][(𝞴X:NmSet.{@@r}βˆ™X)(X1b)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force dedup[X1b][X1a βŠ₯ X2] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefListβŒ‹[X1b][Y] β†’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1a βŠ₯ X2][Y] β†’ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1b); Y〉F ⌊RefListβŒ‹[X1b][(𝞴X:NmSet.{@@r}βˆ™X)(X1b)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force dedup[X1b][X1a βŠ₯ X2][Y] β‡’ γ€ˆ0; 0γ€‰βŒŠRefListβŒ‹[X1b][Y] β†’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1a βŠ₯ X2][Y] β†’ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1b); Y〉F ⌊RefListβŒ‹[X1b][(𝞴X:NmSet.{@@r}βˆ™X)(X1b)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force dedup[X1b][X1a βŠ₯ X2][Y]) ys β‡’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1a βŠ₯ X2][Y] β†’ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1b); Y〉F ⌊RefListβŒ‹[X1b][(𝞴X:NmSet.{@@r}βˆ™X)(X1b)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[Y]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X1b][Y]) βŠ† Ref[Y]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X1b][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Ref[Y]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X1b][Y]) βŠ† Ref[Y]((rec list. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Nm[X1] ⨉ Nat ⨉ Ref[Y](list[X2][Y])))[X1b][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force dedup[X1b][X1a βŠ₯ X2][Y]) ys) tx β‡’ γ€ˆ(𝞴X:NmSet.(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X) βŠ₯ {@@dd}βˆ™X βŠ₯ (𝞴X:NmSet.{@@r}βˆ™X)(X))(X1b); Y〉F ⌊RefListβŒ‹[X1b][(𝞴X:NmSet.{@@r}βˆ™X)(X1b)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ βˆ€X:NmSet.βˆ€Y~:NmSet.Ref[Y~]((rec trie. βˆ€X:NmSet.βˆ€Y~:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y~](trie[X1][Y~]) ⨉ Ref[Y~](trie[X2~][Y~]))))[X][Y~])[X2 βŠ₯ X1a][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a)] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1a βŠ₯ X2][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  failure: ... ⊒ βˆ€X:NmSet.βˆ€Y~:NmSet.Ref[Y~]((rec trie. βˆ€X:NmSet.βˆ€Y~:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y~](trie[X1][Y~]) ⨉ Ref[Y~](trie[X2~][Y~]))))[X][Y~])[X2 βŠ₯ X1a][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a)] βŠ† Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1a βŠ₯ X2][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1308 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Detailed errors for checking type of variable tx: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ .. Variable tx's type: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ βˆ€X:NmSet.βˆ€Y~:NmSet.Ref[Y~]((rec trie. βˆ€X:NmSet.βˆ€Y~:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y~](trie[X1][Y~]) ⨉ Ref[Y~](trie[X2~][Y~]))))[X][Y~])[X2 βŠ₯ X1a][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ...does not check against type: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ⌊RefTrieβŒ‹[X1a βŠ₯ X2][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ .. Variable tx's type: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—X1aβˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]((rec trie. βˆ€X:NmSet.βˆ€Y~:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y~](trie[X1][Y~]) ⨉ Ref[Y~](trie[X2~][Y~]))))[X2 βŠ₯ X1a][(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—X1aβˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ...does not check against type: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Ref[Y]((rec trie. βˆ€X:NmSet.βˆ€Y:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2:NmSet | X1 βŠ₯ X2 ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2][Y]))))[X1a βŠ₯ X2][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1313 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check value Var, error: annotation mismatch [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failure term: Var("tx")` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth expression App, error: parameter 1 type incorrect [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth expression Thunk, error: parameter 1 unknown type [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ Error: parameter 1 unknown type in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth value Var, error: variable memo_keyword_sugar not in scope [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failure term: Var("memo_keyword_sugar")` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth expression RefThunk, error: parameter 0 unknown type [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ... β‡’ Error: error later (the 'secondary' subderivation) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ split let_split_sugar _r. r. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ var _r : βˆ€X:NmSet.βˆ€Y~:NmSet.Ref[Y~]((rec trie. βˆ€X:NmSet.βˆ€Y~:NmSet.(Unit οΌ‹ (Nm[X] ⨉ Nat οΌ‹ βˆƒX1:NmSet. βˆƒX2~:NmSet | X1 βŠ₯ X2~ ≑ X : NmSet. Ref[Y~](trie[X1][Y~]) ⨉ Ref[Y~](trie[X2~][Y~]))))[X][Y~])[X2 βŠ₯ X1a][Y βˆͺ (𝞴X:NmSet.(𝞴x:NmSet.(𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)))β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X1a)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ var r : Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let ref_name_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let ref_name_sugar = ... β‡’ γ€ˆ0; 0〉F Nm[{@@r}βˆ™X1a] in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth value Pack, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failure term: Pack(Var("X1b"), Pair(Var("x"), Pair(Var("y"), Var("r"))))` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth value Pack, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failure term: Pack(Var("X1a"), Pack(Var("X1b"), Pair(Var("x"), Pair(Var("y"), Var("r")))))` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth value Inj2, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failure term: Inj2(Pack(Var("X1a"), Pack(Var("X1b"), Pair(Var("x"), Pair(Var("y"), Var("r")))) ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth value Roll, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failure term: Roll(Inj2(Pack(Var("X1a"), Pack(Var("X1b"), Pair(Var("x"), Pair(Var("y"), Var("r ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth expression Ref, error: error inside (the 'primary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth expression IfThenElse, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failure term: IfThenElse(Var("b"), Ret(Var("r")), Let("ref_name_sugar", PrimApp(NameBin(Name(S ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth expression Split, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth expression Split, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: effect error: CannotSubtractNmSetTmFromNmSet(NmSet { cons: Some(Apart), terms: [Subset(Map(WriteScope, Bin(Var("X1a"), MapStar(Lam("x", Nm, Bin(Name(Leaf), Var("x"))), Sing(Var("x")))))), Subset(Map(WriteScope, Bin(Var("X1b"), MapStar(Lam("x", Nm, Bin(Name(Leaf), Var("x"))), Sing(Var("x")))))), Subset(Map(Lam("x", Nm, Bin(Name(Sym("dd")), Var("x"))), Var("X1a"))), Subset(Map(Lam("x", Nm, Bin(Name(Sym("dd")), Var("x"))), Var("X1b"))), Subset(Map(Lam("x", Nm, Bin(Name(Sym("r")), Var("x"))), Var("X1a"))), Subset(Map(Lam("x", Nm, Bin(Name(Sym("r")), Var("x"))), Var("X1b")))] }, Subset(Map(Lam("_a", Nm, App(WriteScope, App(Lam("x", Nm, Bin(Name(Sym("t")), Var("x"))), Var("_a")))), Bin(Var("X1a"), MapStar(Lam("x", Nm, Bin(Name(Leaf), Var("x"))), Sing(Var("x"))))))) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failure term: Let("let_split_sugar", WriteScope(NameFn(Lam("x", Nm, Bin(Name(Sym("t")), Var("x ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check expression Split, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check expression Split, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check expression Unpack, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check expression Unpack, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check expression Case, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check expression Unroll, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check expression Fix, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ fn dedup : Thk[0](βˆ€X1:NmSet|⊀.βˆ€X2:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œRefList”[X1][Y] β†’ γ€ˆ0; 0γ€‰β€œRefTrie”[X2][Y] β†’ γ€ˆWS_Dedup(X1); Y〉F β€œRefList”[X1][Out_Dedup(X1)]) [Check error] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ } [fungi_lang::examples::list_nat_dedup: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::examples::list_nat_dedup::static_tests:113 [INFO] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:17 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stderr] at src/libcore/fmt/mod.rs:1069 [INFO] [stderr] 5: 0x561f8aadebf3 - std::io::Write::write_fmt::hfb486fa6ccb90f14 [INFO] [stderr] at src/libstd/io/mod.rs:1504 [INFO] [stderr] 6: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x561f8aae4622 - std::panicking::default_hook::h9386f7e484840463 [INFO] [stderr] at src/libstd/panicking.rs:218 [INFO] [stderr] 10: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stderr] at src/libstd/panicking.rs:511 [INFO] [stderr] 11: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:419 [INFO] [stderr] 12: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stderr] at src/libcore/panicking.rs:111 [INFO] [stderr] 13: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stderr] at src/libcore/option.rs:1268 [INFO] [stderr] 14: 0x561f8a6c1429 - core::result::Result::expect::hffda6cf0511d7831 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x561f8a8651c6 - fungi_lang::vis::write_bundle::hed6de90f2d9b0bf3 [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x561f8a8780bb - fungi_lang::examples::list_nat_dedup::static_tests::typing::help::ha36667110d61b8bc [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x561f8a875e01 - fungi_lang::examples::list_nat_dedup::static_tests::typing::{{closure}}::hd9b078c89d666634 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x561f8a858121 - std::sys_common::backtrace::__rust_begin_short_backtrace::hf574feb7e72d9136 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x561f8a82cfd1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::he60573a94d60343a [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x561f8a4fa330 - as core::ops::function::FnOnce<()>>::call_once::h7243a06adec70efa [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x561f8a830f6d - std::panicking::try::do_call::hfc28adef99dc1bf5 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stderr] 22: 0x561f8a8560ed - __rust_try [INFO] [stderr] 23: 0x561f8a82dd97 - std::panicking::try::h3c25155845c2d03a [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stderr] 24: 0x561f8a4fbaf1 - std::panic::catch_unwind::hcbd3eecf373676d2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x561f8a82b3fd - std::thread::Builder::spawn_unchecked::{{closure}}::ha255ee0426d055ae [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x561f8a6ac1c8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h57d4a660e9b28c46 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stderr] 27: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 28: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stderr] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stderr] 29: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f301b2586db - start_thread [INFO] [stderr] 31: 0x7f301ad6988f - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] test examples::list_nat_dedup::static_tests::typing ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- examples::basic_hostobj::color::docolors stdout ---- [INFO] [stdout] fungi_lang::examples::basic_hostobj::color:71: result: Ret(Pair(Pair(HostObj(Red), Pair(HostObj(Green), HostObj(Gold))), Pair(HostObj(Green), Pair(HostObj(Gold), HostObj(Red))))) [INFO] [stdout] Trace counts: sum ave [INFO] [stdout] ------------------------------------------------ [INFO] [stdout] editor: [INFO] [stdout] alloc_fresh: 0 0.00 [INFO] [stdout] alloc_nochange: 0 0.00 [INFO] [stdout] alloc_change: 0 0.00 [INFO] [stdout] dirty: 0 0.00 [INFO] [stdout] archivist: [INFO] [stdout] alloc_fresh: 0 0.00 [INFO] [stdout] alloc_nochange: 0 0.00 [INFO] [stdout] alloc_change: 0 0.00 [INFO] [stdout] dirty: 0 0.00 [INFO] [stdout] reeval: [INFO] [stdout] clean_rec: 0 0.00 [INFO] [stdout] reeval_nochange: 0 0.00 [INFO] [stdout] reeval_change: 0 0.00 [INFO] [stdout] [INFO] [stdout] thread 'examples::basic_hostobj::color::docolors' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/examples/basic_hostobj.rs:71:9 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x561f8a88bcd5 - std::io::Write::write_fmt::h5d052af13df32ea6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x561f8aadc631 - std::io::impls::>::write_fmt::h8fe8a9bdc421b4b6 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x561f8aae45cb - std::panicking::default_hook::h9386f7e484840463 [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stdout] at src/libcore/option.rs:1268 [INFO] [stdout] 15: 0x561f8aa9d3db - core::result::Result::unwrap::he794dd0d5fe16e1f [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x561f8a87bfd3 - fungi_lang::examples::basic_hostobj::color::docolors::h1ce01a6016dc769d [INFO] [stdout] at src/examples/basic_hostobj.rs:71 [INFO] [stdout] 17: 0x561f8a87a83a - fungi_lang::examples::basic_hostobj::color::docolors::{{closure}}::h11a9e2e96092f84e [INFO] [stdout] at src/examples/basic_hostobj.rs:70 [INFO] [stdout] 18: 0x561f8a6ad47e - core::ops::function::FnOnce::call_once::hd8de0d08a3c8c8fd [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 19: 0x561f8a897bcf - as core::ops::function::FnOnce>::call_once::h1f6ee40732e80908 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 20: 0x561f8a8b31ce - as core::ops::function::FnOnce<()>>::call_once::h85dff111be9c2dc6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x561f8a8b31ce - std::panicking::try::do_call::hee6f5a4bef67c840 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 22: 0x561f8a8b31ce - std::panicking::try::h3384d3b948e84dbc [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 23: 0x561f8a8b31ce - std::panic::catch_unwind::h5ae91218e578066d [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x561f8a8b31ce - test::run_test_in_process::he37a49587889b910 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x561f8a8b31ce - test::run_test::run_test_inner::{{closure}}::h4f0d25136ca480c2 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x561f8a88b186 - std::sys_common::backtrace::__rust_begin_short_backtrace::h969eceda34247af3 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h912007997cb04e92 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x561f8a890515 - as core::ops::function::FnOnce<()>>::call_once::h8795d8b7bd223988 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x561f8a890515 - std::panicking::try::do_call::hb29b86f86d4d722e [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 30: 0x561f8a890515 - std::panicking::try::h4bfefb3eddc0d900 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 31: 0x561f8a890515 - std::panic::catch_unwind::h774c24d4b38d5828 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::ha50a32fa99413dde [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x561f8a890515 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9dacb8f28d699f86 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 34: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 35: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 36: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f301b2586db - start_thread [INFO] [stdout] 38: 0x7f301ad6988f - __clone [INFO] [stdout] 39: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- examples::basic_read_effects::listing0_ok stdout ---- [INFO] [stdout] Thread join result: Err(Any) [INFO] [stdout] thread 'examples::basic_read_effects::listing0_ok' panicked at 'called `Result::unwrap()` on an `Err` value: Any', src/examples/basic_read_effects.rs:2:25 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x561f8a88bcd5 - std::io::Write::write_fmt::h5d052af13df32ea6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x561f8aadc631 - std::io::impls::>::write_fmt::h8fe8a9bdc421b4b6 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x561f8aae45cb - std::panicking::default_hook::h9386f7e484840463 [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stdout] at src/libcore/option.rs:1268 [INFO] [stdout] 15: 0x561f8a6c1570 - core::result::Result::unwrap::h0cb1e54aab7bf677 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x561f8a87c9be - fungi_lang::examples::basic_read_effects::listing0_ok::h679d26a1b3b7e6fa [INFO] [stdout] at src/examples/basic_read_effects.rs:2 [INFO] [stdout] 17: 0x561f8a87c7da - fungi_lang::examples::basic_read_effects::listing0_ok::{{closure}}::he65dbc137ce73a81 [INFO] [stdout] at src/examples/basic_read_effects.rs:2 [INFO] [stdout] 18: 0x561f8a6ad62e - core::ops::function::FnOnce::call_once::hfa9e12c3acd43efb [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 19: 0x561f8a897bcf - as core::ops::function::FnOnce>::call_once::h1f6ee40732e80908 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 20: 0x561f8a8b31ce - as core::ops::function::FnOnce<()>>::call_once::h85dff111be9c2dc6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x561f8a8b31ce - std::panicking::try::do_call::hee6f5a4bef67c840 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 22: 0x561f8a8b31ce - std::panicking::try::h3384d3b948e84dbc [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 23: 0x561f8a8b31ce - std::panic::catch_unwind::h5ae91218e578066d [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x561f8a8b31ce - test::run_test_in_process::he37a49587889b910 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x561f8a8b31ce - test::run_test::run_test_inner::{{closure}}::h4f0d25136ca480c2 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x561f8a88b186 - std::sys_common::backtrace::__rust_begin_short_backtrace::h969eceda34247af3 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h912007997cb04e92 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x561f8a890515 - as core::ops::function::FnOnce<()>>::call_once::h8795d8b7bd223988 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x561f8a890515 - std::panicking::try::do_call::hb29b86f86d4d722e [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 30: 0x561f8a890515 - std::panicking::try::h4bfefb3eddc0d900 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 31: 0x561f8a890515 - std::panic::catch_unwind::h774c24d4b38d5828 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::ha50a32fa99413dde [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x561f8a890515 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9dacb8f28d699f86 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 34: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 35: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 36: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f301b2586db - start_thread [INFO] [stdout] 38: 0x7f301ad6988f - __clone [INFO] [stdout] 39: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- examples::basic_existentials::listing0_ok stdout ---- [INFO] [stdout] Thread join result: Err(Any) [INFO] [stdout] thread 'examples::basic_existentials::listing0_ok' panicked at 'called `Result::unwrap()` on an `Err` value: Any', src/examples/basic_existentials.rs:2:25 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x561f8a88bcd5 - std::io::Write::write_fmt::h5d052af13df32ea6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x561f8aadc631 - std::io::impls::>::write_fmt::h8fe8a9bdc421b4b6 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x561f8aae45cb - std::panicking::default_hook::h9386f7e484840463 [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stdout] at src/libcore/option.rs:1268 [INFO] [stdout] 15: 0x561f8a6c1570 - core::result::Result::unwrap::h0cb1e54aab7bf677 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x561f8a7fbb1e - fungi_lang::examples::basic_existentials::listing0_ok::hf14557eb8655b40a [INFO] [stdout] at src/examples/basic_existentials.rs:2 [INFO] [stdout] 17: 0x561f8a7fb93a - fungi_lang::examples::basic_existentials::listing0_ok::{{closure}}::h59e9a0e4d581430b [INFO] [stdout] at src/examples/basic_existentials.rs:2 [INFO] [stdout] 18: 0x561f8a6ad27e - core::ops::function::FnOnce::call_once::hb8964d229e38f02d [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 19: 0x561f8a897bcf - as core::ops::function::FnOnce>::call_once::h1f6ee40732e80908 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 20: 0x561f8a8b31ce - as core::ops::function::FnOnce<()>>::call_once::h85dff111be9c2dc6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x561f8a8b31ce - std::panicking::try::do_call::hee6f5a4bef67c840 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 22: 0x561f8a8b31ce - std::panicking::try::h3384d3b948e84dbc [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 23: 0x561f8a8b31ce - std::panic::catch_unwind::h5ae91218e578066d [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x561f8a8b31ce - test::run_test_in_process::he37a49587889b910 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x561f8a8b31ce - test::run_test::run_test_inner::{{closure}}::h4f0d25136ca480c2 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x561f8a88b186 - std::sys_common::backtrace::__rust_begin_short_backtrace::h969eceda34247af3 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h912007997cb04e92 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x561f8a890515 - as core::ops::function::FnOnce<()>>::call_once::h8795d8b7bd223988 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x561f8a890515 - std::panicking::try::do_call::hb29b86f86d4d722e [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 30: 0x561f8a890515 - std::panicking::try::h4bfefb3eddc0d900 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 31: 0x561f8a890515 - std::panic::catch_unwind::h774c24d4b38d5828 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::ha50a32fa99413dde [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x561f8a890515 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9dacb8f28d699f86 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 34: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 35: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 36: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f301b2586db - start_thread [INFO] [stdout] 38: 0x7f301ad6988f - __clone [INFO] [stdout] 39: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- examples::basic_read_effects::listing0_err stdout ---- [INFO] [stdout] Thread join result: Err(Any) [INFO] [stdout] thread 'examples::basic_read_effects::listing0_err' panicked at 'called `Result::unwrap()` on an `Err` value: Any', src/examples/basic_read_effects.rs:18:26 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x561f8a88bcd5 - std::io::Write::write_fmt::h5d052af13df32ea6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x561f8aadc631 - std::io::impls::>::write_fmt::h8fe8a9bdc421b4b6 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x561f8aae45cb - std::panicking::default_hook::h9386f7e484840463 [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stdout] at src/libcore/option.rs:1268 [INFO] [stdout] 15: 0x561f8a6c1570 - core::result::Result::unwrap::h0cb1e54aab7bf677 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x561f8a8811ee - fungi_lang::examples::basic_read_effects::listing0_err::h591df26aaca8bd99 [INFO] [stdout] at src/examples/basic_read_effects.rs:18 [INFO] [stdout] 17: 0x561f8a88100a - fungi_lang::examples::basic_read_effects::listing0_err::{{closure}}::h2e136c8a8f4fdccc [INFO] [stdout] at src/examples/basic_read_effects.rs:18 [INFO] [stdout] 18: 0x561f8a6ad16e - core::ops::function::FnOnce::call_once::ha9ccbb0e0da53bc5 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 19: 0x561f8a897bcf - as core::ops::function::FnOnce>::call_once::h1f6ee40732e80908 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 20: 0x561f8a8b31ce - as core::ops::function::FnOnce<()>>::call_once::h85dff111be9c2dc6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x561f8a8b31ce - std::panicking::try::do_call::hee6f5a4bef67c840 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 22: 0x561f8a8b31ce - std::panicking::try::h3384d3b948e84dbc [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 23: 0x561f8a8b31ce - std::panic::catch_unwind::h5ae91218e578066d [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x561f8a8b31ce - test::run_test_in_process::he37a49587889b910 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x561f8a8b31ce - test::run_test::run_test_inner::{{closure}}::h4f0d25136ca480c2 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x561f8a88b186 - std::sys_common::backtrace::__rust_begin_short_backtrace::h969eceda34247af3 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h912007997cb04e92 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x561f8a890515 - as core::ops::function::FnOnce<()>>::call_once::h8795d8b7bd223988 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x561f8a890515 - std::panicking::try::do_call::hb29b86f86d4d722e [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 30: 0x561f8a890515 - std::panicking::try::h4bfefb3eddc0d900 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 31: 0x561f8a890515 - std::panic::catch_unwind::h774c24d4b38d5828 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::ha50a32fa99413dde [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x561f8a890515 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9dacb8f28d699f86 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 34: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 35: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 36: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f301b2586db - start_thread [INFO] [stdout] 38: 0x7f301ad6988f - __clone [INFO] [stdout] 39: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- examples::basic_existentials::listing1_ok stdout ---- [INFO] [stdout] Thread join result: Err(Any) [INFO] [stdout] thread 'examples::basic_existentials::listing1_ok' panicked at 'called `Result::unwrap()` on an `Err` value: Any', src/examples/basic_existentials.rs:27:25 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x561f8a88bcd5 - std::io::Write::write_fmt::h5d052af13df32ea6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x561f8aadc631 - std::io::impls::>::write_fmt::h8fe8a9bdc421b4b6 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x561f8aae45cb - std::panicking::default_hook::h9386f7e484840463 [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stdout] at src/libcore/option.rs:1268 [INFO] [stdout] 15: 0x561f8a6c1570 - core::result::Result::unwrap::h0cb1e54aab7bf677 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x561f8a8036ae - fungi_lang::examples::basic_existentials::listing1_ok::h99b671b10dbc9e3a [INFO] [stdout] at src/examples/basic_existentials.rs:27 [INFO] [stdout] 17: 0x561f8a8034ca - fungi_lang::examples::basic_existentials::listing1_ok::{{closure}}::hebf3816779cbc25b [INFO] [stdout] at src/examples/basic_existentials.rs:27 [INFO] [stdout] 18: 0x561f8a6acf4e - core::ops::function::FnOnce::call_once::h8e4706e5651ed6dd [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 19: 0x561f8a897bcf - as core::ops::function::FnOnce>::call_once::h1f6ee40732e80908 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 20: 0x561f8a8b31ce - as core::ops::function::FnOnce<()>>::call_once::h85dff111be9c2dc6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x561f8a8b31ce - std::panicking::try::do_call::hee6f5a4bef67c840 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 22: 0x561f8a8b31ce - std::panicking::try::h3384d3b948e84dbc [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 23: 0x561f8a8b31ce - std::panic::catch_unwind::h5ae91218e578066d [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x561f8a8b31ce - test::run_test_in_process::he37a49587889b910 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x561f8a8b31ce - test::run_test::run_test_inner::{{closure}}::h4f0d25136ca480c2 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x561f8a88b186 - std::sys_common::backtrace::__rust_begin_short_backtrace::h969eceda34247af3 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h912007997cb04e92 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x561f8a890515 - as core::ops::function::FnOnce<()>>::call_once::h8795d8b7bd223988 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x561f8a890515 - std::panicking::try::do_call::hb29b86f86d4d722e [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 30: 0x561f8a890515 - std::panicking::try::h4bfefb3eddc0d900 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 31: 0x561f8a890515 - std::panic::catch_unwind::h774c24d4b38d5828 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::ha50a32fa99413dde [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x561f8a890515 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9dacb8f28d699f86 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 34: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 35: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 36: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f301b2586db - start_thread [INFO] [stdout] 38: 0x7f301ad6988f - __clone [INFO] [stdout] 39: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- examples::basic_subtyping::listing0_one stdout ---- [INFO] [stdout] Thread join result: Err(Any) [INFO] [stdout] thread 'examples::basic_subtyping::listing0_one' panicked at 'called `Result::unwrap()` on an `Err` value: Any', src/examples/basic_subtyping.rs:2:26 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x561f8a88bcd5 - std::io::Write::write_fmt::h5d052af13df32ea6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x561f8aadc631 - std::io::impls::>::write_fmt::h8fe8a9bdc421b4b6 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x561f8aae45cb - std::panicking::default_hook::h9386f7e484840463 [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stdout] at src/libcore/option.rs:1268 [INFO] [stdout] 15: 0x561f8a6c1570 - core::result::Result::unwrap::h0cb1e54aab7bf677 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x561f8a59d1ee - fungi_lang::examples::basic_subtyping::listing0_one::h5ffab17372593c7c [INFO] [stdout] at src/examples/basic_subtyping.rs:2 [INFO] [stdout] 17: 0x561f8a59d00a - fungi_lang::examples::basic_subtyping::listing0_one::{{closure}}::hb82b0606f661cfc2 [INFO] [stdout] at src/examples/basic_subtyping.rs:2 [INFO] [stdout] 18: 0x561f8a6ad0ce - core::ops::function::FnOnce::call_once::ha8694dc6a6a63482 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 19: 0x561f8a897bcf - as core::ops::function::FnOnce>::call_once::h1f6ee40732e80908 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 20: 0x561f8a8b31ce - as core::ops::function::FnOnce<()>>::call_once::h85dff111be9c2dc6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x561f8a8b31ce - std::panicking::try::do_call::hee6f5a4bef67c840 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 22: 0x561f8a8b31ce - std::panicking::try::h3384d3b948e84dbc [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 23: 0x561f8a8b31ce - std::panic::catch_unwind::h5ae91218e578066d [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x561f8a8b31ce - test::run_test_in_process::he37a49587889b910 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x561f8a8b31ce - test::run_test::run_test_inner::{{closure}}::h4f0d25136ca480c2 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x561f8a88b186 - std::sys_common::backtrace::__rust_begin_short_backtrace::h969eceda34247af3 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h912007997cb04e92 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x561f8a890515 - as core::ops::function::FnOnce<()>>::call_once::h8795d8b7bd223988 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x561f8a890515 - std::panicking::try::do_call::hb29b86f86d4d722e [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 30: 0x561f8a890515 - std::panicking::try::h4bfefb3eddc0d900 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 31: 0x561f8a890515 - std::panic::catch_unwind::h774c24d4b38d5828 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::ha50a32fa99413dde [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x561f8a890515 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9dacb8f28d699f86 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 34: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 35: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 36: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f301b2586db - start_thread [INFO] [stdout] 38: 0x7f301ad6988f - __clone [INFO] [stdout] 39: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- examples::basic_existentials::listing1_err1 stdout ---- [INFO] [stdout] Thread join result: Err(Any) [INFO] [stdout] thread 'examples::basic_existentials::listing1_err1' panicked at 'called `Result::unwrap()` on an `Err` value: Any', src/examples/basic_existentials.rs:51:27 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x561f8a88bcd5 - std::io::Write::write_fmt::h5d052af13df32ea6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x561f8aadc631 - std::io::impls::>::write_fmt::h8fe8a9bdc421b4b6 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x561f8aae45cb - std::panicking::default_hook::h9386f7e484840463 [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stdout] at src/libcore/option.rs:1268 [INFO] [stdout] 15: 0x561f8a6c1570 - core::result::Result::unwrap::h0cb1e54aab7bf677 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x561f8a80bdce - fungi_lang::examples::basic_existentials::listing1_err1::h5486eae48b567572 [INFO] [stdout] at src/examples/basic_existentials.rs:51 [INFO] [stdout] 17: 0x561f8a80bbea - fungi_lang::examples::basic_existentials::listing1_err1::{{closure}}::h8559080582c7015b [INFO] [stdout] at src/examples/basic_existentials.rs:51 [INFO] [stdout] 18: 0x561f8a6ad37e - core::ops::function::FnOnce::call_once::hc8df063b8cb7f628 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 19: 0x561f8a897bcf - as core::ops::function::FnOnce>::call_once::h1f6ee40732e80908 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 20: 0x561f8a8b31ce - as core::ops::function::FnOnce<()>>::call_once::h85dff111be9c2dc6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x561f8a8b31ce - std::panicking::try::do_call::hee6f5a4bef67c840 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 22: 0x561f8a8b31ce - std::panicking::try::h3384d3b948e84dbc [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 23: 0x561f8a8b31ce - std::panic::catch_unwind::h5ae91218e578066d [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x561f8a8b31ce - test::run_test_in_process::he37a49587889b910 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x561f8a8b31ce - test::run_test::run_test_inner::{{closure}}::h4f0d25136ca480c2 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x561f8a88b186 - std::sys_common::backtrace::__rust_begin_short_backtrace::h969eceda34247af3 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h912007997cb04e92 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x561f8a890515 - as core::ops::function::FnOnce<()>>::call_once::h8795d8b7bd223988 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x561f8a890515 - std::panicking::try::do_call::hb29b86f86d4d722e [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 30: 0x561f8a890515 - std::panicking::try::h4bfefb3eddc0d900 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 31: 0x561f8a890515 - std::panic::catch_unwind::h774c24d4b38d5828 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::ha50a32fa99413dde [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x561f8a890515 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9dacb8f28d699f86 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 34: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 35: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 36: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f301b2586db - start_thread [INFO] [stdout] 38: 0x7f301ad6988f - __clone [INFO] [stdout] 39: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- examples::basic_existentials::listing1_err2 stdout ---- [INFO] [stdout] Thread join result: Err(Any) [INFO] [stdout] thread 'examples::basic_existentials::listing1_err2' panicked at 'called `Result::unwrap()` on an `Err` value: Any', src/examples/basic_existentials.rs:76:27 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x561f8a88bcd5 - std::io::Write::write_fmt::h5d052af13df32ea6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x561f8aadc631 - std::io::impls::>::write_fmt::h8fe8a9bdc421b4b6 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x561f8aae45cb - std::panicking::default_hook::h9386f7e484840463 [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stdout] at src/libcore/option.rs:1268 [INFO] [stdout] 15: 0x561f8a6c1570 - core::result::Result::unwrap::h0cb1e54aab7bf677 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x561f8a81401e - fungi_lang::examples::basic_existentials::listing1_err2::hb7e145eca9cf2dbb [INFO] [stdout] at src/examples/basic_existentials.rs:76 [INFO] [stdout] 17: 0x561f8a813e3a - fungi_lang::examples::basic_existentials::listing1_err2::{{closure}}::h368f10818f101a3c [INFO] [stdout] at src/examples/basic_existentials.rs:76 [INFO] [stdout] 18: 0x561f8a6acb4e - core::ops::function::FnOnce::call_once::h56022102e7e027d3 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 19: 0x561f8a897bcf - as core::ops::function::FnOnce>::call_once::h1f6ee40732e80908 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 20: 0x561f8a8b31ce - as core::ops::function::FnOnce<()>>::call_once::h85dff111be9c2dc6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x561f8a8b31ce - std::panicking::try::do_call::hee6f5a4bef67c840 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 22: 0x561f8a8b31ce - std::panicking::try::h3384d3b948e84dbc [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 23: 0x561f8a8b31ce - std::panic::catch_unwind::h5ae91218e578066d [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x561f8a8b31ce - test::run_test_in_process::he37a49587889b910 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x561f8a8b31ce - test::run_test::run_test_inner::{{closure}}::h4f0d25136ca480c2 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x561f8a88b186 - std::sys_common::backtrace::__rust_begin_short_backtrace::h969eceda34247af3 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h912007997cb04e92 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x561f8a890515 - as core::ops::function::FnOnce<()>>::call_once::h8795d8b7bd223988 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x561f8a890515 - std::panicking::try::do_call::hb29b86f86d4d722e [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 30: 0x561f8a890515 - std::panicking::try::h4bfefb3eddc0d900 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 31: 0x561f8a890515 - std::panic::catch_unwind::h774c24d4b38d5828 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::ha50a32fa99413dde [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x561f8a890515 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9dacb8f28d699f86 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 34: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 35: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 36: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f301b2586db - start_thread [INFO] [stdout] 38: 0x7f301ad6988f - __clone [INFO] [stdout] 39: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- examples::basic_read_effects::listing1_ok stdout ---- [INFO] [stdout] Thread join result: Err(Any) [INFO] [stdout] thread 'examples::basic_read_effects::listing1_ok' panicked at 'called `Result::unwrap()` on an `Err` value: Any', src/examples/basic_read_effects.rs:35:25 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x561f8a88bcd5 - std::io::Write::write_fmt::h5d052af13df32ea6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x561f8aadc631 - std::io::impls::>::write_fmt::h8fe8a9bdc421b4b6 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x561f8aae45cb - std::panicking::default_hook::h9386f7e484840463 [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stdout] at src/libcore/option.rs:1268 [INFO] [stdout] 15: 0x561f8a6c1570 - core::result::Result::unwrap::h0cb1e54aab7bf677 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x561f8a8855ae - fungi_lang::examples::basic_read_effects::listing1_ok::h68584a2c521f6cc6 [INFO] [stdout] at src/examples/basic_read_effects.rs:35 [INFO] [stdout] 17: 0x561f8a8853ca - fungi_lang::examples::basic_read_effects::listing1_ok::{{closure}}::h673464337b7c1e1b [INFO] [stdout] at src/examples/basic_read_effects.rs:35 [INFO] [stdout] 18: 0x561f8a6ac90e - core::ops::function::FnOnce::call_once::h2b98ad05c2c22c84 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 19: 0x561f8a897bcf - as core::ops::function::FnOnce>::call_once::h1f6ee40732e80908 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 20: 0x561f8a8b31ce - as core::ops::function::FnOnce<()>>::call_once::h85dff111be9c2dc6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x561f8a8b31ce - std::panicking::try::do_call::hee6f5a4bef67c840 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 22: 0x561f8a8b31ce - std::panicking::try::h3384d3b948e84dbc [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 23: 0x561f8a8b31ce - std::panic::catch_unwind::h5ae91218e578066d [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x561f8a8b31ce - test::run_test_in_process::he37a49587889b910 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x561f8a8b31ce - test::run_test::run_test_inner::{{closure}}::h4f0d25136ca480c2 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x561f8a88b186 - std::sys_common::backtrace::__rust_begin_short_backtrace::h969eceda34247af3 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h912007997cb04e92 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x561f8a890515 - as core::ops::function::FnOnce<()>>::call_once::h8795d8b7bd223988 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x561f8a890515 - std::panicking::try::do_call::hb29b86f86d4d722e [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 30: 0x561f8a890515 - std::panicking::try::h4bfefb3eddc0d900 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 31: 0x561f8a890515 - std::panic::catch_unwind::h774c24d4b38d5828 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::ha50a32fa99413dde [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x561f8a890515 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9dacb8f28d699f86 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 34: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 35: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 36: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f301b2586db - start_thread [INFO] [stdout] 38: 0x7f301ad6988f - __clone [INFO] [stdout] 39: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- examples::basic_write_effects::listing0_fail0_check stdout ---- [INFO] [stdout] Thread join result: Err(Any) [INFO] [stdout] thread 'examples::basic_write_effects::listing0_fail0_check' panicked at 'called `Result::unwrap()` on an `Err` value: Any', src/examples/basic_write_effects.rs:18:34 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x561f8a88bcd5 - std::io::Write::write_fmt::h5d052af13df32ea6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x561f8aadc631 - std::io::impls::>::write_fmt::h8fe8a9bdc421b4b6 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x561f8aae45cb - std::panicking::default_hook::h9386f7e484840463 [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stdout] at src/libcore/option.rs:1268 [INFO] [stdout] 15: 0x561f8a6c1570 - core::result::Result::unwrap::h0cb1e54aab7bf677 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x561f8a78933e - fungi_lang::examples::basic_write_effects::listing0_fail0_check::h0f2a331d131a15be [INFO] [stdout] at src/examples/basic_write_effects.rs:18 [INFO] [stdout] 17: 0x561f8a78915a - fungi_lang::examples::basic_write_effects::listing0_fail0_check::{{closure}}::h42eb385107fd1fff [INFO] [stdout] at src/examples/basic_write_effects.rs:18 [INFO] [stdout] 18: 0x561f8a6ac72e - core::ops::function::FnOnce::call_once::h0580a17f139a8af4 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 19: 0x561f8a897bcf - as core::ops::function::FnOnce>::call_once::h1f6ee40732e80908 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 20: 0x561f8a8b31ce - as core::ops::function::FnOnce<()>>::call_once::h85dff111be9c2dc6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x561f8a8b31ce - std::panicking::try::do_call::hee6f5a4bef67c840 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 22: 0x561f8a8b31ce - std::panicking::try::h3384d3b948e84dbc [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 23: 0x561f8a8b31ce - std::panic::catch_unwind::h5ae91218e578066d [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x561f8a8b31ce - test::run_test_in_process::he37a49587889b910 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x561f8a8b31ce - test::run_test::run_test_inner::{{closure}}::h4f0d25136ca480c2 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x561f8a88b186 - std::sys_common::backtrace::__rust_begin_short_backtrace::h969eceda34247af3 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h912007997cb04e92 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x561f8a890515 - as core::ops::function::FnOnce<()>>::call_once::h8795d8b7bd223988 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x561f8a890515 - std::panicking::try::do_call::hb29b86f86d4d722e [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 30: 0x561f8a890515 - std::panicking::try::h4bfefb3eddc0d900 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 31: 0x561f8a890515 - std::panic::catch_unwind::h774c24d4b38d5828 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::ha50a32fa99413dde [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x561f8a890515 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9dacb8f28d699f86 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 34: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 35: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 36: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f301b2586db - start_thread [INFO] [stdout] 38: 0x7f301ad6988f - __clone [INFO] [stdout] 39: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- examples::basic_write_effects::listing0 stdout ---- [INFO] [stdout] Thread join result: Err(Any) [INFO] [stdout] thread 'examples::basic_write_effects::listing0' panicked at 'called `Result::unwrap()` on an `Err` value: Any', src/examples/basic_write_effects.rs:2:22 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x561f8a88bcd5 - std::io::Write::write_fmt::h5d052af13df32ea6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x561f8aadc631 - std::io::impls::>::write_fmt::h8fe8a9bdc421b4b6 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x561f8aae45cb - std::panicking::default_hook::h9386f7e484840463 [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stdout] at src/libcore/option.rs:1268 [INFO] [stdout] 15: 0x561f8a6c1570 - core::result::Result::unwrap::h0cb1e54aab7bf677 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x561f8a78446e - fungi_lang::examples::basic_write_effects::listing0::hd5e88195f7edf847 [INFO] [stdout] at src/examples/basic_write_effects.rs:2 [INFO] [stdout] 17: 0x561f8a78428a - fungi_lang::examples::basic_write_effects::listing0::{{closure}}::h5eee88d0963ddba0 [INFO] [stdout] at src/examples/basic_write_effects.rs:2 [INFO] [stdout] 18: 0x561f8a6acc4e - core::ops::function::FnOnce::call_once::h60df2d8eca77e85b [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 19: 0x561f8a897bcf - as core::ops::function::FnOnce>::call_once::h1f6ee40732e80908 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 20: 0x561f8a8b31ce - as core::ops::function::FnOnce<()>>::call_once::h85dff111be9c2dc6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x561f8a8b31ce - std::panicking::try::do_call::hee6f5a4bef67c840 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 22: 0x561f8a8b31ce - std::panicking::try::h3384d3b948e84dbc [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 23: 0x561f8a8b31ce - std::panic::catch_unwind::h5ae91218e578066d [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x561f8a8b31ce - test::run_test_in_process::he37a49587889b910 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x561f8a8b31ce - test::run_test::run_test_inner::{{closure}}::h4f0d25136ca480c2 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x561f8a88b186 - std::sys_common::backtrace::__rust_begin_short_backtrace::h969eceda34247af3 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h912007997cb04e92 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x561f8a890515 - as core::ops::function::FnOnce<()>>::call_once::h8795d8b7bd223988 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x561f8a890515 - std::panicking::try::do_call::hb29b86f86d4d722e [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 30: 0x561f8a890515 - std::panicking::try::h4bfefb3eddc0d900 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 31: 0x561f8a890515 - std::panic::catch_unwind::h774c24d4b38d5828 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::ha50a32fa99413dde [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x561f8a890515 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9dacb8f28d699f86 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 34: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 35: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 36: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f301b2586db - start_thread [INFO] [stdout] 38: 0x7f301ad6988f - __clone [INFO] [stdout] 39: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- examples::basic_subtyping::listing0_pair stdout ---- [INFO] [stdout] Thread join result: Err(Any) [INFO] [stdout] thread 'examples::basic_subtyping::listing0_pair' panicked at 'called `Result::unwrap()` on an `Err` value: Any', src/examples/basic_subtyping.rs:23:27 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x561f8a88bcd5 - std::io::Write::write_fmt::h5d052af13df32ea6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x561f8aadc631 - std::io::impls::>::write_fmt::h8fe8a9bdc421b4b6 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x561f8aae45cb - std::panicking::default_hook::h9386f7e484840463 [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stdout] at src/libcore/option.rs:1268 [INFO] [stdout] 15: 0x561f8a6c1570 - core::result::Result::unwrap::h0cb1e54aab7bf677 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x561f8a5a333e - fungi_lang::examples::basic_subtyping::listing0_pair::hf91b906aae200dc9 [INFO] [stdout] at src/examples/basic_subtyping.rs:23 [INFO] [stdout] 17: 0x561f8a5a315a - fungi_lang::examples::basic_subtyping::listing0_pair::{{closure}}::hbd260b5b7038ec5d [INFO] [stdout] at src/examples/basic_subtyping.rs:23 [INFO] [stdout] 18: 0x561f8a6ad57e - core::ops::function::FnOnce::call_once::hea3427adaec81c1b [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 19: 0x561f8a897bcf - as core::ops::function::FnOnce>::call_once::h1f6ee40732e80908 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 20: 0x561f8a8b31ce - as core::ops::function::FnOnce<()>>::call_once::h85dff111be9c2dc6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x561f8a8b31ce - std::panicking::try::do_call::hee6f5a4bef67c840 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 22: 0x561f8a8b31ce - std::panicking::try::h3384d3b948e84dbc [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 23: 0x561f8a8b31ce - std::panic::catch_unwind::h5ae91218e578066d [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x561f8a8b31ce - test::run_test_in_process::he37a49587889b910 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x561f8a8b31ce - test::run_test::run_test_inner::{{closure}}::h4f0d25136ca480c2 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x561f8a88b186 - std::sys_common::backtrace::__rust_begin_short_backtrace::h969eceda34247af3 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h912007997cb04e92 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x561f8a890515 - as core::ops::function::FnOnce<()>>::call_once::h8795d8b7bd223988 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x561f8a890515 - std::panicking::try::do_call::hb29b86f86d4d722e [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 30: 0x561f8a890515 - std::panicking::try::h4bfefb3eddc0d900 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 31: 0x561f8a890515 - std::panic::catch_unwind::h774c24d4b38d5828 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::ha50a32fa99413dde [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x561f8a890515 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9dacb8f28d699f86 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 34: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 35: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 36: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f301b2586db - start_thread [INFO] [stdout] 38: 0x7f301ad6988f - __clone [INFO] [stdout] 39: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- examples::basic_subtyping::listing1_check stdout ---- [INFO] [stdout] Thread join result: Err(Any) [INFO] [stdout] thread 'examples::basic_subtyping::listing1_check' panicked at 'called `Result::unwrap()` on an `Err` value: Any', src/examples/basic_subtyping.rs:45:28 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x561f8a88bcd5 - std::io::Write::write_fmt::h5d052af13df32ea6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x561f8aadc631 - std::io::impls::>::write_fmt::h8fe8a9bdc421b4b6 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x561f8aae45cb - std::panicking::default_hook::h9386f7e484840463 [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stdout] at src/libcore/option.rs:1268 [INFO] [stdout] 15: 0x561f8a6c1570 - core::result::Result::unwrap::h0cb1e54aab7bf677 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x561f8a5aa34e - fungi_lang::examples::basic_subtyping::listing1_check::ha72133cb3e50544d [INFO] [stdout] at src/examples/basic_subtyping.rs:45 [INFO] [stdout] 17: 0x561f8a5aa16a - fungi_lang::examples::basic_subtyping::listing1_check::{{closure}}::h3a259f0d931bd67e [INFO] [stdout] at src/examples/basic_subtyping.rs:45 [INFO] [stdout] 18: 0x561f8a6ad65e - core::ops::function::FnOnce::call_once::hfb28c128a14ac4c9 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 19: 0x561f8a897bcf - as core::ops::function::FnOnce>::call_once::h1f6ee40732e80908 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 20: 0x561f8a8b31ce - as core::ops::function::FnOnce<()>>::call_once::h85dff111be9c2dc6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x561f8a8b31ce - std::panicking::try::do_call::hee6f5a4bef67c840 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 22: 0x561f8a8b31ce - std::panicking::try::h3384d3b948e84dbc [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 23: 0x561f8a8b31ce - std::panic::catch_unwind::h5ae91218e578066d [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x561f8a8b31ce - test::run_test_in_process::he37a49587889b910 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x561f8a8b31ce - test::run_test::run_test_inner::{{closure}}::h4f0d25136ca480c2 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x561f8a88b186 - std::sys_common::backtrace::__rust_begin_short_backtrace::h969eceda34247af3 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h912007997cb04e92 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x561f8a890515 - as core::ops::function::FnOnce<()>>::call_once::h8795d8b7bd223988 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x561f8a890515 - std::panicking::try::do_call::hb29b86f86d4d722e [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 30: 0x561f8a890515 - std::panicking::try::h4bfefb3eddc0d900 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 31: 0x561f8a890515 - std::panic::catch_unwind::h774c24d4b38d5828 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::ha50a32fa99413dde [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x561f8a890515 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9dacb8f28d699f86 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 34: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 35: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 36: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f301b2586db - start_thread [INFO] [stdout] 38: 0x7f301ad6988f - __clone [INFO] [stdout] 39: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- examples::basic_subtyping::listing2_synth stdout ---- [INFO] [stdout] Thread join result: Err(Any) [INFO] [stdout] thread 'examples::basic_subtyping::listing2_synth' panicked at 'called `Result::unwrap()` on an `Err` value: Any', src/examples/basic_subtyping.rs:62:28 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x561f8a88bcd5 - std::io::Write::write_fmt::h5d052af13df32ea6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x561f8aadc631 - std::io::impls::>::write_fmt::h8fe8a9bdc421b4b6 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x561f8aae48e5 - std::panicking::default_hook::{{closure}}::h016d7de02def2736 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x561f8aae45cb - std::panicking::default_hook::h9386f7e484840463 [INFO] [stdout] at src/libstd/panicking.rs:215 [INFO] [stdout] 11: 0x561f8aae4f42 - std::panicking::rust_panic_with_hook::h3846eb1b2e5a9312 [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 12: 0x561f8aae4b2b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 13: 0x561f8ab09f81 - core::panicking::panic_fmt::hc5953a7331f9805c [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 14: 0x561f8ab09da3 - core::option::expect_none_failed::hf2c575a7b931ce1f [INFO] [stdout] at src/libcore/option.rs:1268 [INFO] [stdout] 15: 0x561f8a6c1570 - core::result::Result::unwrap::h0cb1e54aab7bf677 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x561f8a5b159e - fungi_lang::examples::basic_subtyping::listing2_synth::h0eac539fe10416b9 [INFO] [stdout] at src/examples/basic_subtyping.rs:62 [INFO] [stdout] 17: 0x561f8a5b13ba - fungi_lang::examples::basic_subtyping::listing2_synth::{{closure}}::h2fa0e1806b981710 [INFO] [stdout] at src/examples/basic_subtyping.rs:62 [INFO] [stdout] 18: 0x561f8a6ad5ae - core::ops::function::FnOnce::call_once::hed9cea9ab5c32ade [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 19: 0x561f8a897bcf - as core::ops::function::FnOnce>::call_once::h1f6ee40732e80908 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 20: 0x561f8a8b31ce - as core::ops::function::FnOnce<()>>::call_once::h85dff111be9c2dc6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x561f8a8b31ce - std::panicking::try::do_call::hee6f5a4bef67c840 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 22: 0x561f8a8b31ce - std::panicking::try::h3384d3b948e84dbc [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 23: 0x561f8a8b31ce - std::panic::catch_unwind::h5ae91218e578066d [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x561f8a8b31ce - test::run_test_in_process::he37a49587889b910 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x561f8a8b31ce - test::run_test::run_test_inner::{{closure}}::h4f0d25136ca480c2 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x561f8a88b186 - std::sys_common::backtrace::__rust_begin_short_backtrace::h969eceda34247af3 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h912007997cb04e92 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x561f8a890515 - as core::ops::function::FnOnce<()>>::call_once::h8795d8b7bd223988 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x561f8a890515 - std::panicking::try::do_call::hb29b86f86d4d722e [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:331 [INFO] [stdout] 30: 0x561f8a890515 - std::panicking::try::h4bfefb3eddc0d900 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panicking.rs:274 [INFO] [stdout] 31: 0x561f8a890515 - std::panic::catch_unwind::h774c24d4b38d5828 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x561f8a890515 - std::thread::Builder::spawn_unchecked::{{closure}}::ha50a32fa99413dde [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x561f8a890515 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9dacb8f28d699f86 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libcore/ops/function.rs:232 [INFO] [stdout] 34: 0x561f8aad87cf - as core::ops::function::FnOnce>::call_once::h7deaeeba480c6ce2 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 35: 0x561f8aaeb753 - as core::ops::function::FnOnce>::call_once::h968b1dfb87756523 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/liballoc/boxed.rs:1008 [INFO] [stdout] 36: 0x561f8aaeb753 - std::sys::unix::thread::Thread::new::thread_start::h2399addeb6370595 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f301b2586db - start_thread [INFO] [stdout] 38: 0x7f301ad6988f - __clone [INFO] [stdout] 39: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- examples::basic_hostobj::color::static_tests::typing stdout ---- [INFO] [stdout] Thread join result: Err(Any) [INFO] [stdout] thread 'examples::basic_hostobj::color::static_tests::typing' panicked at 'called `Result::unwrap()` on an `Err` value: Any', src/examples/basic_hostobj.rs:55:27 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561f8aae2014 - backtrace::backtrace::libunwind::trace::h61666fa4b9834a45 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x561f8aae2014 - backtrace::backtrace::trace_unsynchronized::h01d3725fb5da8653 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x561f8aae2014 - std::sys_common::backtrace::_print_fmt::h5c7c4751bc296f90 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x561f8aae2014 - ::fmt::h7729313ad2d729c7 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x561f8ab0c18c - core::fmt::write::hb0049f6c12bdaffc [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x561f8a88bcd5 - std::io::Write::write_fmt::h5d052af13df32ea6 [INFO] [stdout] at /rustc/41997647ba6a77908f6ef64401414feb00bccf16/src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x561f8aadc631 - std::io::impls::>::write_fmt::h8fe8a9bdc421b4b6 [INFO] [stdout] at src/libstd/io/impls.rs:156 [INFO] [stdout] 7: 0x561f8aae48e5 - std::sys_common::backtrace::_print::ha087cac92e84a414 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x561f8aae48e5 - std::sys_common::backtrace::print::h6b013d3bfe6cbcb8 [WARN] too many lines in the log, truncating it