Merge branch 'master' of gitlab.mpi-sws.org:FP/LambdaRust-coq
- theories/typing/examples/get_x.v 4 additions, 1 deletiontheories/typing/examples/get_x.v
- theories/typing/examples/init_prod.v 1 addition, 1 deletiontheories/typing/examples/init_prod.v
- theories/typing/examples/lazy_lft.v 1 addition, 1 deletiontheories/typing/examples/lazy_lft.v
- theories/typing/examples/option_as_mut.v 1 addition, 1 deletiontheories/typing/examples/option_as_mut.v
- theories/typing/examples/rebor.v 1 addition, 1 deletiontheories/typing/examples/rebor.v
- theories/typing/examples/unbox.v 1 addition, 1 deletiontheories/typing/examples/unbox.v
- theories/typing/examples/unwrap_or.v 1 addition, 1 deletiontheories/typing/examples/unwrap_or.v
- theories/typing/function.v 9 additions, 1 deletiontheories/typing/function.v
- theories/typing/programs.v 1 addition, 1 deletiontheories/typing/programs.v
- theories/typing/type_context.v 1 addition, 1 deletiontheories/typing/type_context.v
- theories/typing/unsafe/refcell/refmut_code.v 1 addition, 1 deletiontheories/typing/unsafe/refcell/refmut_code.v
-
This commit introduced a bad regression in typing/product.v. In d5ab6f51, that file took <20sec, now it is almost 180sec.
-
I assume this is caused by updating Iris from b0418bd57b9341dbf5e58669c689201daa561bd7 to b863cfd7640f5dccb14c17e9ffefb475f1b7d0d8. Unfortunately, that diff is very big as it contains removing the prelude...
-
Since LambdaRust commit ce54063e the time of
typing/product.v
is back < 20 times.The culprit was Iris commit fd81b328 which made
f_equiv
more powerful (*). In combination with the equality of LambdaRust types that was not sealed off, this resulted in unification unfolding too much.(*) It no longer requires the functions on both sides of the relation to be syntactically the same. Before that Iris commit,
f_equiv
would fail on something like@cons nat x1 y2 ≡ @cons (ofe_car natC) x2 y2
.)Edited by Robbert Krebbers