lean4-htt/tests/elab/doubleReset.lean.out.expected
Garmelon 08eb78a5b2
chore: switch to new test/bench suite (#12590)
This PR sets up the new integrated test/bench suite. It then migrates
all benchmarks and some related tests to the new suite. There's also
some documentation and some linting.

For now, a lot of the old tests are left alone so this PR doesn't become
even larger than it already is. Eventually, all tests should be migrated
to the new suite though so there isn't a confusing mix of two systems.
2026-02-25 13:51:53 +00:00

40 lines
1.8 KiB
Text
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

[Compiler.resetReuse] size: 22
def _private.Init.Data.Array.Basic.0.Array.mapMUnsafe.map._at_.applyProjectionRules.spec_0._redArg newName sz i bs : obj :=
let _x.1 := USize.decLt i sz;
cases _x.1 : obj
| Bool.false =>
return bs
| Bool.true =>
let v := Array.uget ◾ bs i ◾;
cases v : obj
| Prod.mk =>
let fst := oproj[0] v;
let _x.2 := reset[2] v;
cases fst : obj
| Prod.mk =>
let fst := oproj[0] fst;
let snd := oproj[1] fst;
let _x.3 := reset[2] fst;
let _x.4 := 0;
let bs' := Array.uset ◾ bs i _x.4 ◾;
let _x.5 := reuse _x.3 in ctor_0[Prod.mk] fst snd;
let _x.6 := reuse _x.2 in ctor_0[Prod.mk] _x.5 newName;
let _x.7 := 1;
let _x.8 := USize.add i _x.7;
let _x.9 := Array.uset ◾ bs' i _x.6 ◾;
let _x.10 := _private.Init.Data.Array.Basic.0.Array.mapMUnsafe.map._at_.applyProjectionRules.spec_0._redArg newName sz _x.8 _x.9;
return _x.10
[Compiler.resetReuse] size: 3
def applyProjectionRules._redArg projs newName : obj :=
let sz := Array.usize ◾ projs;
let _x.1 := 0;
let _x.2 := _private.Init.Data.Array.Basic.0.Array.mapMUnsafe.map._at_.applyProjectionRules.spec_0._redArg newName sz _x.1 projs;
return _x.2
[Compiler.resetReuse] size: 1
def applyProjectionRules α β γ projs newName : obj :=
let _x.1 := applyProjectionRules._redArg projs newName;
return _x.1
[Compiler.resetReuse] size: 1
def _private.Init.Data.Array.Basic.0.Array.mapMUnsafe.map._at_.applyProjectionRules.spec_0 α β γ newName sz i bs : obj :=
let _x.1 := _private.Init.Data.Array.Basic.0.Array.mapMUnsafe.map._at_.applyProjectionRules.spec_0._redArg newName sz i bs;
return _x.1