I'm having a bit of trouble to get anything with termination checking to run.
I produced a rather simple example:
implement
main0() =
let
fun
fact{n:int} .<n>.
(n: int(n)) : int =
if n > 0
then n * fact(n-1)
else 1
in
println!("fact(5) = ", fact(5))
end
However when compiling this I get `unresolved constraint for termetric being well-founded:
C3NSTRprop(C3TKtermet_isnat(); S2Eapp(S2Ecst(gte_int_int); S2Evar(n(4282)), S2Eint(0)))`.
Can anyone help me figure out what I'm doing wrong?