lean4-htt/tests/lean/funind_errors.lean.expected.out
Kim Morrison 3a408e0e54
feat: change Array.get to take a Nat and a proof (#6032)
This PR changes the signature of `Array.get` to take a Nat and a proof,
rather than a `Fin`, for consistency with the rest of the (planned)
Array API. Note that because of bootstrapping issues we can't provide
`get_elem_tactic` as an autoparameter for the proof. As users will
mostly use the `xs[i]` notation provided by `GetElem`, this hopefully
isn't a problem.

We may restore `Fin` based versions, either here or downstream, as
needed, but they won't be the "main" functions.

---------

Co-authored-by: David Thrane Christiansen <david@davidchristiansen.dk>
2024-11-12 03:30:46 +00:00

23 lines
1 KiB
Text
Raw 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.

funind_errors.lean:4:7-4:26: error: unknown identifier 'doesNotExist.induct'
funind_errors.lean:22:7-22:23: error: invalid field notation, type is not of the form (C ...) where C is a constant
takeWhile
has type
(?m → Bool) → Array ?m → Array ?m
takeWhile.foo.induct.{u_1} {α : Type u_1} (p : α → Bool) (as : Array α) (motive : Nat → Array α → Prop)
(case1 :
∀ (i : Nat) (r : Array α) (h : i < as.size),
let a := as.get i h;
p a = true → motive (i + 1) (r.push a) → motive i r)
(case2 :
∀ (i : Nat) (r : Array α) (h : i < as.size),
let a := as.get i h;
¬p a = true → motive i r)
(case3 : ∀ (i : Nat) (r : Array α), ¬i < as.size → motive i r) (i : Nat) (r : Array α) : motive i r
funind_errors.lean:38:7-38:20: error: invalid field notation, type is not of the form (C ...) where C is a constant
idEven
has type
Even ?m → Even ?m
funind_errors.lean:45:7-45:19: error: invalid field notation, type is not of the form (C ...) where C is a constant
idAcc
has type
Acc ?m ?m → Acc ?m ?m