[INFO] crate fungi-lang 0.1.63 is already in cache [INFO] testing fungi-lang-0.1.63 against try#03a1ea71b075ab964b5278bc6e74cd6c52c36ee0 for pr-74409 [INFO] extracting crate fungi-lang 0.1.63 into /workspace/builds/worker-0/source [INFO] validating manifest of crates.io crate fungi-lang 0.1.63 on toolchain 03a1ea71b075ab964b5278bc6e74cd6c52c36ee0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [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-0/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:d9fbb4e2287ab3795bdefaf705efb7541a8875c13bce71e067d6b01dc5ed759b" "/opt/rustwide/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3d6505317469bb78fb8ca287c495e883726533eb6de05e2e1d1fff8d2b7e0ded [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "3d6505317469bb78fb8ca287c495e883726533eb6de05e2e1d1fff8d2b7e0ded", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3d6505317469bb78fb8ca287c495e883726533eb6de05e2e1d1fff8d2b7e0ded", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3d6505317469bb78fb8ca287c495e883726533eb6de05e2e1d1fff8d2b7e0ded", kill_on_drop: false }` [INFO] [stdout] 3d6505317469bb78fb8ca287c495e883726533eb6de05e2e1d1fff8d2b7e0ded [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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@sha256:d9fbb4e2287ab3795bdefaf705efb7541a8875c13bce71e067d6b01dc5ed759b" "/opt/rustwide/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 7a4c2cef9390c6e88266a194f40a1a896cc0d27d2cb2d8c76cb1cd798e65c7ce [INFO] running `Command { std: "docker" "start" "-a" "7a4c2cef9390c6e88266a194f40a1a896cc0d27d2cb2d8c76cb1cd798e65c7ce", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.3.3 [INFO] [stderr] Compiling serde v1.0.114 [INFO] [stderr] Compiling syn v1.0.35 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling adapton v0.3.31 [INFO] [stderr] Compiling nom v4.2.3 [INFO] [stderr] Compiling thread_local v0.3.6 [INFO] [stderr] Compiling proc-macro2 v0.3.8 [INFO] [stderr] Compiling aho-corasick v0.6.10 [INFO] [stderr] Compiling regex v0.2.11 [INFO] [stderr] Compiling serde_derive v1.0.114 [INFO] [stderr] Compiling serde_json v1.0.56 [INFO] [stderr] Compiling fungi-lang v0.1.63 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/shared.rs:182:1 [INFO] [stdout] | [INFO] [stdout] 182 | /// Global table of serialized objects; permits us to avoid multiple [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/shared.rs:183:1 [INFO] [stdout] | [INFO] [stdout] 183 | /// serialized copies of a single, shared object. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/db.rs:10:29 [INFO] [stdout] | [INFO] [stdout] 10 | pub bracket_indent: Box, [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Display` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/db.rs:11:28 [INFO] [stdout] | [INFO] [stdout] 11 | pub bracket_close: Box, [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Display` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shared.rs:179:29 [INFO] [stdout] | [INFO] [stdout] 179 | table:HashMap>> [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shared.rs:215:29 [INFO] [stdout] | [INFO] [stdout] 215 | let x : &Rc = &**brc; [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shared.rs:216:42 [INFO] [stdout] | [INFO] [stdout] 216 | let y : Result, Rc> = (x.clone()).downcast::(); [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:416:16 [INFO] [stdout] | [INFO] [stdout] 416 | pub ops:Rc, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn HostObjOps` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:418:16 [INFO] [stdout] | [INFO] [stdout] 418 | pub any:Rc [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:421:24 [INFO] [stdout] | [INFO] [stdout] 421 | fn eq(&self, x:&Rc, y:&Rc) -> bool; [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:421:41 [INFO] [stdout] | [INFO] [stdout] 421 | fn eq(&self, x:&Rc, y:&Rc) -> bool; [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:422:26 [INFO] [stdout] | [INFO] [stdout] 422 | fn hash(&self, x:&Rc) -> u64; [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:423:43 [INFO] [stdout] | [INFO] [stdout] 423 | fn fmt(&self, f:&mut Formatter, x:&Rc ) -> fmt::Result; [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:451:17 [INFO] [stdout] | [INFO] [stdout] 451 | pub eval:Rc) -> dynamics::ExpTerm> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec) -> dynamics::ExpTerm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `vt100` is imported redundantly [INFO] [stdout] --> src/decide.rs:420:13 [INFO] [stdout] | [INFO] [stdout] 203 | decide::equiv, vt100, [INFO] [stdout] | ----- the item `vt100` is already imported here [INFO] [stdout] ... [INFO] [stdout] 420 | use crate::vt100; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `vt100` is imported redundantly [INFO] [stdout] --> src/decide.rs:560:13 [INFO] [stdout] | [INFO] [stdout] 203 | decide::equiv, vt100, [INFO] [stdout] | ----- the item `vt100` is already imported here [INFO] [stdout] ... [INFO] [stdout] 560 | use crate::vt100; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `vt100` is imported redundantly [INFO] [stdout] --> src/decide.rs:1740:13 [INFO] [stdout] | [INFO] [stdout] 1128 | use crate::vt100; [INFO] [stdout] | ------------ the item `vt100` is already imported here [INFO] [stdout] ... [INFO] [stdout] 1740 | use crate::vt100; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `vt100` is imported redundantly [INFO] [stdout] --> src/decide.rs:1913:13 [INFO] [stdout] | [INFO] [stdout] 1128 | use crate::vt100; [INFO] [stdout] | ------------ the item `vt100` is already imported here [INFO] [stdout] ... [INFO] [stdout] 1913 | use crate::vt100; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Sort` is imported redundantly [INFO] [stdout] --> src/dynamics.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 20 | use crate::ast::*; [INFO] [stdout] | ------------- the item `Sort` is already imported here [INFO] [stdout] ... [INFO] [stdout] 174 | use crate::ast::Sort; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:53:67 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn obj_of_any (x:&Rc) -> Option { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:54:30 [INFO] [stdout] | [INFO] [stdout] 54 | let r : Result, Rc> = (x.clone()).downcast::(); [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:63:24 [INFO] [stdout] | [INFO] [stdout] 63 | fn eq(&self, x:&Rc, y:&Rc) -> bool { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:63:36 [INFO] [stdout] | [INFO] [stdout] 63 | fn eq(&self, x:&Rc, y:&Rc) -> bool { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:69:26 [INFO] [stdout] | [INFO] [stdout] 69 | fn hash(&self, x:&Rc) -> u64 { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:75:43 [INFO] [stdout] | [INFO] [stdout] 75 | fn fmt(&self, f:&mut Formatter, x:&Rc ) -> fmt::Result { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `crate_in_paths` has been stable since 1.30.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 95 | #![feature(crate_in_paths)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 26 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 55.60s [INFO] running `Command { std: "docker" "inspect" "7a4c2cef9390c6e88266a194f40a1a896cc0d27d2cb2d8c76cb1cd798e65c7ce", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7a4c2cef9390c6e88266a194f40a1a896cc0d27d2cb2d8c76cb1cd798e65c7ce", kill_on_drop: false }` [INFO] [stdout] 7a4c2cef9390c6e88266a194f40a1a896cc0d27d2cb2d8c76cb1cd798e65c7ce [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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@sha256:d9fbb4e2287ab3795bdefaf705efb7541a8875c13bce71e067d6b01dc5ed759b" "/opt/rustwide/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] cace4c038ef71d37b0ed8bdb6390fcfcbd7cd4ed04baac9c4ae62203b0c28d5c [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "cace4c038ef71d37b0ed8bdb6390fcfcbd7cd4ed04baac9c4ae62203b0c28d5c", kill_on_drop: false }` [INFO] [stderr] Compiling fungi-lang v0.1.63 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/shared.rs:182:1 [INFO] [stdout] | [INFO] [stdout] 182 | /// Global table of serialized objects; permits us to avoid multiple [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/shared.rs:183:1 [INFO] [stdout] | [INFO] [stdout] 183 | /// serialized copies of a single, shared object. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/db.rs:10:29 [INFO] [stdout] | [INFO] [stdout] 10 | pub bracket_indent: Box, [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Display` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/db.rs:11:28 [INFO] [stdout] | [INFO] [stdout] 11 | pub bracket_close: Box, [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Display` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shared.rs:179:29 [INFO] [stdout] | [INFO] [stdout] 179 | table:HashMap>> [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shared.rs:215:29 [INFO] [stdout] | [INFO] [stdout] 215 | let x : &Rc = &**brc; [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shared.rs:216:42 [INFO] [stdout] | [INFO] [stdout] 216 | let y : Result, Rc> = (x.clone()).downcast::(); [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:416:16 [INFO] [stdout] | [INFO] [stdout] 416 | pub ops:Rc, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn HostObjOps` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:418:16 [INFO] [stdout] | [INFO] [stdout] 418 | pub any:Rc [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:421:24 [INFO] [stdout] | [INFO] [stdout] 421 | fn eq(&self, x:&Rc, y:&Rc) -> bool; [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:421:41 [INFO] [stdout] | [INFO] [stdout] 421 | fn eq(&self, x:&Rc, y:&Rc) -> bool; [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:422:26 [INFO] [stdout] | [INFO] [stdout] 422 | fn hash(&self, x:&Rc) -> u64; [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:423:43 [INFO] [stdout] | [INFO] [stdout] 423 | fn fmt(&self, f:&mut Formatter, x:&Rc ) -> fmt::Result; [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:451:17 [INFO] [stdout] | [INFO] [stdout] 451 | pub eval:Rc) -> dynamics::ExpTerm> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec) -> dynamics::ExpTerm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `vt100` is imported redundantly [INFO] [stdout] --> src/decide.rs:420:13 [INFO] [stdout] | [INFO] [stdout] 203 | decide::equiv, vt100, [INFO] [stdout] | ----- the item `vt100` is already imported here [INFO] [stdout] ... [INFO] [stdout] 420 | use crate::vt100; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `vt100` is imported redundantly [INFO] [stdout] --> src/decide.rs:560:13 [INFO] [stdout] | [INFO] [stdout] 203 | decide::equiv, vt100, [INFO] [stdout] | ----- the item `vt100` is already imported here [INFO] [stdout] ... [INFO] [stdout] 560 | use crate::vt100; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `vt100` is imported redundantly [INFO] [stdout] --> src/decide.rs:1740:13 [INFO] [stdout] | [INFO] [stdout] 1128 | use crate::vt100; [INFO] [stdout] | ------------ the item `vt100` is already imported here [INFO] [stdout] ... [INFO] [stdout] 1740 | use crate::vt100; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `vt100` is imported redundantly [INFO] [stdout] --> src/decide.rs:1913:13 [INFO] [stdout] | [INFO] [stdout] 1128 | use crate::vt100; [INFO] [stdout] | ------------ the item `vt100` is already imported here [INFO] [stdout] ... [INFO] [stdout] 1913 | use crate::vt100; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Sort` is imported redundantly [INFO] [stdout] --> src/dynamics.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 20 | use crate::ast::*; [INFO] [stdout] | ------------- the item `Sort` is already imported here [INFO] [stdout] ... [INFO] [stdout] 174 | use crate::ast::Sort; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:53:67 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn obj_of_any (x:&Rc) -> Option { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:54:30 [INFO] [stdout] | [INFO] [stdout] 54 | let r : Result, Rc> = (x.clone()).downcast::(); [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:63:24 [INFO] [stdout] | [INFO] [stdout] 63 | fn eq(&self, x:&Rc, y:&Rc) -> bool { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:63:36 [INFO] [stdout] | [INFO] [stdout] 63 | fn eq(&self, x:&Rc, y:&Rc) -> bool { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:69:26 [INFO] [stdout] | [INFO] [stdout] 69 | fn hash(&self, x:&Rc) -> u64 { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:75:43 [INFO] [stdout] | [INFO] [stdout] 75 | fn fmt(&self, f:&mut Formatter, x:&Rc ) -> fmt::Result { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `crate_in_paths` has been stable since 1.30.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 95 | #![feature(crate_in_paths)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 26 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/shared.rs:182:1 [INFO] [stdout] | [INFO] [stdout] 182 | /// Global table of serialized objects; permits us to avoid multiple [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/shared.rs:183:1 [INFO] [stdout] | [INFO] [stdout] 183 | /// serialized copies of a single, shared object. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/db.rs:10:29 [INFO] [stdout] | [INFO] [stdout] 10 | pub bracket_indent: Box, [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Display` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/db.rs:11:28 [INFO] [stdout] | [INFO] [stdout] 11 | pub bracket_close: Box, [INFO] [stdout] | ^^^^^^^ help: use `dyn`: `dyn Display` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shared.rs:179:29 [INFO] [stdout] | [INFO] [stdout] 179 | table:HashMap>> [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shared.rs:215:29 [INFO] [stdout] | [INFO] [stdout] 215 | let x : &Rc = &**brc; [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/shared.rs:216:42 [INFO] [stdout] | [INFO] [stdout] 216 | let y : Result, Rc> = (x.clone()).downcast::(); [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:416:16 [INFO] [stdout] | [INFO] [stdout] 416 | pub ops:Rc, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn HostObjOps` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:418:16 [INFO] [stdout] | [INFO] [stdout] 418 | pub any:Rc [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:421:24 [INFO] [stdout] | [INFO] [stdout] 421 | fn eq(&self, x:&Rc, y:&Rc) -> bool; [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:421:41 [INFO] [stdout] | [INFO] [stdout] 421 | fn eq(&self, x:&Rc, y:&Rc) -> bool; [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:422:26 [INFO] [stdout] | [INFO] [stdout] 422 | fn hash(&self, x:&Rc) -> u64; [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:423:43 [INFO] [stdout] | [INFO] [stdout] 423 | fn fmt(&self, f:&mut Formatter, x:&Rc ) -> fmt::Result; [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn any::Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/ast.rs:451:17 [INFO] [stdout] | [INFO] [stdout] 451 | pub eval:Rc) -> dynamics::ExpTerm> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec) -> dynamics::ExpTerm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `vt100` is imported redundantly [INFO] [stdout] --> src/decide.rs:420:13 [INFO] [stdout] | [INFO] [stdout] 203 | decide::equiv, vt100, [INFO] [stdout] | ----- the item `vt100` is already imported here [INFO] [stdout] ... [INFO] [stdout] 420 | use crate::vt100; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `vt100` is imported redundantly [INFO] [stdout] --> src/decide.rs:560:13 [INFO] [stdout] | [INFO] [stdout] 203 | decide::equiv, vt100, [INFO] [stdout] | ----- the item `vt100` is already imported here [INFO] [stdout] ... [INFO] [stdout] 560 | use crate::vt100; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `vt100` is imported redundantly [INFO] [stdout] --> src/decide.rs:1740:13 [INFO] [stdout] | [INFO] [stdout] 1128 | use crate::vt100; [INFO] [stdout] | ------------ the item `vt100` is already imported here [INFO] [stdout] ... [INFO] [stdout] 1740 | use crate::vt100; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `vt100` is imported redundantly [INFO] [stdout] --> src/decide.rs:1913:13 [INFO] [stdout] | [INFO] [stdout] 1128 | use crate::vt100; [INFO] [stdout] | ------------ the item `vt100` is already imported here [INFO] [stdout] ... [INFO] [stdout] 1913 | use crate::vt100; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Sort` is imported redundantly [INFO] [stdout] --> src/dynamics.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 20 | use crate::ast::*; [INFO] [stdout] | ------------- the item `Sort` is already imported here [INFO] [stdout] ... [INFO] [stdout] 174 | use crate::ast::Sort; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:53:67 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn obj_of_any (x:&Rc) -> Option { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:54:30 [INFO] [stdout] | [INFO] [stdout] 54 | let r : Result, Rc> = (x.clone()).downcast::(); [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:63:24 [INFO] [stdout] | [INFO] [stdout] 63 | fn eq(&self, x:&Rc, y:&Rc) -> bool { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:63:36 [INFO] [stdout] | [INFO] [stdout] 63 | fn eq(&self, x:&Rc, y:&Rc) -> bool { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:69:26 [INFO] [stdout] | [INFO] [stdout] 69 | fn hash(&self, x:&Rc) -> u64 { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hostobj.rs:75:43 [INFO] [stdout] | [INFO] [stdout] 75 | fn fmt(&self, f:&mut Formatter, x:&Rc ) -> fmt::Result { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `crate_in_paths` has been stable since 1.30.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 95 | #![feature(crate_in_paths)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 26 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 21.76s [INFO] running `Command { std: "docker" "inspect" "cace4c038ef71d37b0ed8bdb6390fcfcbd7cd4ed04baac9c4ae62203b0c28d5c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cace4c038ef71d37b0ed8bdb6390fcfcbd7cd4ed04baac9c4ae62203b0c28d5c", kill_on_drop: false }` [INFO] [stdout] cace4c038ef71d37b0ed8bdb6390fcfcbd7cd4ed04baac9c4ae62203b0c28d5c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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@sha256:d9fbb4e2287ab3795bdefaf705efb7541a8875c13bce71e067d6b01dc5ed759b" "/opt/rustwide/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 3044e73d77b45443f3c0926fc431a00a572e0e1001da2cc998b01a6dad9dd2f7 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "3044e73d77b45443f3c0926fc431a00a572e0e1001da2cc998b01a6dad9dd2f7", kill_on_drop: false }` [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 macro invocations [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 macro invocations [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 macro invocations [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 macro invocations [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.05s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/fungi_lang-67dd61ef2a210e05 [INFO] [stdout] [INFO] [stdout] running 42 tests [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_existentials:76 [INFO] [stdout] β”‚ let foo = ... β‡’ ? [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] [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_subtyping:23 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_write_effects:18 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_read_effects:35 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_subtyping:45 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_existentials:51 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_existentials:2 [INFO] [stdout] β”‚ let get = ... β‡’ ? [INFO] [stdout] β”‚ let foo = ... β‡’ ? [INFO] [stdout] [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_write_effects:34 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_write_effects:2 [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ let set = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] [INFO] [stdout] β”‚ let set = ... β‡’ ? [INFO] [stdout] β”‚ let foo = ... β‡’ ? [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_read_effects:18 [INFO] [stdout] β”‚ β”‚ βˆ€Z: NmSet [INFO] [stdout] β”‚ β”‚ 𝞴b: Bool [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_existentials:27 [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ 𝞴n: Nm[X] [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ let foo = ... β‡’ ? [INFO] [stdout] β”‚ let set = ... β‡’ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ let put_one = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ βˆ€Z: NmSet [INFO] [stdout] β”‚ β”‚ 𝞴b: Bool [INFO] [stdout] β”‚ β”‚ 𝞴n: Nm[X] [INFO] [stdout] β”‚ β”‚ 𝞴rx: Ref[X](Nat) [INFO] [stdout] β”‚ let get_pair = ... β‡’ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ 𝞴x: Nat [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ open crate::examples::basic_hostobj::color [INFO] [stdout] β”‚ let get = ... β‡’ ? [INFO] [stdout] β”‚ let get = ... β‡’ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ mod fungi_lang::examples::basic_hostobj::color { [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ βˆ€Z: NmSet [INFO] [stdout] β”‚ β”‚ 𝞴nx: Nm[X] [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β”‚ 𝞴b: Bool [INFO] [stdout] β”‚ β”‚ 𝞴ry: Ref[Y](Nat) [INFO] [stdout] β”‚ β”‚ 𝞴nx: Nm[X] [INFO] [stdout] β”‚ β•‘ type Color : ? := βŸ…ColorβŸ† [INFO] [stdout] β”‚ β”‚ 𝞴x: Nat [INFO] [stdout] β”‚ β”‚ 𝞴ny: Nm[Y] [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ val color_red : ⌊ColorβŒ‹ := βŸ…RedβŸ† [INFO] [stdout] β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ 𝞴nx: Nm[X] [INFO] [stdout] β”‚ β”‚ 𝞴r: Ref[X](Nat) [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ val color_green : ⌊ColorβŒ‹ := βŸ…GreenβŸ† [INFO] [stdout] β”‚ β”‚ 𝞴n: Nm[X] [INFO] [stdout] β”‚ β”‚ 𝞴ny: Nm[Y] [INFO] [stdout] β”‚ β”‚ let x = get rx β‡’ ? [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ val color_gold : ⌊ColorβŒ‹ := βŸ…GoldβŸ† [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ fn color_next : Thk[0](γ€ˆ0; 0γ€‰β€œColor” β†’ γ€ˆ0; 0〉F β€œColor”) := ... [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ let x = get r β‡’ ? [INFO] [stdout] β”‚ β”‚ βˆ€Z: NmSet [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β”‚ 𝞴r: Ref[X](Nat) [INFO] [stdout] β”‚ β”‚ 𝞴b: Bool [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ 𝞴nz: Nm[Z] [INFO] [stdout] β”‚ β”‚ 𝞴nxz: Nm[X βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β”‚ 𝞴nyz: Nm[Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ 𝞴nz: Nm[Z] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stdout] β”‚ β”‚ if b { [INFO] [stdout] β”‚ β”‚ if b { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ r β‡’ Ref[X](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ x ⇐ Nat [INFO] [stdout] β”‚ β”‚ 𝞴x: Nat [INFO] [stdout] [INFO] [stdout] β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_subtyping:62 [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ ref(n, x) ⇐ γ€ˆ@!(X); 0〉F Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ 𝞴b: Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ get r β‡’ γ€ˆ0; X〉F Nat [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β”‚ let r = ref n x β‡’ ? [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β”‚ if b { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [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:2727 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ nxz β‡’ Nm[X βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ let x = get r β‡’ γ€ˆ0; X〉F Nat in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ0; X〉F Nat [INFO] [stdout] β”‚ β”‚ 𝞴nx: Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; X〉 - γ€ˆ0; X〉 ≑ ? [INFO] [stdout] β”‚ let put_one = ... β‡’ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ 0 ⇐ Nat [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β•‘ fn color_next : Thk[0](γ€ˆ0; 0γ€‰β€œColor” β†’ γ€ˆ0; 0〉F β€œColor”) [Check OK] [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ rx β‡’ Ref[X](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref nz 1 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(nxz, 0) ⇐ γ€ˆ@!(X βŠ₯ Y βŠ₯ Z); 0〉F Ref[@!(X βŠ₯ Y βŠ₯ Z)](Nat) [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ 𝞴ny: Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ get rx β‡’ γ€ˆ0; X〉F Nat [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] [INFO] [stdout] β”‚ } [fungi_lang::examples::basic_hostobj::color: ?/? ok items] [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_subtyping:2 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ x β‡’ Nat [INFO] [stdout] β”‚ β”‚ let x = get r β‡’ ? [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(n, x) β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) [INFO] [stdout] β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ 𝞴nz: Nm[Z] [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ let x = get rx β‡’ γ€ˆ0; X〉F Nat in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ0; X βŠ₯ Y〉F Nat [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; X βŠ₯ Y〉 - γ€ˆ0; X〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ let red = ... β‡’ ? [INFO] [stdout] β””αšœfungi_lang::examples::basic_write_effects:2 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ let r = ref n x β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F Ref[@!(X)](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:40 [INFO] [stdout] β”‚ β”‚ 𝞴ny: Nm[Y] [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nz β‡’ Nm[Z] [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref nx 1 β‡’ ? [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ nyz β‡’ Nm[Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ 1 ⇐ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 1 β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(nyz, 1) ⇐ γ€ˆ@!(X βŠ₯ Y βŠ₯ Z); 0〉F Ref[@!(X βŠ₯ Y βŠ₯ Z)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β”‚ success: ... ⊒ γ€ˆ0; X〉 - γ€ˆ0; X〉 ≑ γ€ˆ0; X〉 [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ βˆ€Z: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ βˆ€Z: NmSet [INFO] [stdout] β”‚ β”‚ 𝞴b: Bool [INFO] [stdout] β”‚ β”‚ 𝞴b: Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(nz, 1) β‡’ γ€ˆ@@β¦—Z⦘; 0〉F Ref[@@β¦—Z⦘](Nat) [INFO] [stdout] β”‚ β”‚ 𝞴nxz: Nm[X βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ 𝞴nxz: Nm[X βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ 𝞴nyz: Nm[Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ 𝞴nyz: Nm[Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ if b { [INFO] [stdout] β”‚ β”‚ if b { [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ let get_one = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ if b { [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [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] β”‚ β”‚ β”‚ β”‚ ... ⊒ r β‡’ Ref[X](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ get r β‡’ γ€ˆ0; X〉F Nat [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ x ⇐ Nat [INFO] [stdout] β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ ref(n, x) ⇐ γ€ˆ0; 0〉F Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ let red = ... β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ } [INFO] [stdout] β”‚ β”‚ βœ” [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] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Z⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ let x = get r β‡’ γ€ˆ0; X〉F Nat in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β”‚ β”‚ let r1 = ref nxz 0 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [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] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[X βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ βˆ€Z: NmSet [INFO] [stdout] β”‚ β”‚ success: ... ⊒ γ€ˆ0; X βŠ₯ Y〉 - γ€ˆ0; X〉 ≑ γ€ˆ0; X βŠ₯ Y〉 [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref nx 1 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; X〉 ≑ ? [INFO] [stdout] β”‚ let green = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nxz β‡’ Nm[X βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Y βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[Y βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ 𝞴b: Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 0 β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(nxz, 0) β‡’ γ€ˆ@@β¦—X βŠ₯ Z⦘; 0〉F Ref[@@β¦—X βŠ₯ Z⦘](Nat) [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Y βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ if b { [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[Y βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ let y = get ry β‡’ ? [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ 𝞴nxz: Nm[X βŠ₯ Z] [INFO] [stdout] β””αšœfungi_lang::examples::basic_write_effects:18 [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:40 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[X βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nx β‡’ Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 1 β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [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] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(nx, 1) β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ let green = ... β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref nx 1 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ let gold = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ 𝞴nyz: Nm[Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [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 βŠ₯ Z] ⨉ Ref[@!(ZZ)](Nat) [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ failure: ... ⊬ γ€ˆ0; 0〉 - γ€ˆ0; X〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y βŠ₯ Z); 0〉 - γ€ˆ@@β¦—X βŠ₯ Z⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nx β‡’ Nm[X] [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 1 β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(nx, 1) β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ry β‡’ Ref[Y](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ get ry β‡’ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [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:2619 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ Failure term: Let("x", Get(Var("r")), Ret(Var("x")))` [INFO] [stdout] β”‚ β”‚ let y = get ry β‡’ γ€ˆ0; Y〉F Nat in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ0; X βŠ₯ Y〉F 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] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β””αšœfungi_lang::examples::basic_subtyping:45 [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] β”‚ β”‚ if b { [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; X βŠ₯ Y〉 - γ€ˆ0; Y〉 ≑ ? [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:40 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ failure: ... ⊬ γ€ˆ0; 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nx β‡’ Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 1 β‡’ Nat [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ let gold = ... β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(nx, 1) β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ success: ... ⊒ γ€ˆ0; X βŠ₯ Y〉 - γ€ˆ0; Y〉 ≑ γ€ˆ0; X βŠ₯ Y〉 [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("r", Ref(Var("n"), Var("x")), Ret(Var("r")))` [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ let triple = ... β‡’ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β””αšœfungi_lang::examples::basic_read_effects:2 [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] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:40 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ failure: ... ⊬ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Z⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [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] β”‚ β”‚ 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] β”‚ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ let triple = ... β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ ⨉ ⌊ColorβŒ‹ ⨉ ⌊ColorβŒ‹ in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ γ€ˆ@@β¦—Y⦘; 0〉 [INFO] [stdout] β”‚ let red_next = ... β‡’ ? [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [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] β”‚ β”‚ Failed to synth expression AnnoC, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ Failed to synth value Pack, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ let get = ... β‡’ Error: parameter 0 type mismatch in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ Failure term: Pack(Var("X"), Pair(Var("nx"), Var("r")))` [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ (force color_next) red β‡’ ? [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] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:40 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[X βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β””αšœfungi_lang::examples::basic_subtyping:23 [INFO] [stdout] β”‚ β”‚ β”‚ Failed to synth expression Ret, error: parameter 0 unknown type [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] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ Failed to synth expression AnnoC, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β”‚ β”‚ Failure term: Let("r", Ref(Var("nz"), Nat(1)), Ret(Pack(Var("X"), Pair(Var("nx"), Var("r")))))` [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:40 [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:40 [INFO] [stdout] β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β””αšœfungi_lang::examples::basic_read_effects:35 [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ γ€ˆ@@β¦—Y⦘; 0〉 [INFO] [stdout] β””αšœfungi_lang::examples::basic_read_effects:18 [INFO] [stdout] β”‚ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X] βŠ† Nm[X] [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[X] βŠ† Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Y βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ force color_next β‡’ ? [INFO] [stdout] β”‚ let set = ... β‡’ Error: parameter 0 type mismatch in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[Y βŠ₯ Z] βŠ† Nm[X βŠ₯ Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—X⦘](Nat) βŠ† Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref ny 2 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ } [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X] βŠ† Nm[X βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ny β‡’ Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 2 β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(ny, 2) β‡’ γ€ˆ@@β¦—Y⦘; 0〉F Ref[@@β¦—Y⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—X⦘](Nat) βŠ† Ref[@!(X)](Nat) [INFO] [stdout] β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ γ€ˆ@@β¦—Y⦘; 0〉 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y βŠ₯ Z); 0〉 - γ€ˆ@@β¦—X βŠ₯ Z⦘; 0〉 ≑ γ€ˆ@@β¦—Y⦘; 0〉 [INFO] [stdout] β”‚ β”‚ } else { [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: ... ⊒ Ref[@@β¦—X βŠ₯ Z⦘](Nat) βŠ† Ref[@!(X βŠ₯ Y βŠ₯ Z)](Nat) [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β””αšœfungi_lang::examples::basic_write_effects:34 [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref ny 2 β‡’ ? [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [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] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ force 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:40 [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] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Y⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Y⦘; 0〉 ≑ γ€ˆ@@β¦—X⦘; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ color_next β‡’ Thk[0](γ€ˆ0; 0γ€‰βŒŠColorβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ColorβŒ‹) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force color_next β‡’ γ€ˆ0; 0γ€‰βŒŠColorβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X] βŠ† Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[X] βŠ† Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ny β‡’ Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 2 β‡’ Nat [INFO] [stdout] β””αšœfungi_lang::examples::basic_subtyping:2 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [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:40 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—X⦘](Nat) βŠ† Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ (force color_next) red β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(ny, 2) β‡’ γ€ˆ@@β¦—Y⦘; 0〉F Ref[@@β¦—Y⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[X] βŠ† Nm[X βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—X⦘](Nat) βŠ† Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—X⦘](Nat) βŠ† Ref[@!(X)](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] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Y⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—X βŠ₯ Z⦘](Nat) βŠ† Ref[@!(X βŠ₯ Y βŠ₯ Z)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Y⦘; 0〉 ≑ γ€ˆ@@β¦—X⦘; 0〉 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Y] βŠ† Nm[Y] [INFO] [stdout] β”‚ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[Y] βŠ† Nm[Y] [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—Y⦘](Nat) βŠ† Ref[@!(Y)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ let r2 = ref nyz 0 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—Y⦘](Nat) βŠ† Ref[@!(Y)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ } [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—X⦘](Nat) βŠ† Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ } else { [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] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nyz β‡’ Nm[Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ColorβŒ‹ βŠ† βŸ…ColorβŸ† [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 0 β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ ⌊ColorβŒ‹ βŠ† βŸ…ColorβŸ† [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β””αšœfungi_lang::examples::basic_existentials:2 [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:40 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(nyz, 0) β‡’ γ€ˆ@@β¦—Y βŠ₯ Z⦘; 0〉F Ref[@@β¦—Y βŠ₯ Z⦘](Nat) [INFO] [stdout] β”‚ let red_next = ... β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Y] βŠ† Nm[Y] [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] β”‚ β”‚ β”‚  success: ... ⊒ Nm[Y] βŠ† Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref ny 2 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y βŠ₯ Z); 0〉 - γ€ˆ@@β¦—Y βŠ₯ Z⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y βŠ₯ Z); 0〉 - γ€ˆ@@β¦—Y βŠ₯ Z⦘; 0〉 ≑ γ€ˆ@@β¦—X⦘; 0〉 [INFO] [stdout] β”‚ let green_next = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—Y βŠ₯ Z⦘](Nat) βŠ† Ref[@!(X βŠ₯ Y βŠ₯ Z)](Nat) [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—Y⦘](Nat) βŠ† Ref[@!(Y)](Nat) [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—Y⦘](Nat) βŠ† Ref[@!(Y)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ let r = ref ny 2 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ny β‡’ Nm[Y] [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ } [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ (force color_next) green β‡’ ? [INFO] [stdout] β”‚ β”‚ Failed to check expression IfThenElse, error: parameter 1 type mismatch  [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—Y βŠ₯ Z⦘](Nat) βŠ† Ref[@!(X βŠ₯ Y βŠ₯ Z)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 2 β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ny β‡’ Nm[Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ force color_next β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 2 β‡’ Nat [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(ny, 2) β‡’ γ€ˆ@@β¦—Y⦘; 0〉F Ref[@@β¦—Y⦘](Nat) [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ } [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(ny, 2) β‡’ γ€ˆ@@β¦—Y⦘; 0〉F Ref[@@β¦—Y⦘](Nat) [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [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] β”‚ β”‚ β”‚ 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] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Y⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Y⦘; 0〉 ≑ γ€ˆ@@β¦—X⦘; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X βŠ₯ Y); 0〉 - γ€ˆ@@β¦—Y⦘; 0〉 ≑ γ€ˆ@@β¦—X⦘; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Z] βŠ† Nm[Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Nm[Z] βŠ† Nm[Y βŠ₯ Z] [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Y] βŠ† Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—Y⦘](Nat) βŠ† Ref[@!(Y)](Nat) [INFO] [stdout] β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β”‚ β”‚  failure: ... ⊒ Nm[Y] βŠ† Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ Ref[@@β¦—Y⦘](Nat) βŠ† Ref[@!(Y)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1308 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ Detailed errors for checking type of variable ny: [INFO] [stdout] β”‚ β”‚ } [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] β”‚ β”‚ β”‚ β”‚ .. 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: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] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [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:40 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1313 [INFO] [stdout] β”‚ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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] β”‚ β”‚ β”‚ Failed to check value Var, error: annotation mismatch [INFO] [stdout] β””αšœfungi_lang::examples::basic_existentials:27 [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] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ Failed to synth expression AnnoC, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β”‚ β”‚ Failure term: Var("ny")` [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—Y⦘](Nat) βŠ† Ref[@!(X)](Nat) [INFO] [stdout] β””αšœfungi_lang::examples::basic_subtyping:62 [INFO] [stdout] β”‚ let foo = ... β‡’ Error: parameter 0 type mismatch in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚  failure: ... ⊒ Ref[@@β¦—Y⦘](Nat) βŠ† Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ color_next β‡’ Thk[0](γ€ˆ0; 0γ€‰βŒŠColorβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ColorβŒ‹) [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1308 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ Detailed errors for checking type of variable r: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force color_next β‡’ γ€ˆ0; 0γ€‰βŒŠColorβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ .. Variable r's type: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ Ref[@@β¦—Y⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ...does not check against type: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚  [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ .. Variable r's type: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ Ref[@@β¦—Y⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ...does not check against type: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚  [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ (force color_next) green β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1313 [INFO] [stdout] β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ColorβŒ‹ βŠ† βŸ…ColorβŸ† [INFO] [stdout] β”‚ β”‚ β”‚ Failed to check value Var, error: annotation mismatch [INFO] [stdout] β””αšœfungi_lang::examples::basic_existentials:51 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ ⌊ColorβŒ‹ βŠ† βŸ…ColorβŸ† [INFO] [stdout] β”‚ β”‚ β”‚ Failure term: Var("r")` [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:40 [INFO] [stdout] β”‚ β”‚ β”‚ Failed to check value Pair, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β”‚ β”‚ Failed to check value Pack, error: parameter 1 type mismatch  [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] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ } [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ Failed to check expression IfThenElse, error: parameter 2 type mismatch  [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [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:40 [INFO] [stdout] β”‚ ... β‡’ ? [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] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [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] β”‚ β”‚ β”‚ ... ⊒ (force color_next) gold β‡’ ? [INFO] [stdout] β”‚ β”‚ Failed to synth expression AnnoC, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ let foo = ... β‡’ Error: parameter 0 type mismatch in [INFO] [stdout] β”‚ ... β‡’ ? [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:40 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ force color_next β‡’ ? [INFO] [stdout] β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β””αšœfungi_lang::examples::basic_existentials:76 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ color_next β‡’ Thk[0](γ€ˆ0; 0γ€‰βŒŠColorβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ColorβŒ‹) [INFO] [stderr] stack backtrace: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force color_next β‡’ γ€ˆ0; 0γ€‰βŒŠColorβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ (force color_next) gold β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ColorβŒ‹ βŠ† βŸ…ColorβŸ† [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ ⌊ColorβŒ‹ βŠ† βŸ…ColorβŸ† [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638ce9072a - fungi_lang::examples::basic_write_effects::listing0::help::hb61421224d6f01e4 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638ce8cad1 - fungi_lang::examples::basic_write_effects::listing0::{{closure}}::hd436134710322241 [INFO] [stderr] at src/vis.rs:213 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ let gold_next = ... β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ let triple_next = ... β‡’ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ let triple_next = ... β‡’ γ€ˆ0; 0〉F ⌊ColorβŒ‹ ⨉ ⌊ColorβŒ‹ ⨉ ⌊ColorβŒ‹ in [INFO] [stdout] β”‚ ... β‡’ ? [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] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] 18: 0x55638d000cf1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h662eb1cbefa65349 [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] 19: 0x55638cfd2381 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::ha663eeaaea11a8b6 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] 20: 0x55638cdece40 - as core::ops::function::FnOnce<()>>::call_once::h3f1d16e2b67a8758 [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] 21: 0x55638cf64edd - std::panicking::try::do_call::hd74af4dd1bf297eb [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf62d17 - std::panicking::try::h9c2cf059bffc5ef2 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded4c1 - std::panic::catch_unwind::hca054adbd43ef82a [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfcfb6d - std::thread::Builder::spawn_unchecked::{{closure}}::ha84f41675165a7d5 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb22f8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hedbb3521f9cbe752 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] test examples::basic_hostobj::color::docolors ... FAILED [INFO] [stdout] test examples::basic_write_effects::listing0 ... FAILED [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_write_effects:67 [INFO] [stderr] stack backtrace: [INFO] [stdout] β”‚ let set = ... β‡’ ? [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [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] [stdout] [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_write_effects:51 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] β””αšœfungi_lang::examples::basic_hostobj::color::static_tests:55 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] β”‚ let set = ... β‡’ ? [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638ce955bf - fungi_lang::examples::basic_write_effects::listing0_fail0_check::help::h875a46e5fcb00ef3 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638ce91d51 - fungi_lang::examples::basic_write_effects::listing0_fail0_check::{{closure}}::hc7fdd131b2274909 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000bf1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h400cb9a218d3bf84 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2461 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hc21d7dd5637425d7 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdecee0 - as core::ops::function::FnOnce<()>>::call_once::h4d6bef23dd56de7a [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf6481d - std::panicking::try::do_call::h86da5c3979d0ed3d [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf639d7 - std::panicking::try::hea7513499c520c39 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded421 - std::panic::catch_unwind::haae834579f1659cc [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfcc72d - std::thread::Builder::spawn_unchecked::{{closure}}::h0eb050d174ea5a79 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1c28 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h3b3c3c97f673813a [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638d02c721 - fungi_lang::examples::basic_subtyping::listing1_check::help::ha0503ecb168513fe [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638d026a61 - fungi_lang::examples::basic_subtyping::listing1_check::{{closure}}::h3552b4ebbfcc00f3 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000df1 - std::sys_common::backtrace::__rust_begin_short_backtrace::ha0a930bae65e8e53 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd21e1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h1f0d66c72212f0c3 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdecf00 - as core::ops::function::FnOnce<()>>::call_once::h4fca04a823c83cd3 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf64ffd - std::panicking::try::do_call::hedb555b829f16225 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf63047 - std::panicking::try::hb9b5d20feeecfad5 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded241 - std::panic::catch_unwind::h33319b13607895c5 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfd16ed - std::thread::Builder::spawn_unchecked::{{closure}}::hd5d655db9b3441f7 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1d88 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h50af7982219ad5f7 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] stack backtrace: [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stdout] β”‚ β”‚ 𝞴n: Nm[X] [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:40 [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stderr] 16: 0x55638cfb6063 - fungi_lang::examples::basic_read_effects::listing0_ok::help::h72e2ee2ccd1a6c28 [INFO] [stdout] β”‚ β”‚ 𝞴n: Nm[X] [INFO] [stderr] at src/vis.rs:197 [INFO] [stdout] β”‚ β”‚ 𝞴x: Nat [INFO] [stderr] 17: 0x55638cfb2a21 - fungi_lang::examples::basic_read_effects::listing0_ok::{{closure}}::h7918dd50bc7c47bd [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stderr] at src/vis.rs:213 [INFO] [stdout] β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stderr] 18: 0x55638d000cd1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h5c49ca2feb079fdd [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd24a1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hde300444b803e83d [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cded000 - as core::ops::function::FnOnce<()>>::call_once::h81506d41966517ab [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf64a5d - std::panicking::try::do_call::haed09a7503d3396b [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf62387 - std::panicking::try::h658a5d612f2544e5 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded361 - std::panic::catch_unwind::h5b85a750c1c21634 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfcedad - std::thread::Builder::spawn_unchecked::{{closure}}::h7bd77b16e2407343 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1da8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h551b3af32d0e144f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stdout] β”‚ β”‚ β”‚ ref check rule: [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ x ⇐ Nat [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stdout] β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638d025187 - fungi_lang::examples::basic_subtyping::listing0_pair::help::h52a592b2806c6463 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638d01f6a1 - fungi_lang::examples::basic_subtyping::listing0_pair::{{closure}}::h8dc90df050b6c81c [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000bd1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h357ec906a12db582 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2361 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h9a62cf7aeebfc0c8 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cded080 - as core::ops::function::FnOnce<()>>::call_once::hccfb3848633dac08 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf6430d - std::panicking::try::do_call::h4fc3e2880a52f9f6 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf62277 - std::panicking::try::h652e687632669cf6 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded381 - std::panic::catch_unwind::h66f9d0295c08e252 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfccf6d - std::thread::Builder::spawn_unchecked::{{closure}}::h1d272690da272b16 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb2158 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hbb9845d6ab6efca9 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638cfc0262 - fungi_lang::examples::basic_read_effects::listing1_ok::help::hf579ef570fb8991a [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638cfbbe01 - fungi_lang::examples::basic_read_effects::listing1_ok::{{closure}}::hb4246381862b89f8 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000b71 - std::sys_common::backtrace::__rust_begin_short_backtrace::h2ee5ba700393da50 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2301 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h73d28337572d524a [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cded0a0 - as core::ops::function::FnOnce<()>>::call_once::hcdacf4e136be895f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf6454d - std::panicking::try::do_call::h6b7306ee2560f745 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf627c7 - std::panicking::try::h78a4dc327ab83812 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded3a1 - std::panic::catch_unwind::h802918a2dfd3bd52 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfcc9ed - std::thread::Builder::spawn_unchecked::{{closure}}::h0f2d6f747513a1ac [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1d68 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h4cdd785d9d095e28 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638cfba8ce - fungi_lang::examples::basic_read_effects::listing0_err::help::h5c209f9fafc73374 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638cfb7601 - fungi_lang::examples::basic_read_effects::listing0_err::{{closure}}::h95b95b838e061772 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000e91 - std::sys_common::backtrace::__rust_begin_short_backtrace::hdd8f2fb7f5b07a3b [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2181 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h135b54780923ff89 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cded120 - as core::ops::function::FnOnce<()>>::call_once::hef63fa1e56790bf3 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf63f1d - std::panicking::try::do_call::h02be11cc3869caa1 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf63487 - std::panicking::try::hcc3ff67ed9295bf2 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded261 - std::panic::catch_unwind::h3910f73689c7eaf8 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfd116d - std::thread::Builder::spawn_unchecked::{{closure}}::hd00be9fb208304ea [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1ba8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h26f92d65228d0265 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638ce9a51b - fungi_lang::examples::basic_write_effects::listing0_fail0_synth::help::ha0da033e5692edf8 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638ce96b71 - fungi_lang::examples::basic_write_effects::listing0_fail0_synth::{{closure}}::h14a15a1911808c61 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000db1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h9d692f6ef0a5466f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2221 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h25918424fad41e2d [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdecfe0 - as core::ops::function::FnOnce<()>>::call_once::h7eaf3fe6d57c5025 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf646fd - std::panicking::try::do_call::h823238d89a22e699 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf63d07 - std::panicking::try::hf5d227617e88bb1b [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded441 - std::panic::catch_unwind::hacd3c9b3b9e26b83 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfce82d - std::thread::Builder::spawn_unchecked::{{closure}}::h5fac4bbe67d89a8f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1cc8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h43ffca174238edde [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638d01df26 - fungi_lang::examples::basic_subtyping::listing0_one::help::h7612456a2e522dc4 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638d0191a1 - fungi_lang::examples::basic_subtyping::listing0_one::{{closure}}::h7df4d17eec359976 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000bb1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h34b4a164ebf1225d [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd24c1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hdeca0015a158407a [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdecea0 - as core::ops::function::FnOnce<()>>::call_once::h44848142a02272bd [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf641ed - std::panicking::try::do_call::h403f8c2861f25c2f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf61f47 - std::panicking::try::h361899619d2e6492 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded4a1 - std::panic::catch_unwind::hc838ce8ea4cf3410 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfd0ead - std::thread::Builder::spawn_unchecked::{{closure}}::hcc94eb3f7570955d [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ ref(n, x) ⇐ γ€ˆ@!(X); 0〉F Ref[X](Nat) [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb2118 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hab33270e09891b0c [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stderr] stack backtrace: [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] β”‚ β”‚ 𝞴x: Nat [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] β”‚ β”‚ let r = ref n x β‡’ ? [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [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] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638cf4557a - fungi_lang::examples::basic_existentials::listing0_ok::help::ha4ddc9f7fcdc2b3b [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638cf3f071 - fungi_lang::examples::basic_existentials::listing0_ok::{{closure}}::h278bee7acebe41f4 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000c71 - std::sys_common::backtrace::__rust_begin_short_backtrace::h5108248d336d949d [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2401 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::haebb6f75967dd1f6 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cded140 - as core::ops::function::FnOnce<()>>::call_once::hff25a300dd8d67b2 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf6511d - std::panicking::try::do_call::hffb188eb8b12c8d8 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf62c07 - std::panicking::try::h9765d24b4327fe70 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded341 - std::panic::catch_unwind::h592e8ca91e9130b7 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfcf8ad - std::thread::Builder::spawn_unchecked::{{closure}}::h9d8a825690b38b2f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1b08 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h110d95099202fa53 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638cf4df5a - fungi_lang::examples::basic_existentials::listing1_ok::help::h7e7a86af0167d785 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638cf46fb1 - fungi_lang::examples::basic_existentials::listing1_ok::{{closure}}::h6c465e43785d64fe [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000b11 - std::sys_common::backtrace::__rust_begin_short_backtrace::h17d9c8fc029ad07f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd23c1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::habcef7f8ab7ccfbd [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdecf40 - as core::ops::function::FnOnce<()>>::call_once::h642ed0e2ec617885 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf64c0d - std::panicking::try::do_call::hc6ce1930e1f20c0c [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf628d7 - std::panicking::try::h82f5ebeb5c637499 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded301 - std::panic::catch_unwind::h4a735491afd47c6f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfcccad - std::thread::Builder::spawn_unchecked::{{closure}}::h1b76a32ba7631f46 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1a48 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h08ba6624bc4a34af [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638d033f99 - fungi_lang::examples::basic_subtyping::listing2_synth::help::hc39508424a33eb11 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638d02e061 - fungi_lang::examples::basic_subtyping::listing2_synth::{{closure}}::h6438f906ccecacb3 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000b51 - std::sys_common::backtrace::__rust_begin_short_backtrace::h22fb4b257cee08d5 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd21a1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h14fa0e80c976e5ee [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdecf80 - as core::ops::function::FnOnce<()>>::call_once::h6c6beb6525d8ec32 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stderr] 21: 0x55638cf6403d - std::panicking::try::do_call::h251fcc5f447cace1 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf62167 - std::panicking::try::h4e350738baca6f99 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded1c1 - std::panic::catch_unwind::h14ea398076efea01 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfcf06d - std::thread::Builder::spawn_unchecked::{{closure}}::h82820da664ff4a5a [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1c08 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h33990241483a1acc [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stdout] β””αšœfungi_lang::examples::basic_write_effects:51 [INFO] [stderr] 16: 0x55638cf5664d - fungi_lang::examples::basic_existentials::listing1_err1::help::h3c9623a3fa6f3d6d [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638cf4fa81 - fungi_lang::examples::basic_existentials::listing1_err1::{{closure}}::hf36bcb5457ea194d [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000ed1 - std::sys_common::backtrace::__rust_begin_short_backtrace::he55699849fa8718a [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd22a1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h34422a9e4b4a0fd0 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdece60 - as core::ops::function::FnOnce<()>>::call_once::h44146693ca52c5f0 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf64c9d - std::panicking::try::do_call::hcc043621b31e703c [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf62f37 - std::panicking::try::hade1fc6b23276446 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded561 - std::panic::catch_unwind::hfcd61850ea9ab48e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfcfe2d - std::thread::Builder::spawn_unchecked::{{closure}}::hb4f18def347ad71c [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1ff8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h84f775ba3f735acb [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::' panicked at 'DisplayCould not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }>', ::src/vis.rsfmt:::249hb4bdb37c3c335733: [INFO] [stderr] 40 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638cf5ecdd - fungi_lang::examples::basic_existentials::listing1_err2::help::hafd116f3d1dbeeb4 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638cf58111 - fungi_lang::examples::basic_existentials::listing1_err2::{{closure}}::h59165384220f4f23 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000d31 - std::sys_common::backtrace::__rust_begin_short_backtrace::h79eeeeafd07bfe0c [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2501 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hef80970c5e4e57b5 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdecfa0 - as core::ops::function::FnOnce<()>>::call_once::h6fd0ff84d2ce9e1f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf649cd - std::panicking::try::do_call::hab2618d957f52758 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf63157 - std::panicking::try::hbbbd10fdaff46139 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded1e1 - std::panic::catch_unwind::h1a4beee2625ac3a9 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfd0bed - std::thread::Builder::spawn_unchecked::{{closure}}::hc5797756a204a656 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb2138 - core::ops::function::FnOnce::call_once{{vtable.shim}}::haf2fe5eb1feb6faf [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stdout] test examples::basic_write_effects::listing0_fail0_check ... FAILED [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stderr] stack backtrace: [INFO] [stdout] test examples::basic_subtyping::listing1_check ... FAILED [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_write_effects:84 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638ce8b53d - fungi_lang::examples::basic_hostobj::color::static_tests::typing::help::h0710dcd55fd00aa7 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638ce88281 - fungi_lang::examples::basic_hostobj::color::static_tests::typing::{{closure}}::hfa93f0acfdc39a08 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000c51 - std::sys_common::backtrace::__rust_begin_short_backtrace::h48178dea1f6f0df8 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd23e1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hacab8b9b777df740 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdecec0 - as core::ops::function::FnOnce<()>>::call_once::h486e3f1ebc9825b0 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf64f6d - std::panicking::try::do_call::he4e61efd9119f685 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf63ae7 - std::panicking::try::heb5a8504e5d874b0 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded401 - std::panic::catch_unwind::ha9556e6352aa549a [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfd092d - std::thread::Builder::spawn_unchecked::{{closure}}::hc07259fd14640cd5 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ x β‡’ Nat [INFO] [stderr] 26: 0x55638ccb1f98 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h7f3172e70eb74b81 [INFO] [stdout] test examples::basic_subtyping::listing0_pair ... FAILED [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stdout] test examples::basic_read_effects::listing0_ok ... FAILED [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(n, x) β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] test examples::basic_read_effects::listing1_ok ... FAILED [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] β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] test examples::basic_read_effects::listing0_err ... FAILED [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::list_nat:258 [INFO] [stdout] test examples::basic_subtyping::listing0_one ... FAILED [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638ce9f6c5 - fungi_lang::examples::basic_write_effects::listing0_fail1_check::help::h94ef5e41fbab85fa [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638ce9baf1 - fungi_lang::examples::basic_write_effects::listing0_fail1_check::{{closure}}::hf3acaf45bd962d99 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000d71 - std::sys_common::backtrace::__rust_begin_short_backtrace::h87e63af467e085bd [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2481 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hc4c462ad1d6b86ed [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdece80 - as core::ops::function::FnOnce<()>>::call_once::h4456618575566f22 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] test examples::basic_existentials::listing1_ok ... FAILED [INFO] [stderr] 21: 0x55638cf6415d - std::panicking::try::do_call::h3d2f86c689004a54 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf63597 - std::panicking::try::he1d0e371c6ea5284 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded161 - std::panic::catch_unwind::h070536693185676f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfd1c6d - std::thread::Builder::spawn_unchecked::{{closure}}::hef9f7b4f1d3c4afa [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1a88 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h0a2ed44733ae12db [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] test examples::basic_hostobj::color::static_tests::typing ... FAILED [INFO] [stdout] test examples::basic_existentials::listing0_ok ... FAILED [INFO] [stdout] test examples::basic_subtyping::listing2_synth ... FAILED [INFO] [stdout] β”‚ let set = ... β‡’ ? [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] test examples::basic_existentials::listing1_err1 ... FAILED [INFO] [stdout] test examples::basic_existentials::listing1_err2 ... FAILED [INFO] [stdout] test examples::basic_write_effects::listing0_fail1_check ... FAILED [INFO] [stdout] test examples::basic_write_effects::listing0_fail0_synth ... FAILED [INFO] [stdout] β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_write_effects:101 [INFO] [stdout] β”Œαšœfungi_lang::examples::basic_write_scope:2 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::nat::static_tests:75 [INFO] [stdout] β”Œαšœfungi_lang::examples::ref_edit::static_tests:36 [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Ref[@@β¦—X⦘](Nat) βŠ† Ref[X](Nat) [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] [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] β”‚ β”‚ 𝞴n: Nm[X] [INFO] [stdout] β”Œαšœfungi_lang::examples::name::static_tests:55 [INFO] [stdout] β”‚ β”‚ 𝞴x: Nat [INFO] [stdout] β”‚ open crate::examples::nat [INFO] [stdout] β”‚ let cons = ... β‡’ ? [INFO] [stdout] [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”Œαšœfungi_lang::examples::pure_list_nat::static_tests:138 [INFO] [stdout] β”‚ mod fungi_lang::examples::nat { [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::list_nat::static_tests:155 [INFO] [stdout] β”‚ β”‚ let r = ref n x β‡’ ? [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚  failure: ... ⊒ Ref[@@β¦—X⦘](Nat) βŠ† Ref[X](Nat) [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:1308 [INFO] [stdout] β”‚ β”‚ β”‚ Detailed errors for checking type of variable r: [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] β”‚ β”‚ β”‚ .. 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] β”‚ β”‚ β””αšœfungi_lang::bitype:1313 [INFO] [stdout] β”‚ β”‚ Failed to check value Var, error: annotation mismatch [INFO] [stdout] β”‚ β”‚ Failure term: Var("r")` [INFO] [stdout] β”‚ open crate::examples::list_nat [INFO] [stdout] β”‚ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ mod fungi_lang::examples::list_nat { [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ x β‡’ Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(n, x) β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) [INFO] [stdout] β”‚ β”‚ Failed to check expression Ret, error: check fail for type Ref(Var("X"), Prim(Nat))` [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β”‚ let r = ref n x β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ@!(X); 0〉F Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ βˆ€X1: NmSet [INFO] [stdout] β”‚ β•‘ open crate::examples::op_nat [INFO] [stdout] β”‚ β”‚ βˆ€X2: NmSet [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ mod fungi_lang::examples::op_nat { [INFO] [stdout] β”‚ β”‚ βˆ€Y1: NmSet [INFO] [stdout] β”‚ β•‘ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ let set = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ βˆ€Y2: NmSet [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ 𝞴n: Nm[X1] [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::op_nat::static_tests:100 [INFO] [stdout] β”‚ let foo = ... β‡’ ? [INFO] [stdout] test examples::pure_list_nat::dynamic_tests::reduction ... FAILED [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ open crate::examples::ref_edit [INFO] [stdout] β”‚ open crate::examples::pure_list_nat [INFO] [stdout] β”‚ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ mod fungi_lang::examples::ref_edit { [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β•‘ β•‘ open crate::examples::nat [INFO] [stdout] β”‚ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ mod fungi_lang::examples::pure_list_nat { [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β”‚ 𝞴h: Nat [INFO] [stdout] β”‚ β•‘ β•‘ mod fungi_lang::examples::nat { [INFO] [stdout] β”‚ β•‘ β•‘ β•“αšœfungi_lang::bitype:1720 [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] [stdout] β”‚ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::list_nat_dedup::static_tests:113 [INFO] [stdout] β”‚ β•‘ type List : ? := (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β”‚ 𝞴t: Ref[Y1](⌊ListβŒ‹[X2][Y2]) [INFO] [stdout] β”‚ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œ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:1645 [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] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [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:1645 [INFO] [stdout] β”‚ open crate::examples::op_nat [INFO] [stdout] β”‚ open crate::examples::name [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] β”‚ mod fungi_lang::examples::name { [INFO] [stdout] β”‚ open crate::examples::list_nat_dedup [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] [INFO] [stdout] β”‚ β”‚ Failed to synth expression AnnoC, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ mod fungi_lang::examples::list_nat_dedup { [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] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”Œαšœfungi_lang::examples::seq_filter:2 [INFO] [stdout] β”‚ β”‚ 𝞴n: Nm[X] [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [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] β”‚ let set = ... β‡’ Error: parameter 0 type mismatch in [INFO] [stdout] β”‚ ... β‡’ ? [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] β”‚ β”‚ 𝞴x: Nat [INFO] [stdout] β”‚ mod fungi_lang::examples::op_nat { [INFO] [stdout] β”‚ β•‘ type RefList : ? := βˆ€X:NmSet.βˆ€Y:NmSet.Ref[Y](⌊ListβŒ‹[X][Y]) [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β•‘ expand_type: undefined type identifer: A [INFO] [stdout] β”‚ β•‘ expand_type: undefined type identifer: Ref [INFO] [stdout] β”‚ β•‘ expand_type: undefined type identifer: A [INFO] [stdout] β”‚ β•‘ fn name_of_nat : Thk[0](βˆ€X:NmSet|⊀.γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Nm[X]) := ... [INFO] [stdout] β”‚ β•‘ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ expand_type: undefined type identifer: A [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ } [fungi_lang::examples::ref_edit: ?/? ok items] [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:1658 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β””αšœfungi_lang::examples::ref_edit::static_tests:36 [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:40 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [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:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X: NmSet [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638d00a3f3 - fungi_lang::examples::ref_edit::static_tests::typing::help::hd88c711e9b96cd66 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638d008121 - fungi_lang::examples::ref_edit::static_tests::typing::{{closure}}::hbd89926558a2a4da [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000d11 - std::sys_common::backtrace::__rust_begin_short_backtrace::h76223b5c2640713b [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd24e1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::he3da044b3f015c43 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdecf20 - as core::ops::function::FnOnce<()>>::call_once::h606dcc245b7eaddf [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] β”‚ β”‚ let r = ref n x β‡’ ? [INFO] [stderr] 21: 0x55638cf645dd - std::panicking::try::do_call::h6bda9ca8910a9df7 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf61c17 - std::panicking::try::h039c1ad6aaa3d7f1 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded281 - std::panic::catch_unwind::h3aab0d31de55f4d9 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfd00ed - std::thread::Builder::spawn_unchecked::{{closure}}::hb5f1224efefeabd8 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1ca8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h41d1c99c18c6721f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴l: ⌊ListβŒ‹[X][Y] [INFO] [stdout] β”‚ β”‚ β”‚ ws 𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)) [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2317 [INFO] [stdout] β”‚ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•‘ open crate::examples::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:40 [INFO] [stdout] β””αšœfungi_lang::examples::basic_write_effects:67 [INFO] [stderr] stack backtrace: [INFO] [stdout] β”‚ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] β”‚ β•‘ mod fungi_lang::examples::nat { [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] test examples::ref_edit::static_tests::typing ... FAILED [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] β”‚ β•‘ β•“αšœfungi_lang::bitype:1720 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] β”‚ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] β”‚ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴n: Nat [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] β”‚ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) := ... [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638cea49f1 - fungi_lang::examples::basic_write_effects::listing0_fail1_synth::help::h796b882d4745b58b [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638cea0ce1 - fungi_lang::examples::basic_write_effects::listing0_fail1_synth::{{closure}}::hdde778268a2a1fee [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000d51 - std::sys_common::backtrace::__rust_begin_short_backtrace::h862fbf6efbdbdc32 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2441 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hbd11ddbb809413f9 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdecde0 - as core::ops::function::FnOnce<()>>::call_once::h24d96801e14b32c9 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf6466d - std::panicking::try::do_call::h6e321268049572fb [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf63bf7 - std::panicking::try::hf2e158015df33468 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded321 - std::panic::catch_unwind::h4dc4771a6f84d017 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfcd7ad - std::thread::Builder::spawn_unchecked::{{closure}}::h32b7e6fc2b2ddbb4 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb19e8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h06a1c768ed7da818 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ type Lev : ? := Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ x β‡’ Nat [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] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ fn nil : Thk[0](γ€ˆ0; 0〉F β€œList”) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(n, x) β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] test examples::basic_write_effects::listing0_fail1_synth ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [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::bitype:1681 [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [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] [stdout] β”‚ β•‘ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) := ... [INFO] [stdout] β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [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:1944 [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [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] β”‚ β•‘ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴h: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ ? [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] β”‚ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β•‘ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ 𝞴n: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [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:1681 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ } [fungi_lang::examples::name: ?/? ok items] [INFO] [stdout] β”‚ idxtm Seq_SR : Nm β†’ NmSet := 𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2} [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stdout] [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ x ⇐ Nat [INFO] [stdout] β”Œαšœfungi_lang::examples::seq_nat::static_tests:38 [INFO] [stdout] β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ ... ⊒ ref(n, x) ⇐ γ€ˆ0; 0〉F Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_is_odd β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”Œαšœfungi_lang::examples::seq_max:2 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ γ€ˆ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:1916 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ 𝞴xo: ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β”‚ 𝞴yo: ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ case xo of ... [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴n: Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β•‘ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ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] β”‚ β•‘ β”‚ β”‚ β””αšœ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] β””αšœfungi_lang::examples::name::static_tests:55 [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [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:40 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638cff7c93 - fungi_lang::examples::name::static_tests::typing::help::h27661541aaabafad [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638cff59c1 - fungi_lang::examples::name::static_tests::typing::{{closure}}::h5b6c6383f0bb0c9b [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000ef1 - std::sys_common::backtrace::__rust_begin_short_backtrace::hed27184f9134b3f6 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2321 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h7b528dd0192b0bc1 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdecd80 - as core::ops::function::FnOnce<()>>::call_once::h0ccd2d0a1a782965 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf640cd - std::panicking::try::do_call::h390982dc92348f6f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf63e17 - std::panicking::try::hf6e1ca59f58bbbf0 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded501 - std::panic::catch_unwind::hed8428af5045c0cf [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfd066d - std::thread::Builder::spawn_unchecked::{{closure}}::hb84320ba64784f56 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1f58 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6d2ae44ed44ae30d [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ name @1 β‡’ Nm[{@1}] [INFO] [stdout] β””αšœfungi_lang::examples::basic_write_effects:84 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ret 111 β‡’ γ€ˆ0; 0〉F 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:40 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [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] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638cea9e55 - fungi_lang::examples::basic_write_effects::listing0_fail2_check::help::hb4cd6eaf734a5146 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638cea6031 - fungi_lang::examples::basic_write_effects::listing0_fail2_check::{{closure}}::hbf08cca3aac1f295 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000c91 - std::sys_common::backtrace::__rust_begin_short_backtrace::h55580f3082f17f65 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2421 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hbb885b510222cd83 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdece00 - as core::ops::function::FnOnce<()>>::call_once::h2fbca1752e1a653e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf6478d - std::panicking::try::do_call::h829bfc645f919a37 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf626b7 - std::panicking::try::h76d72babab916dac [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded201 - std::panic::catch_unwind::h27e8e7f23565d1bb [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfd03ad - std::thread::Builder::spawn_unchecked::{{closure}}::hb78c154a15e5f40c [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1f78 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h7f08eb74c0da763c [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stdout] β”‚ β•‘ β”‚ subcase _u : Unit [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] test examples::name::static_tests::typing ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] test examples::basic_write_effects::listing0_fail2_check ... FAILED [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] β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β”‚ subcase x : Nat [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [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:1876 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ ? [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] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœ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] test examples::list_nat::dynamic_tests::short ... FAILED [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] β”‚ β”‚ let r2 = ref n x β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::trie_nat::static_tests:176 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ ? [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] β”‚ idxtm WS_Seq_SR : NmSet β†’ NmSet := 𝞴x:NmSet.@!(Seq_SRβ¦—x⦘) [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ case yo of ... [INFO] [stdout] β”‚ open crate::examples::seq_nat [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴n: Nat [INFO] [stdout] [INFO] [stdout] β”Œαšœfungi_lang::examples::seq_nat_gen::static_tests:32 [INFO] [stdout] β”‚ open crate::examples::trie_nat [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ mod fungi_lang::examples::trie_nat { [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_zero) n β‡’ ? [INFO] [stdout] β”‚ mod fungi_lang::examples::seq_nat { [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_is_odd β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ exists X1 : NmSet [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [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:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ idxtm WS_Seq_SR1 : NmSet β†’ NmSet := 𝞴x:NmSet.@!(xβˆ™{@1}) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ open crate::examples::seq_nat_gen [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ idxtm WS_Seq_SR2 : NmSet β†’ NmSet := 𝞴x:NmSet.@!(xβˆ™{@2}) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_keyword_sugar β‡’ Thk[(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘](γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ exists X2 : NmSet [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ prop X1 βŠ₯ X2 ≑ X : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_zero) n β‡’ ? [INFO] [stdout] β”‚ β”‚  success: ... ⊒ Nm[X1] βŠ† Nm[X1] [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] β”‚ 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:2212 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let m = n + 1 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘; 0〉 then γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ ≑ ? [INFO] [stdout] β”‚ mod fungi_lang::examples::seq_nat_gen { [INFO] [stdout] β”‚ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ open crate::examples::seq_nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ x β‡’ Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_zero β‡’ ? [INFO] [stdout] β”‚ β”‚ 𝞴opnat: ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ mod fungi_lang::examples::seq_nat { [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:1720 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ref(n, x) β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1841 [INFO] [stdout] β”‚ β”‚ β”‚ subcase y : Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ 𝞴pred: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ case opnat of ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let sugar_if_scrutinee = x < 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:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let m = n + 1 β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_is_zero β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β”‚ let r2 = ref n x β‡’ γ€ˆ@@β¦—X⦘; 0〉F Ref[@@β¦—X⦘](Nat) in [INFO] [stdout] β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F Ref[@!(X)](Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [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] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ type Lev : ? := Nat [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_zero β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [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] β”‚ β•‘ type RefSeq : ? := βˆ€X:NmSet.βˆ€Y:NmSet.Ref[Y](⌊SeqβŒ‹[X][Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_zero) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ } [fungi_lang::examples::seq_nat: ?/? ok items] [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] β”‚ β•‘ 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] β”‚ β•‘ idxtm Gte : Nm β†’ NmSet := 𝞴x:Nm.Succ*β¦—{x}⦘ [INFO] [stdout] β”‚ β•‘ idxtm Nat : NmSet := Gte(β–²) [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ type Lev : ? := Nat [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let sugar_if_scrutinee = x < y β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ if sugar_if_scrutinee { [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:2727 [INFO] [stdout] β”‚ β•‘ β•‘ type RefSeq : ? := βˆ€X:NmSet.βˆ€Y:NmSet.Ref[Y](⌊SeqβŒ‹[X][Y]) [INFO] [stdout] β”‚ β•‘ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ } [fungi_lang::examples::seq_nat: ?/? ok items] [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β”‚ subcase n : Nat [INFO] [stdout] β”‚ β•‘ open crate::examples::name [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ mod fungi_lang::examples::name { [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•“αšœfungi_lang::bitype:1720 [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] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β””αšœfungi_lang::examples::seq_nat::static_tests:38 [INFO] [stdout] β”‚ β”‚ β”‚ let sugar_if_scrutinee = (force pred) n β‡’ ? [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] β”‚ β”‚ β”‚ β”Œαšœ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:40 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638d014773 - fungi_lang::examples::seq_nat::static_tests::typing::help::haa794f7a126fbcf7 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638d0124a1 - fungi_lang::examples::seq_nat::static_tests::typing::{{closure}}::h7ae15ad7b4f74457 [INFO] [stderr] at src/vis.rs:213 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stderr] 18: 0x55638d000c11 - std::sys_common::backtrace::__rust_begin_short_backtrace::h405749176052d288 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd21c1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h1620ec48a9077a47 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cded100 - as core::ops::function::FnOnce<()>>::call_once::heb6caa9010bcafe5 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf648ad - std::panicking::try::do_call::h953672140f0c0cfe [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf61d27 - std::panicking::try::h1538ed088295f17c [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded541 - std::panic::catch_unwind::hf807c7970d0f8831 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfce56d - std::thread::Builder::spawn_unchecked::{{closure}}::h5cba03a8776b94db [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1b88 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h21d2b28a02c78e8e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let m = n + 1 β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [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] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] test examples::seq_nat::static_tests::typing ... FAILED [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] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force pred) n β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β”‚ failure: ... ⊬ γ€ˆ0; 0〉 - γ€ˆ@@β¦—X⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_zero) n β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ fn name_of_nat : Thk[0](βˆ€X:NmSet|⊀.γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Nm[X]) [Check OK] [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ let m = n + 1 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ split let_split_sugar a1. b1. ... [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] test shared::list_example::test_elim_forms ... ok [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ var a1 : Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@1}⦘](Nat) [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:1658 [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] β”‚ β•‘ open crate::examples::nat [INFO] [stdout] β”‚ β•‘ mod fungi_lang::examples::nat { [INFO] [stdout] β”‚ β•‘ β•“αšœfungi_lang::bitype:1720 [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] test shared::list_example::test_intro_forms ... ok [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ var b1 : Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [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:2731 [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_is_zero : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β”‚ Failure term: Let("r2", Ref(Var("n"), Var("x")), Ret(Var("r2")))` [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_is_odd : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) := ... [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ let m = n + 1 β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_sub : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œNat”) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ name @2 β‡’ Nm[{@2}] [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ret 222 β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1681 [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] β”‚ β•‘ β•‘ β•‘ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force pred β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let m = n + 1 β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ idxtm Ins : NmSet β†’ NmSet := 𝞴X:NmSet.Xβˆ™Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [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] β”‚ β•‘ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴n: Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ pred β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] test shared::list_example::test_serde ... ok [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ } [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] test examples::list_nat::dynamic_tests::long ... FAILED [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force pred β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ force nil β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ } [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ split let_split_sugar x. sugar_split_snd. ... [INFO] [stdout] β”‚ β•‘ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ βœ” [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] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force pred) n β‡’ γ€ˆ0; 0〉F Bool [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] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ split sugar_split_snd y. ys. ... [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var y : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [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] β”‚ β•‘ β”‚ β”‚ 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] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ nil β‡’ Thk[0](γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nil β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ β•‘ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β”‚ Failed to synth expression AnnoC, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ } [fungi_lang::examples::nat: ?/? ok items] [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ } else { [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:2092 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ let set = ... β‡’ Error: parameter 0 type mismatch in [INFO] [stdout] β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β””αšœfungi_lang::examples::list_nat:258 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ β•‘ } [fungi_lang::examples::nat: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β•‘ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ idxtm WS_Trie : NmSet β†’ NmSet := 𝞴X:NmSet.@!(Ins(X)) [INFO] [stdout] β”‚ β•‘ β•‘ type Op2Nat : ? := (Unit οΌ‹ Nat ⨉ Nat) [INFO] [stdout] β”‚ β•‘ idxtm Out_Dedup : NmSet β†’ NmSet := 𝞴X:NmSet.{@@r}βˆ™X [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: ... ⊒ γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) [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] β”‚ β•‘ β”‚ β”‚ β”‚ let app_get_sugar_ys = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_keyword_sugar β‡’ Thk[(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘](γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [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] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:40 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stderr] stack backtrace: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_is_odd β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let m = ((force nat_sub) n) 1 β‡’ ? [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:40 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [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:40 [INFO] [stdout] β””αšœfungi_lang::examples::nat::static_tests:75 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β””αšœfungi_lang::examples::basic_write_effects:101 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force nat_sub) n) 1 β‡’ ? [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ } [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [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:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stderr] 16: 0x55638cdeb034 - fungi_lang::examples::list_nat::listing1::help::hfc147ea6f7c5d68f [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638cde13f1 - fungi_lang::examples::list_nat::listing1::{{closure}}::hdf522998a4d5621d [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000e11 - std::sys_common::backtrace::__rust_begin_short_backtrace::ha8291fa764653a03 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2161 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h091f940cd55f33f5 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdecdc0 - as core::ops::function::FnOnce<()>>::call_once::h14337ee78ce451af [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf64e4d - std::panicking::try::do_call::hd71030a496b12089 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf61e37 - std::panicking::try::h2a540163448be4f8 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded2c1 - std::panic::catch_unwind::h4585f90fedbdfa2c [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] 25: 0x55638cfd19ad - std::thread::Builder::spawn_unchecked::{{closure}}::hda724cbb0eb8c227 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb20b8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::ha55f29820c792031 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638cfb1673 - fungi_lang::examples::nat::static_tests::typing::help::h2ffc0d76f57f2447 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638cfaf3a1 - fungi_lang::examples::nat::static_tests::typing::{{closure}}::ha32f644ae0669ccf [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000eb1 - std::sys_common::backtrace::__rust_begin_short_backtrace::hdea61428f7d7fa55 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2141 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h06a8662abd0c3174 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdecf60 - as core::ops::function::FnOnce<()>>::call_once::h6a758196298a424e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf6508d - std::panicking::try::do_call::hf88ab744f861b6a7 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf625a7 - std::panicking::try::h6a0a8db09c07d085 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded4e1 - std::panic::catch_unwind::hdeb4681f594cd7d6 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfcf5ed - std::thread::Builder::spawn_unchecked::{{closure}}::h996aab04463be22b [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb2218 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hd7ca41c0ccdd7e9c [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638ceaf411 - fungi_lang::examples::basic_write_effects::listing0_fail2_synth::help::hd6c5df08e71481ec [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638ceab4b1 - fungi_lang::examples::basic_write_effects::listing0_fail2_synth::{{closure}}::h8b4e2923bdb95830 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000e71 - std::sys_common::backtrace::__rust_begin_short_backtrace::hcf1bea81e4398cf9 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2201 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h207db3bd538e4f8f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cded020 - as core::ops::function::FnOnce<()>>::call_once::hbb0cc36998425699 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stderr] 21: 0x55638cf64b7d - std::panicking::try::do_call::hc61748ccc744c257 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf638c7 - std::panicking::try::hea51cb4198c74111 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded521 - std::panic::catch_unwind::hf1fe3b1fab2790dd [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfcf32d - std::thread::Builder::spawn_unchecked::{{closure}}::h91af8a4ea88413f8 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1f38 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6d0d5400d7faf22e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] test examples::list_nat::listing1 ... FAILED [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴xyo: ⌊Op2NatβŒ‹ [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] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] test examples::basic_write_effects::listing0_fail2_synth ... FAILED [INFO] [stdout] β”‚ β”‚ β”‚ if sugar_if_scrutinee { [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ βœ” [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:2727 [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] β”‚ fn opnat_max : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ type Lev : ? := Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ case xyo of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force nat_sub) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] test examples::nat::static_tests::typing ... FAILED [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force list_len[X2][Y]) app_get_sugar_ys β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ idxtm WS_Dedup : NmSet β†’ NmSet := 𝞴X:NmSet.WS_Trie(X) βŠ₯ {@@dd}βˆ™X βŠ₯ Out_Dedup(X) [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] β”‚ β•‘ fn nat_hash_bit : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force list_len[X2][Y] β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_sub β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ } [fungi_lang::examples::nat: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let m = n + 1 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ fn nat_hash_bit : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force list_len[X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ fn nat_print : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force list_len β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [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] β”‚ β•‘ fn nat_print : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ split let_split_sugar a2. b2. ... [INFO] [stdout] β”‚ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ fn nat_print2 : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_sub β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ var a2 : Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@666βˆ™x(_a)))β¦—{@2}⦘](Nat) [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ var b2 : Nat [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ fn nat_print2 : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_sub β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat [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] β”‚ β•‘ fn print_found_duplicate : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ type OpNat : ? := (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ fn is_empty : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œSeq”[X][Y] β†’ γ€ˆ0; Y〉F β€œBool”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:1681 [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] β”‚ idxtm Seq_SR : Nm β†’ NmSet := 𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2} [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ subcase xy : Nat ⨉ Nat [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] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ fn print_found_duplicate : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) [Check OK] [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let let_split_sugar = ret xy β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [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] β”‚ β•‘ type Op2Nat : ? := (Unit οΌ‹ Nat ⨉ Nat) [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ fn opnat_split : Thk[0](γ€ˆ0; 0γ€‰β€œOp2Nat” β†’ γ€ˆ0; 0〉F β€œOpNat” ⨉ β€œOpNat”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ list_len β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F Nat) [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force nat_sub) n β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2320 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ 𝞴seq: ⌊SeqβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force list_len β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let m = n + 1 β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let let_split_sugar = ret xy β‡’ γ€ˆ0; 0〉F Nat ⨉ Nat in [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ ⨉ ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [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] β”‚ β•‘ β”‚ 𝞴xyo: ⌊Op2NatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ idxtm WS_Seq_SR : NmSet β†’ NmSet := 𝞴x:NmSet.@!(Seq_SRβ¦—x⦘) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: ⌊RefTrieβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] test examples::seq_nat_dfs::dynamic_tests::short ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ case xyo of ... [INFO] [stdout] β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ let max = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ let emp = ref 0 roll inj1 () : F β€œRefTrie”[0][0] β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force list_len[X2] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y] β†’ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ subcase on : (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ split let_split_sugar x. y. ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ var x : Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force list_len[X2][Y] β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y] β†’ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force nat_sub) n) 1 β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ var y : Nat [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ case on of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ 𝞴seq: ⌊SeqβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force list_len[X2][Y]) app_get_sugar_ys β‡’ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let m = ((force nat_sub) n) 1 β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ subcase xy : Nat ⨉ Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let let_split_sugar = ret xy β‡’ ? [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] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let l = (force gen) m β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ subcase _n : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [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] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ } [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: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ subcase on : (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [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; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ βœ” [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force gen) m β‡’ ? [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [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] β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 then γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force gen β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 then γ€ˆ0; Y〉 ≑ γ€ˆ0; Y βˆͺ Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ let tt = get t β‡’ ? [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] β”‚ β”‚ β”‚ decide if: ... ⊒ (Unit οΌ‹ Nat) βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ (Unit οΌ‹ Nat) βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [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:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•™αšœfungi_lang::bitype:1722 [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] β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ } [fungi_lang::examples::nat: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y βˆͺ Y〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ fn is_empty : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œSeq”[X][Y] β†’ γ€ˆ0; Y〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [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] β”‚ β•‘ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β•‘ fn opnat_split : Thk[0](γ€ˆ0; 0γ€‰β€œOp2Nat” β†’ γ€ˆ0; 0〉F β€œOpNat” ⨉ β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ ws 𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)) [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] β”‚ β•‘ β”‚ β”‚ split let_split_sugar x. y. ... [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ t β‡’ ⌊RefTrieβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β•‘ fn opnat_pair : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” ⨉ β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOp2Nat”) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2317 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ let filter = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ failure: ... ⊬ γ€ˆ0; Y〉 - γ€ˆ0; Y βˆͺ Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var x : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ gen β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y1: NmSet [INFO] [stdout] β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var y : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to check expression Let, error: effect error: CannotDecideReadSubset(SubsetSearchFailureMisc("Subcase-1")) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [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] β”‚ β•‘ β•‘ β”‚ 𝞴xoyo: ⌊OpNatβŒ‹ ⨉ ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X1: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ exists X1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Let("lenys", Let("app_get_sugar_ys", Get(Var("ys")), App(IdxApp(IdxApp(Force(Var ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force gen β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ let let_split_sugar = ret xoyo β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y2: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to check expression Split, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to check expression Split, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴n: Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ exists X2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [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:1917 [INFO] [stdout] β”‚ β”‚ 𝞴seq: ⌊SeqβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_zero) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ let let_split_sugar = ret xoyo β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ ⨉ ⌊OpNatβŒ‹ in [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊Op2NatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force gen) m β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to check expression Unpack, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β”‚ 𝞴f: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_zero) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ exists X3 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to check expression Unpack, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ prop X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet true [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check expression Case, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ fn opnat_split : Thk[0](γ€ˆ0; 0γ€‰β€œOp2Nat” β†’ γ€ˆ0; 0〉F β€œOpNat” ⨉ β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ name @1 β‡’ Nm[{@1}] [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check expression Unroll, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ fn opnat_pair : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” ⨉ β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOp2Nat”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let l = (force gen) m β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ret 111 β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ split let_split_sugar xo. yo. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴xoyo: ⌊OpNatβŒ‹ ⨉ ⌊OpNatβŒ‹ [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] β”‚ β•‘ β”‚ let let_split_sugar = ret xoyo β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check expression Fix, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ var xo : ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ var yo : ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_zero β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ case xo of ... [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] β”‚ β”‚ β”‚ exists Y1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) m) l β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ let let_split_sugar = ret xoyo β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ ⨉ ⌊OpNatβŒ‹ in [INFO] [stdout] β”‚ β•‘ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊Op2NatβŒ‹ [INFO] [stdout] β”‚ β”‚ subcase on : (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ fn list_len : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œList”[X][Y] β†’ γ€ˆ0; Y〉F β€œNat”) [Check error] [INFO] [stdout] β”‚ β”‚ β”‚ exists Y2 : NmSet [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ subcase _emp : Unit [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) m β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [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] β”‚ β”‚ β”‚ let on = ((force opnat_filter_nat) on) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ type RefTrie : ? := βˆ€X:NmSet.βˆ€Y:NmSet.Ref[Y](⌊TrieβŒ‹[X][Y]) [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] β”‚ β”‚ β”‚ exists Y3 : NmSet [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ subcase x : Nat [INFO] [stdout] β”‚ β•‘ β”‚ split let_split_sugar xo. yo. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ nmtm Zero : Nm := β–² [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ var xo : ⌊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] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force opnat_filter_nat) on) f β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β”‚ β”‚ exists Y4 : NmSet [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ case yo of ... [INFO] [stdout] β”‚ β•‘ idxtm Succ : Nm β†’ NmSet := 𝞴x:Nm.{β–²βˆ™x} [INFO] [stdout] β”‚ β•‘ β”‚ var yo : ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ prop Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet true [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_keyword_sugar β‡’ Thk[(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘](γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_is_zero β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ case xo of ... [INFO] [stdout] β”‚ β”‚ β”‚ let let_split_sugar = ret bin β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ idxtm Gte : Nm β†’ NmSet := 𝞴x:Nm.Succ*β¦—{x}⦘ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force opnat_filter_nat) on β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [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:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_zero β‡’ γ€ˆ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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ idxtm Nat : NmSet := Gte(β–²) [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force opnat_filter_nat β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ cons β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ subcase y : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ idxtm Ins : NmSet β†’ NmSet := 𝞴X:NmSet.Xβˆ™Nat [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ subcase x : Nat [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] β”‚ β•‘ β”‚ β”‚  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 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_zero) n β‡’ γ€ˆ0; 0〉F Bool [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] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ case yo of ... [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] β”‚ β”‚ β”‚ split let_split_sugar n. sugar_split_snd. ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† 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] β”‚ β•‘ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ split let_split_sugar a1. b1. ... [INFO] [stdout] β”‚ β”‚ β”‚ var n : Nm[X1] [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ var a1 : Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@1}⦘](Nat) [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] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ var b1 : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) m β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ idxtm WS_Trie : NmSet β†’ NmSet := 𝞴X:NmSet.@!(Ins(X)) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [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] β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ split sugar_split_snd lev. sugar_split_snd. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase y : Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ idxtm Out_Dedup : NmSet β†’ NmSet := 𝞴X:NmSet.{@@r}βˆ™X [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ var lev : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [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] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [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:1917 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force opnat_filter_nat) on β‡’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ case sugar_match_snd of ... [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ idxtm WS_Dedup : NmSet β†’ NmSet := 𝞴X:NmSet.WS_Trie(X) βŠ₯ {@@dd}βˆ™X βŠ₯ Out_Dedup(X) [INFO] [stdout] β”‚ β”‚ β”‚ split sugar_split_snd l. r. ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (Unit οΌ‹ Nat) βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase leaf : Nm[X] ⨉ Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β•‘ fn nat_hash_bit : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) := ... [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (Unit οΌ‹ Nat) βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β•‘ fn opnat_pair : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” ⨉ β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOp2Nat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) m) l β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [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] β”‚ β•‘ β•‘ 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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ fn nat_hash_bit : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œBool”) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ name @2 β‡’ Nm[{@2}] [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:2828 [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:1972 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴opnat: ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ fn nat_print : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ret 222 β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force opnat_filter_nat) on) f β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴pred: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ name @0 β‡’ Nm[{@0}] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ case opnat of ... [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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:2090 [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: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ fn nat_print : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) [Check OK] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [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: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ fn nat_print2 : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ ref(name @0, roll inj1 ()) ⇐ γ€ˆ0; 0〉F Ref[Y1](⌊SeqβŒ‹[X1][Y2]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ γ€ˆ0; 0〉F Nm[X1βˆ™{@1}] in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1645 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [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:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ fn nat_print2 : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) [Check OK] [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ } else { [INFO] [stdout] β”‚ β•‘ fn print_found_duplicate : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [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:1645 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1658 [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] β”‚ β•‘ β”‚ β”‚ let nm = (force name_of_nat) 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:2574 [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: ... ⊒ γ€ˆ(𝞴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] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ subcase n : Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let sugar_if_scrutinee = (force pred) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ fn print_found_duplicate : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F Unit) [Check OK] [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] β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ then γ€ˆ0; 0〉 ≑ γ€ˆ0; (𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}β¦˜γ€‰ [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force pred) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ fn gen : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œList”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_keyword_sugar β‡’ Thk[(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘](γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [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] β”‚ β•‘ β”‚ 𝞴t: ⌊RefTrieβŒ‹[X][Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1681 [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_l = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ let emp = ref 0 roll inj1 () : F β€œRefTrie”[0][0] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ 𝞴f: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [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] β”‚ β•‘ β”‚ β”‚ β”‚ 𝞴l: ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force pred β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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: ... ⊒ γ€ˆ(𝞴_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::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force name_of_nat) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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:2092 [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:1694 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ fn opnat_pair : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” ⨉ β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOp2Nat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ pred β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force name_of_nat β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ split let_split_sugar a2. b2. ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ subcase c : Nat ⨉ (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ let tt = get t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ var a2 : Ref[(𝞴_a:Nm.@@(𝞴x:Nm.@777βˆ™x(_a)))β¦—{@2}⦘](Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force pred β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ var b2 : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [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:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force pred) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ get synth rule [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] β”‚ β•‘ 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] β”‚ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ t β‡’ ⌊RefTrieβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ name_of_nat β‡’ Thk[0](βˆ€X:NmSet|⊀.γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nm[X]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [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] β”‚ β•‘ β”‚ 𝞴opnat: ⌊OpNatβŒ‹ [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] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ split let_split_sugar h. t. ... [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴pred: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ var h : Nat [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2320 [INFO] [stdout] β”‚ β•‘ β”‚ case opnat of ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force max[X2][Y2]) app_get_sugar_l β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ var t : (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let h2 = (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [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] β”‚ β•‘ β”‚ 𝞴t: ⌊RefTrieβŒ‹[X][Y] [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force name_of_nat β‡’ βˆ€X:NmSet|⊀.γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max[X2][Y2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [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; Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴n: Nat [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max[X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ let tt = get t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ subcase n : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1992 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ case sugar_match_unroll of ... [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let sugar_if_scrutinee = (force pred) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failure term: App(Force(Var("name_of_nat")), Var("n"))` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ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] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ t β‡’ ⌊RefTrieβŒ‹[X][Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ subcase _emp : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force pred) n β‡’ ? [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:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ f β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let pred = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [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; Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force pred β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ exists X1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ exists X2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force nat_sub) n) 1 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ subcase _emp : Unit [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ exists X3 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β”‚ β”‚ prop X1 βŠ₯ X2 βŠ₯ X3 ≑ X : NmSet true [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force nat_sub) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ pred β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [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] β”‚ β•‘ β”‚ β”‚ subcase leaf : Nm[X] ⨉ Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force pred β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1694 [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 opnat_max : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret leaf β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force pred) n β‡’ γ€ˆ0; 0〉F Bool [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴xo: ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴yo: ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_sub β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [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] β”‚ β•‘ β•‘ β”‚ case xo of ... [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let h2 = (force f) h β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret leaf β‡’ γ€ˆ0; 0〉F Nm[X] ⨉ Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; Y〉F Bool [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; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 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] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ subcase x : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar _x. y. ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var _x : Nm[X] [INFO] [stdout] β”‚ β”‚ β”‚ exists Y1 : NmSet [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ case yo of ... [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: ... ⊒ (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] β”‚ β•‘ β”‚ β”‚ β”‚ var y : Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [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] β”‚ β•‘ β”‚ β”‚ β”‚ let b = n == y β‡’ ? [INFO] [stdout] β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ 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:40 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stderr] stack backtrace: [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] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [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] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] β””αšœfungi_lang::examples::basic_write_scope:2 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [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] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [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] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stdout] β”‚ β”‚ β”‚ exists Y2 : NmSet [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let b = n == y β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; Y〉F Bool [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [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] at src/libstd/panicking.rs:198 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638ce66e3a - fungi_lang::examples::basic_write_scope::listing::help::h12dcc4b2227a3903 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638ce62421 - fungi_lang::examples::basic_write_scope::listing::{{closure}}::haace147e0a220fa2 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000c31 - std::sys_common::backtrace::__rust_begin_short_backtrace::h479f5b4efd756a3b [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd22c1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h39341a99c3ed4fa8 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdecfc0 - as core::ops::function::FnOnce<()>>::call_once::h758d24eac0fd64ea [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf6439d - std::panicking::try::do_call::h55942a22be9131d2 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf637b7 - std::panicking::try::he7f0801a677d3b12 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded221 - std::panic::catch_unwind::h28dde2cf4be4a0c9 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] 25: 0x55638cfceaed - std::thread::Builder::spawn_unchecked::{{closure}}::h72350140c65a7622 [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] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stderr] 26: 0x55638ccb1a68 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h08c4241642e6f0fb [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ } else { [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ case sugar_match_snd of ... [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_sub β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] β”‚ β”‚ β”‚ exists Y3 : NmSet [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stdout] test examples::basic_write_scope::listing ... FAILED [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase leaf : Nm[X] ⨉ Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let t2 = ((force map) f) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ subcase y : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [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:1694 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ let sugar_if_scrutinee = x < y β‡’ ? [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] β”‚ β•‘ 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] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force map) f) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [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] β”‚ β•‘ fn opnat_max : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force map) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_sub β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ let sugar_if_scrutinee = x < y β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β”‚ β”‚ exists Y4 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [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] β”‚ β•‘ β”‚ 𝞴xo: ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_name_sugar β‡’ Nm[X1βˆ™{@1}] [INFO] [stdout] β”‚ β”‚ β”‚ prop Y1 βŠ₯ Y2 βŠ₯ Y3 βŠ₯ Y4 ≑ Y : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map β‡’ ? [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴yo: ⌊OpNatβŒ‹ [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [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] β”‚ β”‚ β”‚ let let_split_sugar = ret bin β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ case xo of ... [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:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force nat_sub) n β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X1: NmSet [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X2: NmSet [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ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] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Z: Nm [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:2731 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ subcase x : Nat [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: ⌊RefTrieβŒ‹[X1][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force nat_sub) n) 1 β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴x: Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [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] β”‚ β•‘ β”‚ β”‚ 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] β”‚ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ 𝞴y: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ case yo of ... [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase _u : Unit [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: ... ⊒ βˆƒ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:2572 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴i: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴ni: Nm[{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map β‡’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = i == 12 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [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:2617 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β”‚ β”‚ split let_split_sugar n. sugar_split_snd. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let pred = ... β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force map) f β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β”‚ β”‚ var n : Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [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] β”‚ β•‘ β”‚ β”‚ let seq_ref = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β•‘ fn opnat_max : Thk[0](γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0γ€‰β€œOpNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [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] β”‚ β•‘ β”‚ β”‚ subcase y : Nat [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [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:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [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: ... ⊒ γ€ˆ(𝞴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:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ split sugar_split_snd lev. sugar_split_snd. ... [INFO] [stdout] β”‚ β•‘ β•‘ β”Œαšœfungi_lang::bitype:1681 [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] β”‚ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force seq_gen) pred β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let sugar_if_scrutinee = x < y β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ var lev : Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ 𝞴n: Nat [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:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [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] β”‚ β•‘ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let b = ((force is_leaf_with_nat[X1][Y]) t) y β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force map) f) t β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force seq_gen β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ split sugar_split_snd l. r. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let sugar_if_scrutinee = x < y β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: ⌊RefTrieβŒ‹[X][Y] [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] β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force is_leaf_with_nat[X1][Y]) t) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴n: Nat [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] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ let tt = get t β‡’ ? [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] β”‚ β”‚ β”‚ 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:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force is_leaf_with_nat[X1][Y]) t β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let t2 = ((force map) f) t β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ if sugar_if_scrutinee { [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [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] β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ t β‡’ ⌊RefTrieβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force seq_gen β‡’ βˆ€Y1:NmSet|⊀.βˆ€X1:NmSet|⊀.βˆ€Y2:NmSet|⊀.γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Ref[Y1](⌊SeqβŒ‹[X1][Y2]) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat[X1][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_is_odd β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [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] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1992 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ γ€ˆ0; 0〉F Nm[X1βˆ™{@1}] in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) h2) t2 β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [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] β”‚ β”‚ β”‚ β”‚ 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:2731 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failure term: App(Force(Var("seq_gen")), Var("pred"))` [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) h2 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat[X1] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ let seq_ref = ... β‡’ Error: unexpected effect type: ForallIdx("Y1", NmSet, Tt, ForallIdx("X1", NmSet, Tt, ForallIdx("Y2", NmSet, Tt, ... in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (let app_get_sugar_l = {get l}; (force filter[X2][Y2]) app_get_sugar_l) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let leaf_ref = ... β‡’ ? [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: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_l = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth value Var, error: variable nm not in scope [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] test examples::list_nat_dedup::dynamic_tests::short_10_2 ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failure term: Var("nm")` [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ subcase _emp : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth value Var, error: variable nm not in scope [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failure term: Var("nm")` [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ cons β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth value Pair, error: parameter 0 unknown type [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [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:2574 [INFO] [stdout] β”‚ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) := ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [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] β”‚ β•‘ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴n: 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ is_leaf_with_nat β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X][Y] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth value Inj1, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) h2 β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let m = n + 1 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failure term: Inj1(Pair(Var("nm"), Var("n")))` [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth value Inj2, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ case sugar_match_snd of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ let m = n + 1 β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat[X1] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase leaf : Nm[X] ⨉ Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat[X1][Y] β‡’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force filter[X2][Y2]) app_get_sugar_l β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret leaf β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force is_leaf_with_nat[X1][Y]) t β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) h2) t2 β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failure term: Inj2(Inj1(Pair(Var("nm"), Var("n"))))` [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X2][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] β”‚ β•‘ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth value Roll, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failure term: Roll(Inj2(Inj1(Pair(Var("nm"), Var("n")))))` [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_is_odd β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force is_leaf_with_nat[X1][Y]) t) y β‡’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter β‡’ ? [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret leaf β‡’ γ€ˆ0; 0〉F Nm[X] ⨉ Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_is_odd β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth expression Ref, error: error inside (the 'primary' subderivation) [INFO] [stdout] β”‚ β•‘ β•‘ β”‚ βœ” [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar _x. y. ... [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] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ (force nat_is_odd) n β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let leaf_ref = ... β‡’ Error: error inside (the 'primary' subderivation) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var _x : Nm[X] [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: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let nmb = ... β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ var y : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ } [fungi_lang::examples::op_nat: ?/? ok items] [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:2090 [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] β”‚ β•‘ β”‚ β”‚ β”‚ let b = n == y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ 𝞴f: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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: ... ⊒ γ€ˆ(𝞴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 Var, error: variable nm not in scope [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ 𝞴l: ⌊ListβŒ‹ [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] β”‚ β•‘ β”‚ β”‚ β”‚ Failure term: Var("nm")` [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] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let b = n == y β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to synth expression NameBin, error: parameter 0 unknown type [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ subcase _u : Unit [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; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [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:2572 [INFO] [stdout] β”‚ β”‚ β”‚ split let_split_sugar _rsl. ml. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X1: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β”‚ β”‚ var _rsl : Ref[@@β¦—X1βˆ™{@1}⦘](⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let nmb = ... β‡’ Error: parameter 0 unknown type in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X2: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β”‚ β”‚ var ml : ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ subcase c : Nat ⨉ (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Var, error: variable nmb not in scope [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y1: NmSet [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] β”‚ β•‘ β”‚ β”‚ Failure term: Var("nmb")` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [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] β”‚ β•‘ β”‚ βˆ€Y2: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth index-term Unknown, error: unknown index term [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:2024 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴n: Nm[X1] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let m = n + 1 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Unknown` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴h: Nat [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] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth index-term Unknown, error: unknown index term [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: Ref[Y1](⌊ListβŒ‹[X2][Y2]) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [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 memo_name_sugar = ... β‡’ γ€ˆ0; 0〉F Nm[X1βˆ™{@2}] in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Unknown` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let m = n + 1 β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [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:1694 [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] β”‚ β•‘ β”‚ β”‚ Failed to synth index-term Unknown, error: unknown index term [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Unknown` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_r = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Var, error: variable nmb not in scope [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β•‘ β”‚  success: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ split let_split_sugar h. t. ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Var("nmb")` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref_name_sugar β‡’ Nm[X2βˆ™{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ var h : Nat [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X1: NmSet [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Var, error: variable leaf_ref not in scope [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; Y1〉 [INFO] [stdout] β”‚ β•‘ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ var t : (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X2: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Var("leaf_ref")` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let t2 = ((force filter) f) t β‡’ ? [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] β”‚ β•‘ β”‚ βˆ€Y: NmSet [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β•‘ β”‚ } else { [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] β”‚ β•‘ β”‚ β”‚ Failed to synth value Var, error: variable seq_ref not in scope [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Z: Nm [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:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Var("seq_ref")` [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: ⌊RefTrieβŒ‹[X1][Y] [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:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [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] β”‚ β•‘ β”‚ β”‚ Failed to synth value Pair, error: parameter 0 unknown type [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴x: Nm[X2] [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] β”‚ β•‘ β”‚ } [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force filter) f) t β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Pair, error: parameter 1 unknown type [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴y: Nat [INFO] [stdout] β”‚ β•‘ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Pair, error: parameter 0 unknown type [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] β”‚ β•‘ β”‚ 𝞴i: Nat [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] β”‚ β•‘ β”‚ β”‚ ... ⊒ n β‡’ Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴ni: Nm[{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Pack, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force filter) f β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ ... ⊒ 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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ let sugar_if_scrutinee = i == 12 β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ Failure term: Pack(Unknown, Pair(Var("nmb"), Pair(Var("n"), Pair(Var("leaf_ref"), Var("seq_ref ... [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force max[X3][Y4]) app_get_sugar_r β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β•‘ fn nat_succ_even : Thk[0](γ€ˆ0; 0γ€‰β€œNat” β†’ γ€ˆ0; 0〉F β€œOpNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Pack, error: no synth rule found, try an annotation [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Pack(Unknown, Pack(Unknown, Pair(Var("nmb"), Pair(Var("n"), Pair(Var("leaf_ref") ... [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max[X3][Y4] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2834 [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Pack, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ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:1694 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_name_sugar β‡’ Nm[X1βˆ™{@1}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max[X3] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Pack(Unknown, Pack(Unknown, Pack(Unknown, Pair(Var("nmb"), Pair(Var("n"), Pair(V ... [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] β”‚ β•‘ 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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (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:1722 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ } [fungi_lang::examples::op_nat: ?/? ok items] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ } else { [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β•‘ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β””αšœfungi_lang::examples::op_nat::static_tests:100 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let j = i + 1 β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force max β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let b = ((force is_leaf_with_nat[X1][Y]) t) y β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [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] β”‚ β•‘ β”‚ βˆ€X1: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X2: NmSet [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y2: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter β‡’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴n: Nm[X1] [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:1916 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴h: Nat [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:1917 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴t: ⌊ListβŒ‹[X2][Y2] [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] β”‚ β•‘ β”‚ β”‚ Failed to synth value Inj2, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let nj = name β–² * ni β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Inj2(Pack(Unknown, Pack(Unknown, Pack(Unknown, Pair(Var("nmb"), Pair(Var("n"), P ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [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 synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force is_leaf_with_nat[X1][Y]) t) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ let rt = ref n t β‡’ ? [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] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force filter) f β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force is_leaf_with_nat[X1][Y]) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1835 [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:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Inj2, error: no synth rule found, try an annotation [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ref synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Inj2(Inj2(Pack(Unknown, Pack(Unknown, Pack(Unknown, Pair(Var("nmb"), Pair(Var("n ... [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:40 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat[X1][Y] β‡’ ? [INFO] [stderr] stack backtrace: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X1] [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [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] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth value Roll, error: no synth rule found, try an annotation [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [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] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ t β‡’ ⌊ListβŒ‹[X2][Y2] [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failure term: Roll(Inj2(Inj2(Pack(Unknown, Pack(Unknown, Pack(Unknown, Pair(Var("nmb"), Pair(V ... [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat[X1] β‡’ ? [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth expression Ref, error: error inside (the 'primary' subderivation) [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [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] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ ref(n, t) β‡’ γ€ˆ@@β¦—X1⦘; 0〉F Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][Y2]) [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let nj = name β–² * ni β‡’ γ€ˆ0; 0〉F Nm[{β–²}βˆ™{Z}] in [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [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] [stderr] at src/libstd/panicking.rs:217 [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] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force filter) f) t β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stdout] test examples::op_nat::static_tests::typing ... FAILED [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat β‡’ ? [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [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] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [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] [stderr] at src/vis.rs:249 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] 16: 0x55638cff4613 - fungi_lang::examples::op_nat::static_tests::typing::help::hb9d733b621e2cad5 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth expression Let, error: parameter 1 unknown type [INFO] [stderr] at src/vis.rs:197 [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] [stderr] 17: 0x55638cff2341 - fungi_lang::examples::op_nat::static_tests::typing::{{closure}}::h37f4370fd17eeb29 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stderr] at src/vis.rs:213 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] 18: 0x55638d000dd1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h9e31f4fcd26f17d7 [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] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let tc = (force children[X1][Y]) t β‡’ ? [INFO] [stderr] 19: 0x55638cfd2281 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h3432c5ee2b01f0e3 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ Failed to synth expression Let, error: error later (the 'secondary' subderivation) [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stderr] 20: 0x55638cdecd40 - as core::ops::function::FnOnce<()>>::call_once::h035eda8b9892d284 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stderr] 21: 0x55638cf64d2d - std::panicking::try::do_call::hcf75d42a9636ea44 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf629e7 - std::panicking::try::h88df0e6c9221c118 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded2a1 - std::panic::catch_unwind::h4048a37734aeaeb9 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfcd22d - std::thread::Builder::spawn_unchecked::{{closure}}::h29668dde575881a3 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1c48 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h3f7115cbabac849d [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  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:1841 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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:2617 [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] β”‚ β•‘ β”‚ β”‚ Failure term: Let("nm", App(Force(Var("name_of_nat")), Var("n")), Let("pred", App(App(Force(Va ... [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] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [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:2733 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force children[X1][Y]) t β‡’ ? [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] β”‚ β•‘ β”‚ } [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ γ€ˆ@!(X1); 0〉 - γ€ˆ@@β¦—X1⦘; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let t2 = ((force filter) f) t β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check expression IfThenElse, error: parameter 2 type mismatch  [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ success: ... ⊒ γ€ˆ@!(X1); 0〉 - γ€ˆ@@β¦—X1⦘; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children[X1][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let sugar_if_scrutinee = (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_leaf_with_nat[X1] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check expression Fix, error: check fail for ceffect ... [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children[X1] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [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 is_leaf_with_nat[X1][Y] β‡’ γ€ˆ0; 0γ€‰βŒŠRefTrieβŒ‹[X1][Y] β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children β‡’ ? [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:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force is_leaf_with_nat[X1][Y]) t β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ ? [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_name_sugar β‡’ Nm[X1βˆ™{@2}] [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚  success: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•™αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [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 synth rule [INFO] [stdout] β”‚ β•‘ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ } [fungi_lang::examples::seq_nat_gen: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force is_leaf_with_nat[X1][Y]) t) y β‡’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ f β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β””αšœfungi_lang::examples::seq_nat_gen::static_tests:32 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [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] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [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] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [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:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [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] β”‚ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [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:40 [INFO] [stdout] β”‚ β•‘ fn len : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œList”[X][Y] β†’ γ€ˆ0; Y〉F β€œNat”) := ... [INFO] [stderr] stack backtrace: [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] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ γ€ˆ0; 0〉F Bool [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€X: NmSet [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [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] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Y: NmSet [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [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] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let b = ((force is_leaf_with_nat[X1][Y]) t) y β‡’ γ€ˆ0; Y〉F Bool in [INFO] [stderr] at src/libstd/io/mod.rs:1539 [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] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴l: ⌊ListβŒ‹[X][Y] [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stderr] at src/libstd/panicking.rs:217 [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] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stdout] β”‚ β•‘ β”‚ case sugar_match_unroll of ... [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [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] [stderr] at src/libstd/panicking.rs:437 [INFO] [stdout] β”‚ β•‘ β”‚ subcase _u : Unit [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [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] [stderr] at src/libcore/panicking.rs:85 [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] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stdout] test examples::seq_nat_gen::static_tests::typing ... β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stdout] FAILED [INFO] [stderr] at src/vis.rs:249 [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] [stderr] 16: 0x55638d017df3 - fungi_lang::examples::seq_nat_gen::static_tests::typing::help::h79cd2bccdbfc9beb [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stderr] at src/vis.rs:197 [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] [stderr] 17: 0x55638d015b21 - fungi_lang::examples::seq_nat_gen::static_tests::typing::{{closure}}::h55b4f9a80d26877e [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stderr] at src/vis.rs:213 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stderr] 18: 0x55638d000cb1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h5b9812bb7aedd41a [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2261 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h2d443ec60bbec629 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cded040 - as core::ops::function::FnOnce<()>>::call_once::hbe5b578f191a66b1 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf6427d - std::panicking::try::do_call::h45229cbb54460dd7 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf62af7 - std::panicking::try::h8b1fcf25345af9c1 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded1a1 - std::panic::catch_unwind::h10d10c2f05c7aa0c [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfd1f2d - std::thread::Builder::spawn_unchecked::{{closure}}::hff006f5fb7633ebb [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1dc8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h55af33760eb13392 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [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〉 then γ€ˆ0; Y〉 ≑ ? [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] β”‚ β•‘ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [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] β”‚ β•‘ β”‚ β”‚ exists X1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [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] β”‚ β•‘ β”‚ β”‚ exists X2 : NmSet [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] β”‚ β•‘ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ prop X1 βŠ₯ X2 ≑ X : NmSet true [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [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] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ exists Y1 : NmSet [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:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) h) t2 β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ exists Y2 : NmSet [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ split let_split_sugar rsl. sl. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ prop Y1 βŠ₯ Y2 ≑ Y : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) h β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ var rsl : Ref[@@β¦—X1βˆ™{@1}⦘](⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ exists X1l : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β”‚ β”‚ var sl : ⌊SeqβŒ‹[X2][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ exists X1r : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ prop X1l βŠ₯ X1r ≑ X1 : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let let_split_sugar = ret tc β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [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] β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [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] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref_name_sugar β‡’ Nm[X2βˆ™{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ cons β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ split let_split_sugar x. sugar_split_snd. ... [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var x : Nm[X1] [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_name_sugar = ... β‡’ γ€ˆ0; 0〉F Nm[X1βˆ™{@2}] in [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ split let_split_sugar lc. rc. ... [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:2834 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var lc : ⌊RefTrieβŒ‹[X1l][Y] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var rc : ⌊RefTrieβŒ‹[X1r][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ split sugar_split_snd y. ys. ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [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] β”‚ β•‘ β”‚ β”‚ var y : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let bit = ((force nat_hash_bit) y) i β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) h β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [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:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœ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] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (let app_get_sugar_r = {get r}; (force filter[X3][Y4]) app_get_sugar_r) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force nat_hash_bit) y) i β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let lenys = let app_get_sugar_ys = {get ys}; (force len[X2][Y2]) app_get_sugar_ys β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_r = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ split let_split_sugar _rsr. mr. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force nat_hash_bit) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let app_get_sugar_ys = ... β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ var _rsr : Ref[@@β¦—X1βˆ™{@2}⦘](⌊OpNatβŒ‹) [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:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β”‚ β”‚ var mr : ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) h) t2 β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_hash_bit β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚  success: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force opnat_max) ml) mr β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ } else { [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force opnat_max) ml β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let j = i + 1 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_hash_bit β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force opnat_max β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [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] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [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 nat_hash_bit β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [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:2731 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force filter[X3][Y4]) app_get_sugar_r β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force nat_hash_bit) y β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force len[X2][Y2]) app_get_sugar_ys β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let nj = name β–² * ni β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ opnat_max β‡’ Thk[0](γ€ˆ0; 0γ€‰βŒŠOpNatβŒ‹ β†’ γ€ˆ0; 0γ€‰βŒŠOpNatβŒ‹ β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X3][Y4] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force opnat_max β‡’ γ€ˆ0; 0γ€‰βŒŠOpNatβŒ‹ β†’ γ€ˆ0; 0γ€‰βŒŠOpNatβŒ‹ β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force len[X2][Y2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X3] β‡’ ? [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ βœ” [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:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force len[X2] β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force opnat_max) ml β‡’ γ€ˆ0; 0γ€‰βŒŠOpNatβŒ‹ β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force nat_hash_bit) y) i β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let tc = (force children[X1][Y]) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force len β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force children[X1][Y]) t β‡’ ? [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children[X1][Y] β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ len β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F Nat) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force opnat_max) ml) mr β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children[X1] β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [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; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force len β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊OpNatβŒ‹ βŠ† (Unit οΌ‹ Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force children β‡’ ? [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:1916 [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ if bit { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force len[X2] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y] β†’ γ€ˆ0; Y〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = (((((force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc) x) y) j) nj β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ 𝞴f: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force len[X2][Y2] β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹[X2][Y2] β†’ γ€ˆ0; Y2〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((((force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc) x) y) j) nj β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force len[X2][Y2]) app_get_sugar_ys β‡’ γ€ˆ0; Y2〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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 trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc) x) y) j β‡’ ? [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:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ 𝞴l: ⌊ListβŒ‹ [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc) x) y β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y2〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ subcase _u : Unit [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:1944 [INFO] [stdout] β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y2〉 ≑ γ€ˆ0; 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:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc) x β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [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] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ0; Y2〉 ≑ ? [INFO] [stdout] β”‚ β””αšœfungi_lang::examples::seq_max:2 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[X1l][X2][Y][β–²βˆ™Z]) lc β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ subcase c : Nat ⨉ (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ0; Y2〉 ≑ γ€ˆ0; Y1 βˆͺ Y2〉 [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:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2][Y][β–²βˆ™Z] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y1 βˆͺ Y2〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ ? [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:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; Y〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; Y1 βˆͺ Y2〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆΓ˜; Γ˜γ€‰F Nat βŠ† γ€ˆΓ˜; Y1 βŠ₯ Y2〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ split let_split_sugar h. t. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l] β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ decide if: ... ⊒ γ€ˆ(𝞴X:NmSet.@!((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 - γ€ˆ0; Y〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ var h : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y3〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ fn len : Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰β€œList”[X][Y] β†’ γ€ˆ0; Y〉F β€œNat”) [Check OK] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ var t : (rec list. (Unit οΌ‹ Nat ⨉ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y3〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; Y3〉 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let t2 = ((force map_filter) f) t β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ exists X1l : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ exists X1r : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ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] β”‚ β•‘ β”‚ β”‚ prop X1l βŠ₯ X1r ≑ X1 : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force map_filter) f) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ 𝞴f: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [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] β”‚ β•‘ β”‚ β”‚ let let_split_sugar = ret tc β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ 𝞴l: ⌊ListβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ case sugar_match_unroll of ... [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) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [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] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [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] β”‚ β•‘ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map_filter β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [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:1851 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [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: ... ⊒ γ€ˆ(𝞴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:1863 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ split let_split_sugar lc. rc. ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [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:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var lc : ⌊RefTrieβŒ‹[X1l][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists X1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ memo_name_sugar β‡’ Nm[X1βˆ™{@2}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ var rc : ⌊RefTrieβŒ‹[X1r][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists X2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ prop X1 βŠ₯ X2 ≑ X : NmSet true [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ map_filter β‡’ Thk[0](γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ let bit = ((force nat_hash_bit) y) i β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists Y1 : NmSet [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists Y2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map_filter β‡’ γ€ˆ0; 0〉Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ prop Y1 βŠ₯ Y2 ≑ Y : NmSet true [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [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] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force nat_hash_bit) y) i β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force nat_hash_bit) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force map_filter) f β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [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] β”‚ β”‚ β”‚ β”‚ 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 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:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_hash_bit β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [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] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar n. sugar_split_snd. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ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] β”‚ β•‘ β”‚ β”‚ β”‚ var n : Nm[X1] [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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] β”‚ β•‘ β”‚ β”‚ β”‚ split sugar_split_snd h. t. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var h : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force map_filter) f) t β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [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:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ nat_hash_bit β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let h2 = (force f) h β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [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:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [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] [stderr] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:40 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stderr] stack backtrace: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force nat_hash_bit β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ ? [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [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] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ ? [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638cf19b0b - fungi_lang::examples::seq_max::listing::help::ha3218786ebc13481 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638cf09641 - fungi_lang::examples::seq_max::listing::{{closure}}::h045c0d7ae2478a9b [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000e51 - std::sys_common::backtrace::__rust_begin_short_backtrace::hb22f11221d3694ba [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2241 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h2a9b929b7c5269b6 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdecda0 - as core::ops::function::FnOnce<()>>::call_once::h12883b5c8a8d2120 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf63fad - std::panicking::try::do_call::h12db3bd9a8772922 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf62e27 - std::panicking::try::h9cd7bda8f6802866 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded461 - std::panic::catch_unwind::had853509a34e488f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfcd4ed - std::thread::Builder::spawn_unchecked::{{closure}}::h30bd85a51ba294f0 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb2098 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h95d03589b5da3da4 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force nat_hash_bit) y β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [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] β”‚ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] test examples::seq_max::listing ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let t2 = ((force map_filter) f) t β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ f β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force nat_hash_bit) y) i β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F 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 β‡’ γ€ˆ@@β¦—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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let oh2 = (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [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:2619 [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] β”‚ β•‘ β”‚ β”‚ 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:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let h2 = (force f) h β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ@!(X); Y βŠ₯ @!(X)〉F ⌊ListβŒ‹[X][@!(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[{β–²}βˆ™{Z}] βŠ† Nm[{β–²βˆ™Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ if bit { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[{β–²}βˆ™{Z}] βŠ† Nm[{β–²βˆ™Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ f β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [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] β”‚ β•‘ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = (((((force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc) x) y) j) nj β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [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)))(X2); Y〉 ≑ γ€ˆ(𝞴X:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴X:NmSet.Xβˆ™((𝞴x:Nm.(𝞴x:Nm.{β–²βˆ™x})*β¦—{x}⦘)(β–²)))(X)))(X2); Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((((force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc) x) y) j) nj β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_t = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc) x) y) j β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc) x) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [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[X1l][X2][Y][{@@leafβˆ™Z}]) lc) x β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar tx. b. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}]) lc β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let oh2 = (force f) h β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var b : Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [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] β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2][Y][{@@leafβˆ™Z}] β‡’ ? [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:1944 [INFO] [stdout] β”‚ β”‚ β”‚ split let_split_sugar rsr. sr. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force map[X2][Y2]) f) app_get_sugar_t β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ var rsr : Ref[@@β¦—X1βˆ™{@2}⦘](⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ case oh2 of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ var sr : ⌊SeqβŒ‹[X3][(𝞴x:NmSet.(𝞴x:NmSet.@@β¦—x⦘)((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X3)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ let sugar_if_scrutinee = (force is_empty[X2][WS_Seq_SR(X2)]) sl β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force map[X2][Y2]) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l][X2] β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [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[X2][Y2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force is_empty[X2][WS_Seq_SR(X2)]) sl β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1l] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map[X2] β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty[X2][WS_Seq_SR(X2)] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ subcase h2 : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty[X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) h) t2 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ is_empty β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [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 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:1917 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ cons β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹) [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref_name_sugar β‡’ Nm[X2βˆ™{Z}] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [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 is_empty[X2] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X2][Y] β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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:2024 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [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] β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) h β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [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] β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force is_empty[X2][WS_Seq_SR(X2)]) sl β‡’ γ€ˆ0; WS_Seq_SR(X2)〉F Bool [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: ... ⊒ Nat βŠ† Nat [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:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; WS_Seq_SR(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; WS_Seq_SR(X2)〉 ≑ γ€ˆ0; WS_Seq_SR(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) h) t2 β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [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] β”‚ β•‘ β”‚ β”‚ β”‚  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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((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:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Bool βŠ† Bool [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [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: ... ⊒ Bool βŠ† Bool [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  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: ... ⊒ (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:2729 [INFO] [stdout] β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ0; WS_Seq_SR(X2)〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ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] β”‚ β•‘ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = (((((force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc) x) y) j) nj β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ 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:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ fn reverse : Thk[0](γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0〉F β€œList”) := ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ 𝞴l: ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ 𝞴r: ⌊ListβŒ‹ [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((((force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc) x) y) j) nj β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [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:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc) x) y) j β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; @@β¦—X1β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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 trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc) x) y β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β”‚ β”‚ if sugar_if_scrutinee { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc) x β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[X1r][X2][Y][β–²βˆ™Z]) rc β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ subcase c : Nat ⨉ (rec list. (Unit οΌ‹ Nat ⨉ list)) [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2][Y][β–²βˆ™Z] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@@β¦—X1⦘; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2] β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ γ€ˆ0; 0〉F Nat ⨉ (rec list. (Unit οΌ‹ Nat ⨉ list)) in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ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:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[{β–²}βˆ™{Z}] βŠ† Nm[{Z}] [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  failure: ... ⊒ Nm[{β–²}βˆ™{Z}] βŠ† Nm[{Z}] [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ split let_split_sugar h. t. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1308 [INFO] [stdout] β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ var h : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Detailed errors for checking type of variable nj: [INFO] [stdout] β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ var t : (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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [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] β”‚ β”‚ β”‚ β”‚ let sugar_if_scrutinee = (force is_empty[X3][WS_Seq_SR(X3)]) sr β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let r2 = ((force cons) h) r β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar rt2. _t2. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth 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] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var rt2 : Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) [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:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1313 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var _t2 : ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force is_empty[X3][WS_Seq_SR(X3)]) sr β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check value Var, error: annotation mismatch [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 cons) h) r β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ Failure term: Var("nj")` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty[X3][WS_Seq_SR(X3)] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth expression App, error: parameter 1 type incorrect [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty[X3] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ split let_split_sugar tx. b. ... [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ var tx : ⌊RefTrieβŒ‹[X1l][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ var b : ⌊RefTrieβŒ‹[X1r][Y] [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let r = ... β‡’ ? [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:2024 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ cons β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ is_empty β‡’ Thk[0](βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F Bool) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force cons β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [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] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty β‡’ βˆ€X:NmSet|⊀.βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X][Y] β†’ γ€ˆ0; Y〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [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: ... ⊒ ⌊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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force cons) h β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force is_empty[X3] β‡’ βˆ€Y:NmSet|⊀.γ€ˆ0; 0γ€‰βŒŠSeqβŒ‹[X3][Y] β†’ γ€ˆ0; Y〉F Bool [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ βˆ€X: NmSet [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:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force cons) h) r β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ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 βŠ₯ X2~ ≑ X : NmSet. Ref[Y](trie[X1][Y]) ⨉ Ref[Y](trie[X2~][Y]))))[X1l βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ 𝞴f: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool) [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force is_empty[X3][WS_Seq_SR(X3)]) sr β‡’ γ€ˆ0; WS_Seq_SR(X3)〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ 𝞴l: ⌊ListβŒ‹[X][Y] [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [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] β”‚ β•‘ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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: ... ⊒ Nat βŠ† Nat [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] β”‚ β•‘ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; WS_Seq_SR(X3)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; WS_Seq_SR(X3)〉 ≑ γ€ˆ0; WS_Seq_SR(X3)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let r2 = ((force cons) h) r β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F ⌊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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((((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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists X1 : NmSet [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y βŠ₯ (𝞴x:NmSet.@!((𝞴x:Nm.{xβˆ™@1} βŠ₯ {xβˆ™@2})β¦—x⦘))(X)〉 - γ€ˆ0; WS_Seq_SR(X3)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref_name_sugar β‡’ Nm[X2βˆ™{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists X2 : NmSet [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 reverse) t) r2 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ prop X1 βŠ₯ X2 ≑ X : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists Y1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force reverse) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists Y2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [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] β”‚ β•‘ β”‚ β”‚ β”‚ prop Y1 βŠ₯ Y2 ≑ Y : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force reverse β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[{β–²}βˆ™{Z}] βŠ† Nm[{β–²βˆ™Z}] [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:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[{β–²}βˆ™{Z}] βŠ† Nm[{β–²βˆ™Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ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 γ€ˆ(𝞴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] β”‚ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: parameter 1 type incorrect [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ if sugar_if_scrutinee { [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] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar n. sugar_split_snd. ... [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force reverse β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [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] β”‚ β•‘ β”‚ β”‚ β”‚ var n : Nm[X1] [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [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:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split sugar_split_snd h. t. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force reverse) t β‡’ γ€ˆ0; 0γ€‰βŒŠListβŒ‹ β†’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var h : Nat [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] β”‚ β•‘ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar tx. b. ... [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [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:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var b : Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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] β”‚ β”‚ β”‚ β”‚ β”‚  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] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force reverse) t) r2 β‡’ γ€ˆ0; 0〉F ⌊ListβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = (((((force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc) x) y) j) nj β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_t = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ ⌊ListβŒ‹ βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((((force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc) x) y) j) nj β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc) x) y) j β‡’ ? [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: ... ⊒ γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† γ€ˆΓ˜; Γ˜γ€‰F (rec list. (Unit οΌ‹ Nat ⨉ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc) x) y β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ fn reverse : Thk[0](γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0γ€‰β€œList” β†’ γ€ˆ0; 0〉F β€œList”) [Check OK] [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:1944 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X1] βŠ† Nm[X1] [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: ... ⊒ ⌊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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc) x β‡’ ? [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force filter[X2][Y2]) f) app_get_sugar_t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ 𝞴l: ⌊ListβŒ‹ [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ 𝞴a: Nat [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 trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}]) rc β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ref check rule: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force filter[X2][Y2]) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ 𝞴f: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref_name_sugar β‡’ Nm[X2βˆ™{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [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:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X2][Y2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ subcase _u : Unit [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:2004 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2834 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter[X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [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: ... ⊒ Nat βŠ† Nat [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2][Y][{@@leafβˆ™Z}] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force filter β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ subcase c : Nat ⨉ (rec list. (Unit οΌ‹ Nat ⨉ list)) [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] β”‚ β•‘ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r][X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ Bool βŠ† Bool [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] β”‚ β”‚ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚  success: ... ⊒ Bool βŠ† Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[X1r] β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ 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:2733 [INFO] [stdout] β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ split let_split_sugar h. t. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ var h : Nat [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] β”‚ β•‘ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ var t : (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ βœ” [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let a2 = ((force f) a) h β‡’ ? [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:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [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] β”‚ β•‘ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β””αšœfungi_lang::examples::seq_filter:2 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force f) a) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”Œαšœfungi_lang::bitype:1681 [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:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Z1: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) a β‡’ ? [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:1917 [INFO] [stdout] β”‚ β•‘ β”‚ βˆ€Z2: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [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] β”‚ β•‘ β”‚ βˆ€YZ: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  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] β”‚ β•‘ β”‚ 𝞴t: ⌊RefTrieβŒ‹[Z1][YZ] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴x: Nm[Z2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 [INFO] [stdout] β”‚ β•‘ β”‚ 𝞴y: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ ... ⊒ (((((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y) 0) name β–² β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ f β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [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] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y) 0 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [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:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) a β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X1] [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[Z1][Z2][YZ][{β–²}]) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2][YZ][{β–²}] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force f) a) h β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [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: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2][YZ] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; @@β¦—X1β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X2] βŠ† Nm[X2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [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:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1] β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let a2 = ((force f) a) h β‡’ γ€ˆ0; 0〉F Nat in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ ? [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: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@@β¦—X1⦘; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [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:1944 [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:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force fold) t) a2) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [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: ... ⊒ 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 fold) t) a2 β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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 fold) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force fold β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ0; Y βŠ₯ @!(X)〉 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[{β–²}βˆ™{Z}] βŠ† Nm[{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var rt2 : Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  failure: ... ⊒ Nm[{β–²}βˆ™{Z}] βŠ† Nm[{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var t2 : ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [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:1308 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let sugar_if_scrutinee = (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Detailed errors for checking type of variable nj: [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [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:2024 [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:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1313 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check value Var, error: annotation mismatch [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 γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failure term: Var("nj")` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to synth expression App, error: parameter 1 type incorrect [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [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: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ f β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ (rec list. (Unit οΌ‹ Nat ⨉ list)) βŠ† (rec list. (Unit οΌ‹ Nat ⨉ list)) [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ split let_split_sugar tx. b. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ var tx : ⌊RefTrieβŒ‹[X1l][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ var b : ⌊RefTrieβŒ‹[X1r][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ γ€ˆ0; 0〉F Bool [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let r = ... β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Z2] βŠ† Nm[Z2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let ref_name_sugar = x * ni β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[Z2] βŠ† Nm[Z2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [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:2619 [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 sugar_if_scrutinee = (force f) h β‡’ γ€ˆ0; 0〉F Bool in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; Y βŠ₯ @!(X)〉F ⌊ListβŒ‹[X][@!(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y βŠ₯ @!(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force fold) t) a2) f β‡’ γ€ˆ0; 0〉F Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ if sugar_if_scrutinee { [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: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2727 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ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:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  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: ... ⊒ γ€ˆΓ˜; Γ˜γ€‰F Nat βŠ† γ€ˆΓ˜; Γ˜γ€‰F 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]))))[X1r βŠ₯ X2][@@β¦—X2βˆ™((𝞴x:Nm.β–²βˆ™x)*β¦—{x}⦘)⦘ XXX Y]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X1] βŠ† Nm[X1] [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 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:1722 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1308 [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::examples::pure_list_nat: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Detailed errors for checking type of variable tx: [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::examples::pure_list_nat::static_tests:138 [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] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:1972 [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:1313 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check value Var, error: annotation mismatch [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failure term: Var("tx")` [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check value Pair, error: parameter 1 type mismatch  [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1722 [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::examples::trie_nat: ?/? ok items] [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] β”‚ β•™αšœfungi_lang::examples::trie_nat::static_tests:176 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check value Inj2, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check value Inj2, error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2828 [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:40 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ref check rule: [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638cffb313 - fungi_lang::examples::pure_list_nat::static_tests::typing::help::h10fe556def0cc584 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638cff9041 - fungi_lang::examples::pure_list_nat::static_tests::typing::{{closure}}::hadff4ed69a3bba64 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000e31 - std::sys_common::backtrace::__rust_begin_short_backtrace::hacd642ee1d5e7fea [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2121 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h04db7757bd54d421 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdece20 - as core::ops::function::FnOnce<()>>::call_once::h3610476b53f22b4f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf6493d - std::panicking::try::do_call::h9a092a0cab1783b1 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf636a7 - std::panicking::try::he702b0e1d79fe573 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded3c1 - std::panic::catch_unwind::h805b971bb72b5f1d [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfd142d - std::thread::Builder::spawn_unchecked::{{closure}}::hd2cb935e4d326cf0 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb2378 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hfdfd81a0fbbb55ae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ref_name_sugar β‡’ Nm[X2βˆ™{Z}] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2729 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ roll inj2 inj2 pack[X1l] pack[X1r βŠ₯ X2] (lc, tx) ⇐ Error: parameter 0 type mismatch  [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ } else { [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: ref [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2731 [INFO] [stdout] test examples::pure_list_nat::static_tests::typing ... FAILED [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: parameter 1 type incorrect [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ βœ” [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression IfThenElse, error: parameter 1 type mismatch  [INFO] [stdout] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:1694 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Split, error: error later (the 'secondary' subderivation) [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Unpack, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ βˆ€X: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Unpack, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ 𝞴f: Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ 𝞴l: ⌊ListβŒ‹[X][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ Failed to check expression Let, error: error later (the 'secondary' subderivation) [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:40 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638cdb3c16 - fungi_lang::examples::seq_filter::listing::help::h47a5d6d1fabdc46c [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638cd9a381 - fungi_lang::examples::seq_filter::listing::{{closure}}::h3377c7eacd62b6a6 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000f11 - std::sys_common::backtrace::__rust_begin_short_backtrace::heea0316f78a7b050 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2101 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h00f85171c2ee5280 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cded0c0 - as core::ops::function::FnOnce<()>>::call_once::hd57cc324d689d19f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf6442d - std::panicking::try::do_call::h587844d90c4ae3ff [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf63267 - std::panicking::try::hc7eb194f3bcbca59 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded181 - std::panic::catch_unwind::h0fdf5e063d60274c [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfcdd2d - std::thread::Builder::spawn_unchecked::{{closure}}::h3a726a0287011ccd [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1f18 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h5d13682138669336 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2733 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ } [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [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] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [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:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists X1 : NmSet [INFO] [stdout] test examples::seq_filter::listing ... FAILED [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] β”‚ β•‘ β”‚ β”‚ β”‚ exists Y1 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ exists Y2 : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to check expression Lam, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ prop Y1 βŠ₯ Y2 ≑ Y : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to check expression Fix, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ Failed to check value ThunkAnon, error: check fail for ceffect ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:1694 [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] β”‚ β•‘ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 [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 let_split_sugar n. sugar_split_snd. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1681 [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] β”‚ β•‘ β”‚ β”‚ β”‚ βˆ€Z1: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split sugar_split_snd h. t. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ βˆ€Z2: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var h : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ βˆ€YZ: NmSet [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] β”‚ β•‘ β”‚ β”‚ β”‚ 𝞴t: ⌊RefTrieβŒ‹[Z1][YZ] [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] β”‚ β•‘ β”‚ β”‚ β”‚ 𝞴x: Nm[Z2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let memo_keyword_sugar = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ 𝞴y: Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1849 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y) 0) name β–² β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ let app_get_sugar_t = ... β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2090 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((((force trie_replrec[Z1][Z2][YZ][{β–²}]) t) x) y) 0 β‡’ ? [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[Z1][Z2][YZ][{β–²}]) t) 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[Z1][Z2][YZ][{β–²}]) t) x β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replrec[Z1][Z2][YZ][{β–²}]) t β‡’ ? [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 trie_replrec[Z1][Z2][YZ][{β–²}] β‡’ ? [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:40 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638d0110f3 - fungi_lang::examples::trie_nat::static_tests::typing::help::hbe734ec16739130d [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638d00ee21 - fungi_lang::examples::trie_nat::static_tests::typing::{{closure}}::h6e81eafd47ad0594 [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000b91 - std::sys_common::backtrace::__rust_begin_short_backtrace::h2f435fd13960a6e3 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd22e1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h4b1df15c37489dc1 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cded0e0 - as core::ops::function::FnOnce<()>>::call_once::he4a8b965d34c032b [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf64aed - std::panicking::try::do_call::hc02d737e9d39c2d6 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf62057 - std::panicking::try::h4d1538ffa4177716 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded2e1 - std::panic::catch_unwind::h494f2be3b610c923 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfcda6d - std::thread::Builder::spawn_unchecked::{{closure}}::h35fd7b3253e437b3 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb21f8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hd5ab809ee03ba7e6 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force map_filter[X2][Y2]) f) app_get_sugar_t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2][YZ] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force map_filter[X2][Y2]) f β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1][Z2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map_filter[X2][Y2] β‡’ ? [INFO] [stdout] test examples::trie_nat::static_tests::typing ... FAILED [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec[Z1] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map_filter[X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replrec β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force map_filter β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [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 β‡’ βˆ€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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) βŠ† Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [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 γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2024 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  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: ... ⊒ (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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((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:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[Z2] βŠ† Nm[Z2] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y1〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[Z2] βŠ† Nm[Z2] [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1851 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1863 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ thunk synth rule [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ n β‡’ Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: thunk [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1869 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2092 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [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 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; @@β¦—X1β¦˜γ€‰ then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2207 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ refthunk synth rule [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((((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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: refthunk [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2212 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@@β¦—X1⦘; 0〉 then γ€ˆ(𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [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] β”‚ β•‘ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ 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] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ@!(X); Y βŠ₯ @!(X)〉 - γ€ˆ@@β¦—X1⦘ βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2); @@β¦—X1⦘ βˆͺ Y1 βˆͺ Y2 βŠ₯ (𝞴x:NmSet.@@β¦—x⦘)(X2)〉 ≑ γ€ˆ0; Y βŠ₯ @!(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1681 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ split let_split_sugar rt2. t2. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var rt2 : Ref[@@β¦—X1⦘](⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)]) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ βˆ€X1: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ var t2 : ⌊ListβŒ‹[X2][(𝞴x:NmSet.@@β¦—x⦘)(X2)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ βˆ€X2: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let oh2 = (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ βˆ€Y: NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ 𝞴l: ⌊RefListβŒ‹[X1][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ 𝞴t: ⌊RefTrieβŒ‹[X2][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ let ln = get l β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ ? [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:2051 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1911 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ force synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ get synth rule [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ f β‡’ Thk[0](γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ l β‡’ ⌊RefListβŒ‹[X1][Y] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: force [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ─────────────────────────────────────────────────────────────────────────────── :: get [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force f β‡’ γ€ˆ0; 0〉Nat β†’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1916 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1917 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2056 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force f) h β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; 0〉 then γ€ˆ0; 0〉 ≑ γ€ˆ0; 0〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ case sugar_match_unroll of ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:1972 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ let oh2 = (force f) h β‡’ γ€ˆ0; 0〉F ⌊OpNatβŒ‹ in [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ ... ⇐ γ€ˆ0; Y βŠ₯ @!(X)〉F ⌊ListβŒ‹[X][@!(X)] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ decide if: ... ⊒ γ€ˆ0; Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ success: ... ⊒ γ€ˆ0; Y βŠ₯ @!(X)〉 - γ€ˆ0; 0〉 ≑ γ€ˆ0; Y βŠ₯ @!(X)〉 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ case oh2 of ... [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] β”‚ β•‘ β”‚ β”‚ β”‚ subcase _u : Unit [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2572 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ exists X1a : NmSet [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ exists X1b : NmSet [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ prop X1a βŠ₯ X1b ≑ X1 : NmSet true [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2574 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ret c β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ subcase h2 : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2577 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β””αšœfungi_lang::bitype:2619 [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nm[X1] βŠ† Nm[X1] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nm[X1] βŠ† Nm[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; 0〉 ≑ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ decide if: ... ⊒ Nat βŠ† Nat [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  success: ... ⊒ Nat βŠ† Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ split let_split_sugar x. sugar_split_snd. ... [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ var x : Nm[X1a] [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚  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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ split sugar_split_snd y. ys. ... [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ var y : Nat [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β””αšœfungi_lang::bitype:2579 [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] β”‚ β•‘ β”‚ β””αšœfungi_lang::bitype:1694 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ let let_split_sugar = ws nmfn 𝞴x:Nm.@@tβˆ™x { (((force trie_replace[X2][X1a][Y]) t) x) y } β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2617 [INFO] [stdout] β”‚ β•‘ β””αšœfungi_lang::bitype:1722 [INFO] [stdout] β”‚ β•‘ } [fungi_lang::examples::list_nat: ?/? ok items] [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ws 𝞴_a:Nm.@@(𝞴x:Nm.@@tβˆ™x(_a)) [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2317 [INFO] [stdout] β”‚ β•™αšœfungi_lang::examples::list_nat::static_tests:155 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (((force trie_replace[X2][X1a][Y]) t) x) y β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ ((force trie_replace[X2][X1a][Y]) t) x β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1944 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ (force trie_replace[X2][X1a][Y]) t β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replace[X2][X1a][Y] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replace[X2][X1a] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:2004 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replace[X2] β‡’ ? [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”Œαšœfungi_lang::bitype:1876 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ force trie_replace β‡’ ? [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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ ... ⊒ 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::bitype:2024 [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] [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] [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〉 - γ€ˆ(𝞴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] thread '' panicked at 'Could not create bundle file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/vis.rs:249:40 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [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] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638d00da73 - fungi_lang::examples::list_nat::static_tests::typing::help::h741c95c00b648cf7 [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638d00b7a1 - fungi_lang::examples::list_nat::static_tests::typing::{{closure}}::h6b5bef9ee664c73e [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000d91 - std::sys_common::backtrace::__rust_begin_short_backtrace::h8f64d2ea0002d0df [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd2341 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h880585302615b09a [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cded060 - as core::ops::function::FnOnce<()>>::call_once::hc80a5505a85caa68 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf64dbd - std::panicking::try::do_call::hd485ff9f34e262fa [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf62497 - std::panicking::try::h65f16d486b35715f [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded481 - std::panic::catch_unwind::hb46f38f90c402000 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfce2ad - std::thread::Builder::spawn_unchecked::{{closure}}::h4a3e16bfe7e4049b [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stdout] β”‚ β•‘ β”‚ β”‚ β”‚ β”‚ β”‚ split let_split_sugar tx. b. ... [INFO] [stderr] 26: 0x55638ccb1eb8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h5ae81659027c80c5 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __clone [INFO] [stderr] 32: 0x0 - [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] test examples::list_nat::static_tests::typing ... FAILED [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:40 [INFO] [stderr] stack backtrace: [INFO] [stderr] 0: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stderr] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stderr] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stderr] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stderr] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stderr] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stderr] at src/libcore/fmt/mod.rs:1076 [INFO] [stderr] 5: 0x55638d2585f2 - std::io::Write::write_fmt::h5ffa1b5a7703af47 [INFO] [stderr] at src/libstd/io/mod.rs:1539 [INFO] [stderr] 6: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stderr] 7: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stderr] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stderr] 8: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stderr] at src/libstd/panicking.rs:198 [INFO] [stderr] 9: 0x55638d25e1ac - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stderr] at src/libstd/panicking.rs:217 [INFO] [stderr] 10: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stderr] at src/libstd/panicking.rs:526 [INFO] [stderr] 11: 0x55638d25e69b - rust_begin_unwind [INFO] [stderr] at src/libstd/panicking.rs:437 [INFO] [stderr] 12: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stderr] at src/libcore/panicking.rs:85 [INFO] [stderr] 13: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stderr] at src/libcore/option.rs:1269 [INFO] [stderr] 14: 0x55638cd11319 - core::result::Result::expect::h9bdeb143e9abfcae [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:963 [INFO] [stderr] 15: 0x55638cd8f066 - fungi_lang::vis::write_bundle::hf0d0d7df9b79ae9f [INFO] [stderr] at src/vis.rs:249 [INFO] [stderr] 16: 0x55638cffe993 - fungi_lang::examples::list_nat_dedup::static_tests::typing::help::h641b0c31a01b168c [INFO] [stderr] at src/vis.rs:197 [INFO] [stderr] 17: 0x55638cffc6c1 - fungi_lang::examples::list_nat_dedup::static_tests::typing::{{closure}}::h0f96375b7cf89c0a [INFO] [stderr] at src/vis.rs:213 [INFO] [stderr] 18: 0x55638d000b31 - std::sys_common::backtrace::__rust_begin_short_backtrace::h1a4bad674b4a80a8 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stderr] 19: 0x55638cfd23a1 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::ha76d1884886e5272 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stderr] 20: 0x55638cdecd60 - as core::ops::function::FnOnce<()>>::call_once::h09343227db1b77f9 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stderr] 21: 0x55638cf644bd - std::panicking::try::do_call::h6b0cb9bf68de1af8 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stderr] 22: 0x55638cf93c5d - __rust_try [INFO] [stderr] 23: 0x55638cf63377 - std::panicking::try::hcb48a248eec39e0e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stderr] 24: 0x55638cded3e1 - std::panic::catch_unwind::ha900711127715f9a [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stderr] 25: 0x55638cfcdfed - std::thread::Builder::spawn_unchecked::{{closure}}::h4598e2c103eeea31 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stderr] 26: 0x55638ccb1ae8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h0fe275d5486abfcc [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stderr] 27: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 28: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stderr] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stderr] 29: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stderr] at src/libstd/sys/unix/thread.rs:87 [INFO] [stderr] 30: 0x7f937a8b3609 - start_thread [INFO] [stderr] 31: 0x7f937a7bf103 - __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: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] 5: 0x55638d036655 - std::io::Write::write_fmt::h4be0daababb55bba [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/io/mod.rs:1539 [INFO] [stdout] 6: 0x55638d2563d1 - std::io::impls::>::write_fmt::h83c1e1aa73f374f5 [INFO] [stdout] at src/libstd/io/impls.rs:176 [INFO] [stdout] 7: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x55638d25e15a - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stdout] at src/libstd/panicking.rs:214 [INFO] [stdout] 11: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stdout] at src/libstd/panicking.rs:526 [INFO] [stdout] 12: 0x55638d25e69b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:437 [INFO] [stdout] 13: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stdout] at src/libcore/panicking.rs:85 [INFO] [stdout] 14: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] at src/libcore/option.rs:1269 [INFO] [stdout] 15: 0x55638d21cf2b - core::result::Result::unwrap::h2ebf8489d90a532a [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x55638cd46e23 - fungi_lang::examples::basic_hostobj::color::docolors::h37b5a777118da0eb [INFO] [stdout] at src/examples/basic_hostobj.rs:71 [INFO] [stdout] 17: 0x55638cd4568a - fungi_lang::examples::basic_hostobj::color::docolors::{{closure}}::ha73413ab71822a5f [INFO] [stdout] at src/examples/basic_hostobj.rs:70 [INFO] [stdout] 18: 0x55638ccb25be - core::ops::function::FnOnce::call_once::h2eb08114333d52f6 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 19: 0x55638d05dbcc - as core::ops::function::FnOnce>::call_once::h8340ba6798e0c4ff [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 20: 0x55638d05dbcc - as core::ops::function::FnOnce<()>>::call_once::h5590e98676605094 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x55638d05dbcc - std::panicking::try::do_call::hd8680a2dbb0ed3c4 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 22: 0x55638d05dbcc - std::panicking::try::h46b4de2d705e7a8d [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 23: 0x55638d05dbcc - std::panic::catch_unwind::h059b3f06991e0a9c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x55638d05dbcc - test::run_test_in_process::h5ae08a65430494a4 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x55638d05dbcc - test::run_test::run_test_inner::{{closure}}::h4b36073838376ae8 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x55638d035b46 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0169d0be588b8bf0 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h71bfc37e887d3973 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x55638d03ab35 - as core::ops::function::FnOnce<()>>::call_once::h36c65072907dc180 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x55638d03ab35 - std::panicking::try::do_call::h4e0f426e17cd216c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 30: 0x55638d03ab35 - std::panicking::try::hd05e4ef6b4303d29 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 31: 0x55638d03ab35 - std::panic::catch_unwind::h19a1127ec729c5dd [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::h011300735f06b1e2 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x55638d03ab35 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1e3c55f31f1d122e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 34: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 35: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 36: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f937a8b3609 - start_thread [INFO] [stdout] 38: 0x7f937a7bf103 - __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: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] 5: 0x55638d036655 - std::io::Write::write_fmt::h4be0daababb55bba [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/io/mod.rs:1539 [INFO] [stdout] 6: 0x55638d2563d1 - std::io::impls::>::write_fmt::h83c1e1aa73f374f5 [INFO] [stdout] at src/libstd/io/impls.rs:176 [INFO] [stdout] 7: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x55638d25e15a - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stdout] at src/libstd/panicking.rs:214 [INFO] [stdout] 11: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stdout] at src/libstd/panicking.rs:526 [INFO] [stdout] 12: 0x55638d25e69b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:437 [INFO] [stdout] 13: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stdout] at src/libcore/panicking.rs:85 [INFO] [stdout] 14: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] at src/libcore/option.rs:1269 [INFO] [stdout] 15: 0x55638cd117ee - core::result::Result::unwrap::h4ce96d78743fcb24 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x55638ce8c90e - fungi_lang::examples::basic_write_effects::listing0::h17432bf63a71748d [INFO] [stdout] at src/examples/basic_write_effects.rs:2 [INFO] [stdout] 17: 0x55638ce8c72a - fungi_lang::examples::basic_write_effects::listing0::{{closure}}::h670b8a509202ab44 [INFO] [stdout] at src/examples/basic_write_effects.rs:2 [INFO] [stdout] 18: 0x55638ccb291e - core::ops::function::FnOnce::call_once::h7c76f497a0181f65 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 19: 0x55638d05dbcc - as core::ops::function::FnOnce>::call_once::h8340ba6798e0c4ff [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 20: 0x55638d05dbcc - as core::ops::function::FnOnce<()>>::call_once::h5590e98676605094 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x55638d05dbcc - std::panicking::try::do_call::hd8680a2dbb0ed3c4 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 22: 0x55638d05dbcc - std::panicking::try::h46b4de2d705e7a8d [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 23: 0x55638d05dbcc - std::panic::catch_unwind::h059b3f06991e0a9c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x55638d05dbcc - test::run_test_in_process::h5ae08a65430494a4 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x55638d05dbcc - test::run_test::run_test_inner::{{closure}}::h4b36073838376ae8 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x55638d035b46 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0169d0be588b8bf0 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h71bfc37e887d3973 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x55638d03ab35 - as core::ops::function::FnOnce<()>>::call_once::h36c65072907dc180 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x55638d03ab35 - std::panicking::try::do_call::h4e0f426e17cd216c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 30: 0x55638d03ab35 - std::panicking::try::hd05e4ef6b4303d29 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 31: 0x55638d03ab35 - std::panic::catch_unwind::h19a1127ec729c5dd [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::h011300735f06b1e2 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x55638d03ab35 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1e3c55f31f1d122e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 34: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 35: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 36: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f937a8b3609 - start_thread [INFO] [stdout] 38: 0x7f937a7bf103 - __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: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] 5: 0x55638d036655 - std::io::Write::write_fmt::h4be0daababb55bba [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/io/mod.rs:1539 [INFO] [stdout] 6: 0x55638d2563d1 - std::io::impls::>::write_fmt::h83c1e1aa73f374f5 [INFO] [stdout] at src/libstd/io/impls.rs:176 [INFO] [stdout] 7: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x55638d25e15a - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stdout] at src/libstd/panicking.rs:214 [INFO] [stdout] 11: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stdout] at src/libstd/panicking.rs:526 [INFO] [stdout] 12: 0x55638d25e69b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:437 [INFO] [stdout] 13: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stdout] at src/libcore/panicking.rs:85 [INFO] [stdout] 14: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] at src/libcore/option.rs:1269 [INFO] [stdout] 15: 0x55638cd117ee - core::result::Result::unwrap::h4ce96d78743fcb24 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x55638ce91b8e - fungi_lang::examples::basic_write_effects::listing0_fail0_check::hf05caea97c1de03b [INFO] [stdout] at src/examples/basic_write_effects.rs:18 [INFO] [stdout] 17: 0x55638ce919aa - fungi_lang::examples::basic_write_effects::listing0_fail0_check::{{closure}}::hb883abe7397304e4 [INFO] [stdout] at src/examples/basic_write_effects.rs:18 [INFO] [stdout] 18: 0x55638ccb2cde - core::ops::function::FnOnce::call_once::hb2c955c1a0cc19c8 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 19: 0x55638d05dbcc - as core::ops::function::FnOnce>::call_once::h8340ba6798e0c4ff [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 20: 0x55638d05dbcc - as core::ops::function::FnOnce<()>>::call_once::h5590e98676605094 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x55638d05dbcc - std::panicking::try::do_call::hd8680a2dbb0ed3c4 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 22: 0x55638d05dbcc - std::panicking::try::h46b4de2d705e7a8d [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 23: 0x55638d05dbcc - std::panic::catch_unwind::h059b3f06991e0a9c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x55638d05dbcc - test::run_test_in_process::h5ae08a65430494a4 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x55638d05dbcc - test::run_test::run_test_inner::{{closure}}::h4b36073838376ae8 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x55638d035b46 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0169d0be588b8bf0 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h71bfc37e887d3973 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x55638d03ab35 - as core::ops::function::FnOnce<()>>::call_once::h36c65072907dc180 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x55638d03ab35 - std::panicking::try::do_call::h4e0f426e17cd216c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 30: 0x55638d03ab35 - std::panicking::try::hd05e4ef6b4303d29 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 31: 0x55638d03ab35 - std::panic::catch_unwind::h19a1127ec729c5dd [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::h011300735f06b1e2 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x55638d03ab35 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1e3c55f31f1d122e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 34: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 35: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 36: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f937a8b3609 - start_thread [INFO] [stdout] 38: 0x7f937a7bf103 - __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: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] 5: 0x55638d036655 - std::io::Write::write_fmt::h4be0daababb55bba [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/io/mod.rs:1539 [INFO] [stdout] 6: 0x55638d2563d1 - std::io::impls::>::write_fmt::h83c1e1aa73f374f5 [INFO] [stdout] at src/libstd/io/impls.rs:176 [INFO] [stdout] 7: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x55638d25e15a - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stdout] at src/libstd/panicking.rs:214 [INFO] [stdout] 11: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stdout] at src/libstd/panicking.rs:526 [INFO] [stdout] 12: 0x55638d25e69b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:437 [INFO] [stdout] 13: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stdout] at src/libcore/panicking.rs:85 [INFO] [stdout] 14: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] at src/libcore/option.rs:1269 [INFO] [stdout] 15: 0x55638cd117ee - core::result::Result::unwrap::h4ce96d78743fcb24 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x55638d02689e - fungi_lang::examples::basic_subtyping::listing1_check::h8e809c5eca48b519 [INFO] [stdout] at src/examples/basic_subtyping.rs:45 [INFO] [stdout] 17: 0x55638d0266ba - fungi_lang::examples::basic_subtyping::listing1_check::{{closure}}::h4050930bbd4ef099 [INFO] [stdout] at src/examples/basic_subtyping.rs:45 [INFO] [stdout] 18: 0x55638ccb285e - core::ops::function::FnOnce::call_once::h66a5616c44f0365c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 19: 0x55638d05dbcc - as core::ops::function::FnOnce>::call_once::h8340ba6798e0c4ff [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 20: 0x55638d05dbcc - as core::ops::function::FnOnce<()>>::call_once::h5590e98676605094 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x55638d05dbcc - std::panicking::try::do_call::hd8680a2dbb0ed3c4 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 22: 0x55638d05dbcc - std::panicking::try::h46b4de2d705e7a8d [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 23: 0x55638d05dbcc - std::panic::catch_unwind::h059b3f06991e0a9c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x55638d05dbcc - test::run_test_in_process::h5ae08a65430494a4 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x55638d05dbcc - test::run_test::run_test_inner::{{closure}}::h4b36073838376ae8 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x55638d035b46 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0169d0be588b8bf0 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h71bfc37e887d3973 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x55638d03ab35 - as core::ops::function::FnOnce<()>>::call_once::h36c65072907dc180 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x55638d03ab35 - std::panicking::try::do_call::h4e0f426e17cd216c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 30: 0x55638d03ab35 - std::panicking::try::hd05e4ef6b4303d29 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 31: 0x55638d03ab35 - std::panic::catch_unwind::h19a1127ec729c5dd [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::h011300735f06b1e2 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x55638d03ab35 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1e3c55f31f1d122e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 34: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 35: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 36: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f937a8b3609 - start_thread [INFO] [stdout] 38: 0x7f937a7bf103 - __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: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] 5: 0x55638d036655 - std::io::Write::write_fmt::h4be0daababb55bba [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/io/mod.rs:1539 [INFO] [stdout] 6: 0x55638d2563d1 - std::io::impls::>::write_fmt::h83c1e1aa73f374f5 [INFO] [stdout] at src/libstd/io/impls.rs:176 [INFO] [stdout] 7: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x55638d25e15a - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stdout] at src/libstd/panicking.rs:214 [INFO] [stdout] 11: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stdout] at src/libstd/panicking.rs:526 [INFO] [stdout] 12: 0x55638d25e69b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:437 [INFO] [stdout] 13: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stdout] at src/libcore/panicking.rs:85 [INFO] [stdout] 14: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] at src/libcore/option.rs:1269 [INFO] [stdout] 15: 0x55638cd117ee - core::result::Result::unwrap::h4ce96d78743fcb24 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x55638d01f4de - fungi_lang::examples::basic_subtyping::listing0_pair::he6d442e15fde5f83 [INFO] [stdout] at src/examples/basic_subtyping.rs:23 [INFO] [stdout] 17: 0x55638d01f2fa - fungi_lang::examples::basic_subtyping::listing0_pair::{{closure}}::h2519e198b18c3f72 [INFO] [stdout] at src/examples/basic_subtyping.rs:23 [INFO] [stdout] 18: 0x55638ccb2b9e - core::ops::function::FnOnce::call_once::h98eabd8a78ed5a4e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 19: 0x55638d05dbcc - as core::ops::function::FnOnce>::call_once::h8340ba6798e0c4ff [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 20: 0x55638d05dbcc - as core::ops::function::FnOnce<()>>::call_once::h5590e98676605094 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x55638d05dbcc - std::panicking::try::do_call::hd8680a2dbb0ed3c4 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 22: 0x55638d05dbcc - std::panicking::try::h46b4de2d705e7a8d [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 23: 0x55638d05dbcc - std::panic::catch_unwind::h059b3f06991e0a9c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x55638d05dbcc - test::run_test_in_process::h5ae08a65430494a4 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x55638d05dbcc - test::run_test::run_test_inner::{{closure}}::h4b36073838376ae8 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x55638d035b46 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0169d0be588b8bf0 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h71bfc37e887d3973 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x55638d03ab35 - as core::ops::function::FnOnce<()>>::call_once::h36c65072907dc180 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x55638d03ab35 - std::panicking::try::do_call::h4e0f426e17cd216c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 30: 0x55638d03ab35 - std::panicking::try::hd05e4ef6b4303d29 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 31: 0x55638d03ab35 - std::panic::catch_unwind::h19a1127ec729c5dd [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::h011300735f06b1e2 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x55638d03ab35 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1e3c55f31f1d122e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 34: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 35: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 36: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f937a8b3609 - start_thread [INFO] [stdout] 38: 0x7f937a7bf103 - __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: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] 5: 0x55638d036655 - std::io::Write::write_fmt::h4be0daababb55bba [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/io/mod.rs:1539 [INFO] [stdout] 6: 0x55638d2563d1 - std::io::impls::>::write_fmt::h83c1e1aa73f374f5 [INFO] [stdout] at src/libstd/io/impls.rs:176 [INFO] [stdout] 7: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x55638d25e15a - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stdout] at src/libstd/panicking.rs:214 [INFO] [stdout] 11: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stdout] at src/libstd/panicking.rs:526 [INFO] [stdout] 12: 0x55638d25e69b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:437 [INFO] [stdout] 13: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stdout] at src/libcore/panicking.rs:85 [INFO] [stdout] 14: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] at src/libcore/option.rs:1269 [INFO] [stdout] 15: 0x55638cd117ee - core::result::Result::unwrap::h4ce96d78743fcb24 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x55638cfb285e - fungi_lang::examples::basic_read_effects::listing0_ok::hb76d9f09a2ae9906 [INFO] [stdout] at src/examples/basic_read_effects.rs:2 [INFO] [stdout] 17: 0x55638cfb267a - fungi_lang::examples::basic_read_effects::listing0_ok::{{closure}}::ha5a15a91a3c2585d [INFO] [stdout] at src/examples/basic_read_effects.rs:2 [INFO] [stdout] 18: 0x55638ccb324e - core::ops::function::FnOnce::call_once::hf5edd931592fc5af [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 19: 0x55638d05dbcc - as core::ops::function::FnOnce>::call_once::h8340ba6798e0c4ff [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 20: 0x55638d05dbcc - as core::ops::function::FnOnce<()>>::call_once::h5590e98676605094 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x55638d05dbcc - std::panicking::try::do_call::hd8680a2dbb0ed3c4 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 22: 0x55638d05dbcc - std::panicking::try::h46b4de2d705e7a8d [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 23: 0x55638d05dbcc - std::panic::catch_unwind::h059b3f06991e0a9c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x55638d05dbcc - test::run_test_in_process::h5ae08a65430494a4 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x55638d05dbcc - test::run_test::run_test_inner::{{closure}}::h4b36073838376ae8 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x55638d035b46 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0169d0be588b8bf0 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h71bfc37e887d3973 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x55638d03ab35 - as core::ops::function::FnOnce<()>>::call_once::h36c65072907dc180 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x55638d03ab35 - std::panicking::try::do_call::h4e0f426e17cd216c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 30: 0x55638d03ab35 - std::panicking::try::hd05e4ef6b4303d29 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 31: 0x55638d03ab35 - std::panic::catch_unwind::h19a1127ec729c5dd [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::h011300735f06b1e2 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x55638d03ab35 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1e3c55f31f1d122e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 34: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 35: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 36: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f937a8b3609 - start_thread [INFO] [stdout] 38: 0x7f937a7bf103 - __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: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] 5: 0x55638d036655 - std::io::Write::write_fmt::h4be0daababb55bba [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/io/mod.rs:1539 [INFO] [stdout] 6: 0x55638d2563d1 - std::io::impls::>::write_fmt::h83c1e1aa73f374f5 [INFO] [stdout] at src/libstd/io/impls.rs:176 [INFO] [stdout] 7: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x55638d25e15a - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stdout] at src/libstd/panicking.rs:214 [INFO] [stdout] 11: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stdout] at src/libstd/panicking.rs:526 [INFO] [stdout] 12: 0x55638d25e69b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:437 [INFO] [stdout] 13: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stdout] at src/libcore/panicking.rs:85 [INFO] [stdout] 14: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] at src/libcore/option.rs:1269 [INFO] [stdout] 15: 0x55638cd117ee - core::result::Result::unwrap::h4ce96d78743fcb24 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x55638cfbbc3e - fungi_lang::examples::basic_read_effects::listing1_ok::h27baeefa768b5260 [INFO] [stdout] at src/examples/basic_read_effects.rs:35 [INFO] [stdout] 17: 0x55638cfbba5a - fungi_lang::examples::basic_read_effects::listing1_ok::{{closure}}::h18c0550f73ad20c9 [INFO] [stdout] at src/examples/basic_read_effects.rs:35 [INFO] [stdout] 18: 0x55638ccb263e - core::ops::function::FnOnce::call_once::h3c5c688acdb1bf50 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 19: 0x55638d05dbcc - as core::ops::function::FnOnce>::call_once::h8340ba6798e0c4ff [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 20: 0x55638d05dbcc - as core::ops::function::FnOnce<()>>::call_once::h5590e98676605094 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x55638d05dbcc - std::panicking::try::do_call::hd8680a2dbb0ed3c4 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 22: 0x55638d05dbcc - std::panicking::try::h46b4de2d705e7a8d [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 23: 0x55638d05dbcc - std::panic::catch_unwind::h059b3f06991e0a9c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x55638d05dbcc - test::run_test_in_process::h5ae08a65430494a4 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x55638d05dbcc - test::run_test::run_test_inner::{{closure}}::h4b36073838376ae8 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x55638d035b46 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0169d0be588b8bf0 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h71bfc37e887d3973 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x55638d03ab35 - as core::ops::function::FnOnce<()>>::call_once::h36c65072907dc180 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x55638d03ab35 - std::panicking::try::do_call::h4e0f426e17cd216c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 30: 0x55638d03ab35 - std::panicking::try::hd05e4ef6b4303d29 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 31: 0x55638d03ab35 - std::panic::catch_unwind::h19a1127ec729c5dd [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::h011300735f06b1e2 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x55638d03ab35 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1e3c55f31f1d122e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 34: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 35: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 36: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f937a8b3609 - start_thread [INFO] [stdout] 38: 0x7f937a7bf103 - __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: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] 5: 0x55638d036655 - std::io::Write::write_fmt::h4be0daababb55bba [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/io/mod.rs:1539 [INFO] [stdout] 6: 0x55638d2563d1 - std::io::impls::>::write_fmt::h83c1e1aa73f374f5 [INFO] [stdout] at src/libstd/io/impls.rs:176 [INFO] [stdout] 7: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x55638d25e15a - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stdout] at src/libstd/panicking.rs:214 [INFO] [stdout] 11: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stdout] at src/libstd/panicking.rs:526 [INFO] [stdout] 12: 0x55638d25e69b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:437 [INFO] [stdout] 13: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stdout] at src/libcore/panicking.rs:85 [INFO] [stdout] 14: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] at src/libcore/option.rs:1269 [INFO] [stdout] 15: 0x55638cd117ee - core::result::Result::unwrap::h4ce96d78743fcb24 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x55638cfb743e - fungi_lang::examples::basic_read_effects::listing0_err::hc3fe5d080b351d50 [INFO] [stdout] at src/examples/basic_read_effects.rs:18 [INFO] [stdout] 17: 0x55638cfb725a - fungi_lang::examples::basic_read_effects::listing0_err::{{closure}}::hc00a5327bf6f7d9f [INFO] [stdout] at src/examples/basic_read_effects.rs:18 [INFO] [stdout] 18: 0x55638ccb30fe - core::ops::function::FnOnce::call_once::hea24c5891dab2e17 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 19: 0x55638d05dbcc - as core::ops::function::FnOnce>::call_once::h8340ba6798e0c4ff [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 20: 0x55638d05dbcc - as core::ops::function::FnOnce<()>>::call_once::h5590e98676605094 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x55638d05dbcc - std::panicking::try::do_call::hd8680a2dbb0ed3c4 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 22: 0x55638d05dbcc - std::panicking::try::h46b4de2d705e7a8d [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 23: 0x55638d05dbcc - std::panic::catch_unwind::h059b3f06991e0a9c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x55638d05dbcc - test::run_test_in_process::h5ae08a65430494a4 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x55638d05dbcc - test::run_test::run_test_inner::{{closure}}::h4b36073838376ae8 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x55638d035b46 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0169d0be588b8bf0 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h71bfc37e887d3973 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x55638d03ab35 - as core::ops::function::FnOnce<()>>::call_once::h36c65072907dc180 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x55638d03ab35 - std::panicking::try::do_call::h4e0f426e17cd216c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 30: 0x55638d03ab35 - std::panicking::try::hd05e4ef6b4303d29 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 31: 0x55638d03ab35 - std::panic::catch_unwind::h19a1127ec729c5dd [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::h011300735f06b1e2 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x55638d03ab35 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1e3c55f31f1d122e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 34: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 35: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 36: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f937a8b3609 - start_thread [INFO] [stdout] 38: 0x7f937a7bf103 - __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: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] 5: 0x55638d036655 - std::io::Write::write_fmt::h4be0daababb55bba [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/io/mod.rs:1539 [INFO] [stdout] 6: 0x55638d2563d1 - std::io::impls::>::write_fmt::h83c1e1aa73f374f5 [INFO] [stdout] at src/libstd/io/impls.rs:176 [INFO] [stdout] 7: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x55638d25e15a - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stdout] at src/libstd/panicking.rs:214 [INFO] [stdout] 11: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stdout] at src/libstd/panicking.rs:526 [INFO] [stdout] 12: 0x55638d25e69b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:437 [INFO] [stdout] 13: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stdout] at src/libcore/panicking.rs:85 [INFO] [stdout] 14: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] at src/libcore/option.rs:1269 [INFO] [stdout] 15: 0x55638cd117ee - core::result::Result::unwrap::h4ce96d78743fcb24 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x55638d018fde - fungi_lang::examples::basic_subtyping::listing0_one::hfbafe1189050118a [INFO] [stdout] at src/examples/basic_subtyping.rs:2 [INFO] [stdout] 17: 0x55638d018dfa - fungi_lang::examples::basic_subtyping::listing0_one::{{closure}}::ha804e4206f2f2c37 [INFO] [stdout] at src/examples/basic_subtyping.rs:2 [INFO] [stdout] 18: 0x55638ccb2f5e - core::ops::function::FnOnce::call_once::hcf5207adc0a32778 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 19: 0x55638d05dbcc - as core::ops::function::FnOnce>::call_once::h8340ba6798e0c4ff [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 20: 0x55638d05dbcc - as core::ops::function::FnOnce<()>>::call_once::h5590e98676605094 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x55638d05dbcc - std::panicking::try::do_call::hd8680a2dbb0ed3c4 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 22: 0x55638d05dbcc - std::panicking::try::h46b4de2d705e7a8d [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 23: 0x55638d05dbcc - std::panic::catch_unwind::h059b3f06991e0a9c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x55638d05dbcc - test::run_test_in_process::h5ae08a65430494a4 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x55638d05dbcc - test::run_test::run_test_inner::{{closure}}::h4b36073838376ae8 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x55638d035b46 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0169d0be588b8bf0 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h71bfc37e887d3973 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x55638d03ab35 - as core::ops::function::FnOnce<()>>::call_once::h36c65072907dc180 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x55638d03ab35 - std::panicking::try::do_call::h4e0f426e17cd216c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 30: 0x55638d03ab35 - std::panicking::try::hd05e4ef6b4303d29 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 31: 0x55638d03ab35 - std::panic::catch_unwind::h19a1127ec729c5dd [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::h011300735f06b1e2 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x55638d03ab35 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1e3c55f31f1d122e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 34: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 35: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 36: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f937a8b3609 - start_thread [INFO] [stdout] 38: 0x7f937a7bf103 - __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: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] 5: 0x55638d036655 - std::io::Write::write_fmt::h4be0daababb55bba [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/io/mod.rs:1539 [INFO] [stdout] 6: 0x55638d2563d1 - std::io::impls::>::write_fmt::h83c1e1aa73f374f5 [INFO] [stdout] at src/libstd/io/impls.rs:176 [INFO] [stdout] 7: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x55638d25e15a - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stdout] at src/libstd/panicking.rs:214 [INFO] [stdout] 11: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stdout] at src/libstd/panicking.rs:526 [INFO] [stdout] 12: 0x55638d25e69b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:437 [INFO] [stdout] 13: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stdout] at src/libcore/panicking.rs:85 [INFO] [stdout] 14: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] at src/libcore/option.rs:1269 [INFO] [stdout] 15: 0x55638cd117ee - core::result::Result::unwrap::h4ce96d78743fcb24 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x55638cf46dee - fungi_lang::examples::basic_existentials::listing1_ok::h2cbf9f4707723f9f [INFO] [stdout] at src/examples/basic_existentials.rs:27 [INFO] [stdout] 17: 0x55638cf46c0a - fungi_lang::examples::basic_existentials::listing1_ok::{{closure}}::h6a3c8aef54b0ac83 [INFO] [stdout] at src/examples/basic_existentials.rs:27 [INFO] [stdout] 18: 0x55638ccb2eee - core::ops::function::FnOnce::call_once::hcafe943ce588cc4e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 19: 0x55638d05dbcc - as core::ops::function::FnOnce>::call_once::h8340ba6798e0c4ff [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 20: 0x55638d05dbcc - as core::ops::function::FnOnce<()>>::call_once::h5590e98676605094 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x55638d05dbcc - std::panicking::try::do_call::hd8680a2dbb0ed3c4 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 22: 0x55638d05dbcc - std::panicking::try::h46b4de2d705e7a8d [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 23: 0x55638d05dbcc - std::panic::catch_unwind::h059b3f06991e0a9c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x55638d05dbcc - test::run_test_in_process::h5ae08a65430494a4 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x55638d05dbcc - test::run_test::run_test_inner::{{closure}}::h4b36073838376ae8 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x55638d035b46 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0169d0be588b8bf0 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h71bfc37e887d3973 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x55638d03ab35 - as core::ops::function::FnOnce<()>>::call_once::h36c65072907dc180 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x55638d03ab35 - std::panicking::try::do_call::h4e0f426e17cd216c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 30: 0x55638d03ab35 - std::panicking::try::hd05e4ef6b4303d29 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 31: 0x55638d03ab35 - std::panic::catch_unwind::h19a1127ec729c5dd [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::h011300735f06b1e2 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x55638d03ab35 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1e3c55f31f1d122e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 34: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 35: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 36: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f937a8b3609 - start_thread [INFO] [stdout] 38: 0x7f937a7bf103 - __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: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] 5: 0x55638d036655 - std::io::Write::write_fmt::h4be0daababb55bba [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/io/mod.rs:1539 [INFO] [stdout] 6: 0x55638d2563d1 - std::io::impls::>::write_fmt::h83c1e1aa73f374f5 [INFO] [stdout] at src/libstd/io/impls.rs:176 [INFO] [stdout] 7: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x55638d25e15a - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stdout] at src/libstd/panicking.rs:214 [INFO] [stdout] 11: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stdout] at src/libstd/panicking.rs:526 [INFO] [stdout] 12: 0x55638d25e69b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:437 [INFO] [stdout] 13: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stdout] at src/libcore/panicking.rs:85 [INFO] [stdout] 14: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] at src/libcore/option.rs:1269 [INFO] [stdout] 15: 0x55638cd117ee - core::result::Result::unwrap::h4ce96d78743fcb24 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x55638ce880be - fungi_lang::examples::basic_hostobj::color::static_tests::typing::ha7edb9aa6ec050ef [INFO] [stdout] at src/examples/basic_hostobj.rs:55 [INFO] [stdout] 17: 0x55638ce87eda - fungi_lang::examples::basic_hostobj::color::static_tests::typing::{{closure}}::h87c5b68d6c42e98a [INFO] [stdout] at src/examples/basic_hostobj.rs:55 [INFO] [stdout] 18: 0x55638ccb2c4e - core::ops::function::FnOnce::call_once::ha4fd6eee90c5071e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 19: 0x55638d05dbcc - as core::ops::function::FnOnce>::call_once::h8340ba6798e0c4ff [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 20: 0x55638d05dbcc - as core::ops::function::FnOnce<()>>::call_once::h5590e98676605094 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x55638d05dbcc - std::panicking::try::do_call::hd8680a2dbb0ed3c4 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 22: 0x55638d05dbcc - std::panicking::try::h46b4de2d705e7a8d [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 23: 0x55638d05dbcc - std::panic::catch_unwind::h059b3f06991e0a9c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x55638d05dbcc - test::run_test_in_process::h5ae08a65430494a4 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x55638d05dbcc - test::run_test::run_test_inner::{{closure}}::h4b36073838376ae8 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x55638d035b46 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0169d0be588b8bf0 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h71bfc37e887d3973 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x55638d03ab35 - as core::ops::function::FnOnce<()>>::call_once::h36c65072907dc180 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x55638d03ab35 - std::panicking::try::do_call::h4e0f426e17cd216c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 30: 0x55638d03ab35 - std::panicking::try::hd05e4ef6b4303d29 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 31: 0x55638d03ab35 - std::panic::catch_unwind::h19a1127ec729c5dd [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::h011300735f06b1e2 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x55638d03ab35 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1e3c55f31f1d122e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 34: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 35: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 36: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f937a8b3609 - start_thread [INFO] [stdout] 38: 0x7f937a7bf103 - __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: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] 5: 0x55638d036655 - std::io::Write::write_fmt::h4be0daababb55bba [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/io/mod.rs:1539 [INFO] [stdout] 6: 0x55638d2563d1 - std::io::impls::>::write_fmt::h83c1e1aa73f374f5 [INFO] [stdout] at src/libstd/io/impls.rs:176 [INFO] [stdout] 7: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x55638d25e15a - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stdout] at src/libstd/panicking.rs:214 [INFO] [stdout] 11: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stdout] at src/libstd/panicking.rs:526 [INFO] [stdout] 12: 0x55638d25e69b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:437 [INFO] [stdout] 13: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stdout] at src/libcore/panicking.rs:85 [INFO] [stdout] 14: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] at src/libcore/option.rs:1269 [INFO] [stdout] 15: 0x55638cd117ee - core::result::Result::unwrap::h4ce96d78743fcb24 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x55638cf3eeae - fungi_lang::examples::basic_existentials::listing0_ok::hcd27eb8496c4e16f [INFO] [stdout] at src/examples/basic_existentials.rs:2 [INFO] [stdout] 17: 0x55638cf3ecca - fungi_lang::examples::basic_existentials::listing0_ok::{{closure}}::ha9d5921b2f7ae0e8 [INFO] [stdout] at src/examples/basic_existentials.rs:2 [INFO] [stdout] 18: 0x55638ccb306e - core::ops::function::FnOnce::call_once::he7649cce4f4c677f [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 19: 0x55638d05dbcc - as core::ops::function::FnOnce>::call_once::h8340ba6798e0c4ff [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 20: 0x55638d05dbcc - as core::ops::function::FnOnce<()>>::call_once::h5590e98676605094 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x55638d05dbcc - std::panicking::try::do_call::hd8680a2dbb0ed3c4 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 22: 0x55638d05dbcc - std::panicking::try::h46b4de2d705e7a8d [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 23: 0x55638d05dbcc - std::panic::catch_unwind::h059b3f06991e0a9c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x55638d05dbcc - test::run_test_in_process::h5ae08a65430494a4 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x55638d05dbcc - test::run_test::run_test_inner::{{closure}}::h4b36073838376ae8 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x55638d035b46 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0169d0be588b8bf0 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h71bfc37e887d3973 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x55638d03ab35 - as core::ops::function::FnOnce<()>>::call_once::h36c65072907dc180 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x55638d03ab35 - std::panicking::try::do_call::h4e0f426e17cd216c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 30: 0x55638d03ab35 - std::panicking::try::hd05e4ef6b4303d29 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 31: 0x55638d03ab35 - std::panic::catch_unwind::h19a1127ec729c5dd [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::h011300735f06b1e2 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x55638d03ab35 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1e3c55f31f1d122e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 34: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 35: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 36: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f937a8b3609 - start_thread [INFO] [stdout] 38: 0x7f937a7bf103 - __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: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] 5: 0x55638d036655 - std::io::Write::write_fmt::h4be0daababb55bba [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/io/mod.rs:1539 [INFO] [stdout] 6: 0x55638d2563d1 - std::io::impls::>::write_fmt::h83c1e1aa73f374f5 [INFO] [stdout] at src/libstd/io/impls.rs:176 [INFO] [stdout] 7: 0x55638d25e460 - std::sys_common::backtrace::_print::hb55cc635eaf1882e [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 8: 0x55638d25e460 - std::sys_common::backtrace::print::h2b2218fa55714084 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 9: 0x55638d25e460 - std::panicking::default_hook::{{closure}}::h578517c025765cf3 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 10: 0x55638d25e15a - std::panicking::default_hook::h4cafc94c2fc640fb [INFO] [stdout] at src/libstd/panicking.rs:214 [INFO] [stdout] 11: 0x55638d25eaa3 - std::panicking::rust_panic_with_hook::h3eeb5001beeca5c3 [INFO] [stdout] at src/libstd/panicking.rs:526 [INFO] [stdout] 12: 0x55638d25e69b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:437 [INFO] [stdout] 13: 0x55638d282c71 - core::panicking::panic_fmt::h78830ea6a34e7206 [INFO] [stdout] at src/libcore/panicking.rs:85 [INFO] [stdout] 14: 0x55638d282a93 - core::option::expect_none_failed::hf79bbb5ca7e09e08 [INFO] [stdout] at src/libcore/option.rs:1269 [INFO] [stdout] 15: 0x55638cd117ee - core::result::Result::unwrap::h4ce96d78743fcb24 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/result.rs:1005 [INFO] [stdout] 16: 0x55638d02de9e - fungi_lang::examples::basic_subtyping::listing2_synth::hf05ca7dbba5f3cfd [INFO] [stdout] at src/examples/basic_subtyping.rs:62 [INFO] [stdout] 17: 0x55638d02dcba - fungi_lang::examples::basic_subtyping::listing2_synth::{{closure}}::h37351b3da7705a27 [INFO] [stdout] at src/examples/basic_subtyping.rs:62 [INFO] [stdout] 18: 0x55638ccb24ae - core::ops::function::FnOnce::call_once::h1bf4bd9c9f3b6849 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 19: 0x55638d05dbcc - as core::ops::function::FnOnce>::call_once::h8340ba6798e0c4ff [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 20: 0x55638d05dbcc - as core::ops::function::FnOnce<()>>::call_once::h5590e98676605094 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 21: 0x55638d05dbcc - std::panicking::try::do_call::hd8680a2dbb0ed3c4 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 22: 0x55638d05dbcc - std::panicking::try::h46b4de2d705e7a8d [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 23: 0x55638d05dbcc - std::panic::catch_unwind::h059b3f06991e0a9c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 24: 0x55638d05dbcc - test::run_test_in_process::h5ae08a65430494a4 [INFO] [stdout] at src/libtest/lib.rs:541 [INFO] [stdout] 25: 0x55638d05dbcc - test::run_test::run_test_inner::{{closure}}::h4b36073838376ae8 [INFO] [stdout] at src/libtest/lib.rs:450 [INFO] [stdout] 26: 0x55638d035b46 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0169d0be588b8bf0 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/sys_common/backtrace.rs:130 [INFO] [stdout] 27: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h71bfc37e887d3973 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:475 [INFO] [stdout] 28: 0x55638d03ab35 - as core::ops::function::FnOnce<()>>::call_once::h36c65072907dc180 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:318 [INFO] [stdout] 29: 0x55638d03ab35 - std::panicking::try::do_call::h4e0f426e17cd216c [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:348 [INFO] [stdout] 30: 0x55638d03ab35 - std::panicking::try::hd05e4ef6b4303d29 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panicking.rs:325 [INFO] [stdout] 31: 0x55638d03ab35 - std::panic::catch_unwind::h19a1127ec729c5dd [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/panic.rs:394 [INFO] [stdout] 32: 0x55638d03ab35 - std::thread::Builder::spawn_unchecked::{{closure}}::h011300735f06b1e2 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libstd/thread/mod.rs:474 [INFO] [stdout] 33: 0x55638d03ab35 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h1e3c55f31f1d122e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/libcore/ops/function.rs:233 [INFO] [stdout] 34: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::hc0e15d78a519721e [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 35: 0x55638d264c7a - as core::ops::function::FnOnce>::call_once::h211da8fffb09f192 [INFO] [stdout] at /rustc/03a1ea71b075ab964b5278bc6e74cd6c52c36ee0/src/liballoc/boxed.rs:1081 [INFO] [stdout] 36: 0x55638d264c7a - std::sys::unix::thread::Thread::new::thread_start::h29594ddebf23e421 [INFO] [stdout] at src/libstd/sys/unix/thread.rs:87 [INFO] [stdout] 37: 0x7f937a8b3609 - start_thread [INFO] [stdout] 38: 0x7f937a7bf103 - __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: 0x55638d25bd05 - backtrace::backtrace::libunwind::trace::hea89dfbbfe67f40d [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x55638d25bd05 - backtrace::backtrace::trace_unsynchronized::h0513dd713d7644d4 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x55638d25bd05 - std::sys_common::backtrace::_print_fmt::h040abae64e4a24a9 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x55638d25bd05 - ::fmt::hb4bdb37c3c335733 [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x55638d284fbc - core::fmt::write::h540ac4a6a1232abc [INFO] [stdout] at src/libcore/fmt/mod.rs:1076 [INFO] [stdout] 5: 0x55638d036655 - std::io::Write::write_fmt::h4be0daababb55bba [WARN] too many lines in the log, truncating it