chore(tests/lean): fix/disable tests
This commit is contained in:
parent
fe2b75aac7
commit
4b022fea01
246 changed files with 452 additions and 1492 deletions
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
import algebra.bundled
|
||||
open algebra
|
||||
|
||||
|
|
|
|||
|
|
@ -1,16 +1 @@
|
|||
438.lean:10:41: error: don't know how to synthesize placeholder
|
||||
P₀ : Type,
|
||||
P : group P₀
|
||||
⊢ Type
|
||||
438.lean:10:39: error: don't know how to synthesize placeholder
|
||||
P₀ : Type,
|
||||
P : group P₀
|
||||
⊢ ?M_1
|
||||
438.lean:10:43: error: don't know how to synthesize placeholder
|
||||
P₀ : Type,
|
||||
P : group P₀
|
||||
⊢ ?M_1
|
||||
438.lean:10:2: error: failed to add declaration 'lambda_morphism.mk' to environment, type has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
Π {P₀ : Type} {P : …},
|
||||
?M_2 = ?M_3 → …
|
||||
438.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
--
|
||||
|
||||
open function
|
||||
|
|
|
|||
|
|
@ -1,36 +1 @@
|
|||
550.lean:43:69: error:invalid 'rewrite' tactic, step produced type incorrect term, details: type mismatch at application
|
||||
eq.symm linv
|
||||
term
|
||||
linv
|
||||
has type
|
||||
finv ∘ func = id
|
||||
but is expected to have type
|
||||
x = id
|
||||
rewrite step failed using pattern
|
||||
finv_1 ∘ func_1
|
||||
proof state:
|
||||
A : Type,
|
||||
f : bijection A,
|
||||
func finv : A → A,
|
||||
linv : finv ∘ func = id,
|
||||
rinv : func ∘ finv = id
|
||||
⊢ mk (finv ∘ func) (finv ∘ func)
|
||||
(eq.rec
|
||||
(eq.rec (eq.rec (eq.rec (eq.rec (eq.refl id) (eq.symm linv)) (eq.symm (comp.left_id func))) (eq.symm rinv))
|
||||
(comp.assoc func finv func))
|
||||
(eq.symm (comp.assoc finv func (finv ∘ func))))
|
||||
(eq.rec
|
||||
(eq.rec (eq.rec (eq.rec (eq.rec (eq.refl id) (eq.symm linv)) (eq.symm (comp.right_id finv))) (eq.symm rinv))
|
||||
(eq.symm (comp.assoc finv func finv)))
|
||||
(comp.assoc (finv ∘ func) finv func)) = id
|
||||
550.lean:43:44: error: don't know how to synthesize placeholder
|
||||
A : Type,
|
||||
f : bijection A,
|
||||
func finv : A → A,
|
||||
linv : finv ∘ func = id,
|
||||
rinv : func ∘ finv = id
|
||||
⊢ inv (mk func finv linv rinv) ∘b mk func finv linv rinv = id
|
||||
550.lean:43:2: error: failed to add declaration 'bijection.inv.linv' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
λ (A : Type) (f : …),
|
||||
bijection.rec_on f ?M_1
|
||||
550.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
open nat
|
||||
variables (P : ℕ → Prop)
|
||||
|
||||
|
|
|
|||
|
|
@ -1,12 +1 @@
|
|||
571.lean:6:2: error:invalid 'cases' tactic, 'Exists' can only eliminate to Prop
|
||||
proof state:
|
||||
P : ℕ → Prop,
|
||||
H : ∃ (n : ℕ), P n
|
||||
⊢ ℕ
|
||||
571.lean:7:0: error: don't know how to synthesize placeholder
|
||||
P : ℕ → Prop,
|
||||
H : ∃ (n : ℕ), P n
|
||||
⊢ ℕ
|
||||
571.lean:7:0: error: failed to add declaration 'example' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
571.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
foo : Π (A : Type) [H : inhabited A], A → A
|
||||
foo' : Π {A : Type} [H : inhabited A] {x : A}, A
|
||||
foo : Π A [H], A → A
|
||||
foo' : Π {A} [H] {x}, A
|
||||
foo ℕ 10 : ℕ
|
||||
definition test : ∀ {A : Type} [H : inhabited A], @foo' ℕ nat.is_inhabited (@has_add.add ℕ nat_has_add 5 5) = 10 :=
|
||||
λ (A : Type) (H : inhabited A), @rfl ℕ (@foo' ℕ nat.is_inhabited (@has_add.add ℕ nat_has_add 5 5))
|
||||
λ A H, @rfl ℕ (@foo' ℕ nat.is_inhabited (@has_add.add ℕ nat_has_add 5 5))
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
tst₁ : Π (A : Type), A → A
|
||||
tst₂ : Π {A : Type}, A → A
|
||||
symm₂ : ∀ {A : Type} (a b : A), a = b → b = a
|
||||
tst₃ : Π (A : Type), A → A
|
||||
tst₁ : Π A, A → A
|
||||
tst₂ : Π {A}, A → A
|
||||
symm₂ : ∀ {A} a b, a = b → b = a
|
||||
tst₃ : Π A, A → A
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
tst₁ : Π (A : Type), A → A
|
||||
tst₂ : Π {A : Type}, A → A
|
||||
symm₂ : ∀ {A : Type} (a b : A), a = b → b = a
|
||||
tst₃ : Π (A : Type), A → A
|
||||
foo : ∀ {A : Type} {a b : A}, a = b → (∀ (c : A), c = b → c = a)
|
||||
tst₁ : Π A, A → A
|
||||
tst₂ : Π {A}, A → A
|
||||
symm₂ : ∀ {A} a b, a = b → b = a
|
||||
tst₃ : Π A, A → A
|
||||
foo : ∀ {A} {a b}, a = b → (∀ c, c = b → c = a)
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
open quot setoid
|
||||
|
||||
variables A B : Type₁
|
||||
|
|
|
|||
|
|
@ -1,9 +1 @@
|
|||
587.lean:13:2: proof state
|
||||
A B : Type₁,
|
||||
s : setoid A,
|
||||
f : A → B,
|
||||
c : ∀ (a₁ a₂ : A), a₁ ≈ a₂ → f a₁ = f a₂,
|
||||
a : A,
|
||||
g h : B → B,
|
||||
gh : g = h
|
||||
⊢ g (f a) = h (f a)
|
||||
587.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -3,8 +3,8 @@ _root_.A : Type₁ → Type₁
|
|||
A : Type.{l} → Type.{l}
|
||||
_root_.A.{1} : Type₁ → Type₁
|
||||
P : B → B
|
||||
_root_.P : Π {n : ℕ}, ℕ → ℕ
|
||||
_root_.P : Π {n}, ℕ → ℕ
|
||||
P : B → B
|
||||
_root_.P.{1} : ?B → ?B
|
||||
@P 2 : B → B
|
||||
@_root_.P.{1} ℕ : Π {n : ℕ}, ℕ → ℕ
|
||||
@_root_.P.{1} ℕ : Π {n}, ℕ → ℕ
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
eq : Π {A : Type}, A → A → Prop
|
||||
eq : Π {A}, A → A → Prop
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
import data.list
|
||||
|
||||
constant A : Type₁
|
||||
|
|
|
|||
|
|
@ -1,4 +1 @@
|
|||
f (coe a) : B
|
||||
g (λ (x : C), coe (h x)) : B
|
||||
filter (λ (x : bool), bool_to_Prop (negb x)) [tt, ff, tt, ff] : list bool
|
||||
[ff, ff]
|
||||
644.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
R : Π {b c : bool}, Prop
|
||||
R : Π {b c}, Prop
|
||||
R2 : bool → bool → Prop
|
||||
R3 : bool → bool → Prop
|
||||
R4 : bool → (Π {c : bool}, Prop)
|
||||
R5 : Π {b c : bool}, Prop
|
||||
R6 : Π {b : bool}, bool → Prop
|
||||
R4 : bool → (Π {c}, Prop)
|
||||
R5 : Π {b c}, Prop
|
||||
R6 : Π {b}, bool → Prop
|
||||
|
|
|
|||
|
|
@ -1 +1,2 @@
|
|||
exit
|
||||
check (λ {T : Prop} (t : T), t) bool.tt
|
||||
|
|
|
|||
|
|
@ -1,13 +1 @@
|
|||
669.lean:1:9: error: type error in placeholder assigned to
|
||||
bool
|
||||
placeholder has type
|
||||
Type₁
|
||||
but is expected to have type
|
||||
Prop
|
||||
the assignment was attempted when processing
|
||||
application type constraint
|
||||
(λ {T : Prop} (t : T), t) bool.tt
|
||||
term
|
||||
bool.tt
|
||||
has type
|
||||
bool
|
||||
669.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,2 +1,2 @@
|
|||
protected definition nat.add : ℕ → ℕ → ℕ :=
|
||||
λ (a : ℕ), nat.rec a (λ (b₁ : ℕ), nat.succ)
|
||||
λ a, nat.rec a (λ b₁, nat.succ)
|
||||
|
|
|
|||
|
|
@ -1 +1,2 @@
|
|||
exit
|
||||
check @eq (begin exact empty end) unit.star
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
689.lean:1:29: error: unnecessary tactic was provided, placeholder was automatically synthesized by the elaborator
|
||||
689.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
theorem foo : Type₁ := unit
|
||||
|
||||
example : foo = unit :=
|
||||
|
|
|
|||
|
|
@ -1,4 +1 @@
|
|||
691.lean:4:10: error: invalid 'rewrite' tactic, cannot unfold 'foo' which is still in the theorem queue. Use command 'reveal foo' to access its definition.
|
||||
691.lean:7:11: error: invalid 'rewrite' tactic, cannot unfold 'foo' which is still in the theorem queue. Use command 'reveal foo' to access its definition.
|
||||
691.lean:10:13: error: invalid 'rewrite' tactic, cannot unfold 'foo' which is still in the theorem queue. Use command 'reveal foo' to access its definition.
|
||||
691.lean:13:14: error: invalid 'rewrite' tactic, cannot unfold 'foo' which is still in the theorem queue. Use command 'reveal foo' to access its definition.
|
||||
691.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
open nat
|
||||
|
||||
definition foo [unfold 1 3] (a : nat) (b : nat) (c :nat) : nat :=
|
||||
|
|
|
|||
|
|
@ -1,16 +1 @@
|
|||
693.lean:10:2: proof state
|
||||
c : ℕ,
|
||||
h : c = 1
|
||||
⊢ foo 1 c 0 = foo 1 1 0
|
||||
693.lean:18:2: proof state
|
||||
b c : ℕ,
|
||||
h : c = 1
|
||||
⊢ foo 1 c b = foo 1 1 b
|
||||
693.lean:26:2: proof state
|
||||
b c : ℕ,
|
||||
h : c = 1
|
||||
⊢ foo b c 0 = foo b 1 0
|
||||
693.lean:34:2: proof state
|
||||
b c : ℕ,
|
||||
h : c = 1
|
||||
⊢ foo 1 c 1 = foo c 1 1
|
||||
693.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
set_option pp.all true
|
||||
definition id_1 (n : nat) :=
|
||||
by exact n
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
771.lean:3:3: error: failed to synthesize placeholder, type is a unknown (i.e., it is a metavariable) (solution: provide type explicitly)
|
||||
771.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
open nat
|
||||
|
||||
tactic_notation T1 `:`:15 T2 := tactic.focus (tactic.and_then T1 (tactic.all_goals T2))
|
||||
|
|
|
|||
|
|
@ -1,29 +1 @@
|
|||
775.lean:9:2: proof state
|
||||
P Q : ℕ → ℕ → Prop,
|
||||
p : P 0 0
|
||||
⊢ Q 0 0
|
||||
|
||||
P Q : ℕ → ℕ → Prop,
|
||||
a : ℕ,
|
||||
v_0 : P 0 a → Q 0 a,
|
||||
p : P 0 (succ a)
|
||||
⊢ Q 0 (succ a)
|
||||
|
||||
P Q : ℕ → ℕ → Prop,
|
||||
a : ℕ,
|
||||
v_0 : ∀ (m : ℕ), P a m → Q a m,
|
||||
p : P (succ a) 0
|
||||
⊢ Q (succ a) 0
|
||||
|
||||
P Q : ℕ → ℕ → Prop,
|
||||
a : ℕ,
|
||||
v_0 : ∀ (m : ℕ), P a m → Q a m,
|
||||
a_1 : ℕ,
|
||||
v_0_1 : P (succ a) a_1 → Q (succ a) a_1,
|
||||
p : P (succ a) (succ a_1)
|
||||
⊢ Q (succ a) (succ a_1)
|
||||
|
||||
P Q : ℕ → ℕ → Prop,
|
||||
n m : ℕ,
|
||||
p : P n m
|
||||
⊢ false
|
||||
775.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
open eq.ops
|
||||
|
||||
inductive Nat : Type :=
|
||||
|
|
|
|||
|
|
@ -0,0 +1 @@
|
|||
K_bug.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
definition tst : ℕ
|
||||
(λ (a : Type₁), 2 + 3) ℕ
|
||||
(λ a, 2 + 3) ℕ
|
||||
definition tst : ℕ
|
||||
foo ℕ
|
||||
definition tst1 : ℕ
|
||||
(λ (A : Type₁) (a : A), a) ℕ 10
|
||||
(λ A a, a) ℕ 10
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
acc.rec :
|
||||
Π {A : Type} {R : A → A → Prop} {C : A → Type},
|
||||
(Π (x : A), (∀ (y : A), R y x → acc A R y) → (Π (y : A), R y x → C y) → C x) →
|
||||
(Π {a : A}, acc A R a → C a)
|
||||
Π {A} {R} {C},
|
||||
(Π x, (∀ y, R y x → acc A R y) → (Π y, R y x → C y) → C x) → (Π {a}, acc A R a → C a)
|
||||
|
|
|
|||
|
|
@ -1,12 +1,3 @@
|
|||
F x₁
|
||||
(λ (y : A) (a : R y x₁),
|
||||
acc.rec (λ (x₂ : A) (ac : ∀ (y : A), R y x₂ → acc R y) (iH : Π (y : A), R y x₂ → C y), F x₂ iH)
|
||||
(ac y a))
|
||||
acc.rec (λ (x₂ : A) (ac : ∀ (y : A), R y x₂ → acc R y) (iH : Π (y : A), R y x₂ → C y), F x₂ iH)
|
||||
(acc.intro x₁ ac) :
|
||||
C x₁
|
||||
F x₁
|
||||
(λ (y : A) (a : R y x₁),
|
||||
acc.rec (λ (x₂ : A) (ac : ∀ (y : A), R y x₂ → acc R y) (iH : Π (y : A), R y x₂ → C y), F x₂ iH)
|
||||
(ac y a)) :
|
||||
C x₁
|
||||
F x₁ (λ y a, acc.rec (λ x₂ ac iH, F x₂ iH) (ac y a))
|
||||
acc.rec (λ x₂ ac iH, F x₂ iH) (acc.intro x₁ ac) : C x₁
|
||||
F x₁ (λ y a, acc.rec (λ x₂ ac iH, F x₂ iH) (ac y a)) : C x₁
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
example (a b : Prop) : a ∧ b :=
|
||||
begin
|
||||
apply or.inr
|
||||
|
|
|
|||
|
|
@ -1,13 +1 @@
|
|||
apply_fail.lean:3:2: error:invalid 'apply' tactic, failed to unify
|
||||
a ∧ b
|
||||
with
|
||||
?M_1 ∨ ?M_2
|
||||
proof state:
|
||||
a b : Prop
|
||||
⊢ a ∧ b
|
||||
apply_fail.lean:4:0: error: don't know how to synthesize placeholder
|
||||
a b : Prop
|
||||
⊢ a ∧ b
|
||||
apply_fail.lean:4:0: error: failed to add declaration 'example' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
apply_fail.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
example (a b : Prop) (H : b ∧ a) : a ∧ b :=
|
||||
begin
|
||||
assert H : a
|
||||
|
|
|
|||
|
|
@ -1,22 +1 @@
|
|||
assert_fail.lean:4:0: error: 2 unsolved subgoals
|
||||
a b : Prop,
|
||||
H : b ∧ a
|
||||
⊢ a
|
||||
|
||||
a b : Prop,
|
||||
H : b ∧ a,
|
||||
H : a
|
||||
⊢ a ∧ b
|
||||
assert_fail.lean:4:0: error: failed to add declaration 'example' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
assert_fail.lean:9:2: error:invalid tactic, there are no goals to be solved
|
||||
proof state:
|
||||
no goals
|
||||
assert_fail.lean:10:0: error: don't know how to synthesize placeholder
|
||||
a : Prop,
|
||||
Ha : a
|
||||
⊢ a
|
||||
assert_fail.lean:10:0: error: failed to add declaration 'example' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
assert_fail.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
import data.nat
|
||||
open nat algebra
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1 @@
|
|||
assert_tac2.lean:11:2: proof state
|
||||
a b c : ℕ,
|
||||
h1 : a = 2,
|
||||
h2 : b = 3,
|
||||
H : a + b = 2 + b,
|
||||
H : a + b = 2 + 3,
|
||||
H : a + b = 5
|
||||
⊢ 5 + c = c + 5
|
||||
assert_tac2.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
definition f : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + 1
|
||||
λ a, a + 1
|
||||
definition f [reducible] : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + 1
|
||||
λ a, a + 1
|
||||
definition f : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + 1
|
||||
λ a, a + 1
|
||||
definition f [reducible] : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + 1
|
||||
λ a, a + 1
|
||||
|
|
|
|||
|
|
@ -1,35 +1,35 @@
|
|||
sec 3.
|
||||
definition foo.bah.bla.f [reducible] : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + 1
|
||||
λ a, a + 1
|
||||
definition foo.bah.bla.g [reducible] : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + a
|
||||
λ a, a + a
|
||||
sec 2.
|
||||
definition foo.bah.bla.f [reducible] : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + 1
|
||||
λ a, a + 1
|
||||
definition foo.bah.bla.g [reducible] : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + a
|
||||
λ a, a + a
|
||||
sec 1.
|
||||
definition foo.bah.bla.f [reducible] : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + 1
|
||||
λ a, a + 1
|
||||
definition foo.bah.bla.g [reducible] : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + a
|
||||
λ a, a + a
|
||||
foo.bah.bla.
|
||||
definition foo.bah.bla.f [reducible] : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + 1
|
||||
λ a, a + 1
|
||||
definition foo.bah.bla.g [reducible] : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + a
|
||||
λ a, a + a
|
||||
foo.bah.
|
||||
definition foo.bah.bla.f [reducible] : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + 1
|
||||
λ a, a + 1
|
||||
definition foo.bah.bla.g [reducible] : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + a
|
||||
λ a, a + a
|
||||
foo.
|
||||
definition foo.bah.bla.f : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + 1
|
||||
λ a, a + 1
|
||||
definition foo.bah.bla.g [reducible] : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + a
|
||||
λ a, a + a
|
||||
root.
|
||||
definition foo.bah.bla.f : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + 1
|
||||
λ a, a + 1
|
||||
definition foo.bah.bla.g [reducible] : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + a
|
||||
λ a, a + a
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
definition bla.f : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + 1
|
||||
λ a, a + 1
|
||||
definition bla.f [reducible] : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + 1
|
||||
λ a, a + 1
|
||||
definition bla.f : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + 1
|
||||
λ a, a + 1
|
||||
definition bla.f [reducible] : ℕ → ℕ :=
|
||||
λ (a : ℕ), a + 1
|
||||
λ a, a + 1
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
definition foo : ∀ {A : Type} [_inst_1 : group A] (a b : A), a * b = b * a :=
|
||||
λ (A : Type) (_inst_1 : group A) (a b : A), sorry
|
||||
λ A _inst_1 a b, sorry
|
||||
definition bla : ∀ {B : Type} [_inst_2 : group B] (b : B), b * 1 = b :=
|
||||
λ (B : Type) (_inst_2 : group B) (b : B), sorry
|
||||
λ B _inst_2 b, sorry
|
||||
definition foo2 : ∀ {A : Type} [_inst_1 : group A] (a b : A), a * b = b * a :=
|
||||
λ (A : Type) (_inst_1 : group A) (a b : A), sorry
|
||||
λ A _inst_1 a b, sorry
|
||||
definition bla2 : ∀ {B : Type} [_inst_2 : group B] (b : B), b * 1 = b :=
|
||||
λ (B : Type) (_inst_2 : group B) (b : B), sorry
|
||||
λ B _inst_2 b, sorry
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
constants (A B C : Prop) (H : A → B) (G : A → B → C)
|
||||
constants (T : Type) (f : T → A)
|
||||
attribute H [intro]
|
||||
|
|
|
|||
|
|
@ -1,8 +1 @@
|
|||
constant H [intro] : A → B
|
||||
constant G [intro] : A → B → C
|
||||
constant f [intro] : T → A
|
||||
f
|
||||
G
|
||||
H
|
||||
exists_unique.intro
|
||||
Exists.intro
|
||||
backward_rule1.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,5 @@
|
|||
exit
|
||||
|
||||
constant P : nat → Prop
|
||||
|
||||
lemma tst₀ [forward] : ∀ x, P x := -- Fine
|
||||
|
|
|
|||
|
|
@ -1,17 +1 @@
|
|||
bad_pattern.lean:9:33: error: invalid pattern hint, pattern hints must be applications
|
||||
theorem tst₀ [forward] : ∀ (x : ℕ), P x :=
|
||||
sorry
|
||||
(multi-)patterns:
|
||||
?M_1 : ℕ
|
||||
{P ?M_1}
|
||||
theorem tst₁ [forward] : ∀ (x : ℕ), (:P x:) :=
|
||||
sorry
|
||||
(multi-)patterns:
|
||||
?M_1 : ℕ
|
||||
{P ?M_1}
|
||||
theorem tst₃ [forward] : ∀ (x : ℕ), P (:id x:) :=
|
||||
sorry
|
||||
(multi-)patterns:
|
||||
?M_1 : ℕ
|
||||
{P ?M_1}
|
||||
bad_pattern.lean:20:0: error: pattern inference failed for [forward] annotation, (solution: provide pattern hints using the notation '(: t :)' )
|
||||
bad_pattern.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
import logic
|
||||
open tactic
|
||||
|
||||
|
|
|
|||
|
|
@ -1,25 +1 @@
|
|||
beginend_bug.lean:7:2: error:invalid 'apply' tactic, failed to unify
|
||||
a = ?M_1
|
||||
with
|
||||
b = c
|
||||
proof state:
|
||||
A : Type,
|
||||
a b c : A,
|
||||
Hab : a = b,
|
||||
Hbc : b = c
|
||||
⊢ a = ?M_1
|
||||
|
||||
A : Type,
|
||||
a b c : A,
|
||||
Hab : a = b,
|
||||
Hbc : b = c
|
||||
⊢ ?M_1 = c
|
||||
beginend_bug.lean:9:0: error: don't know how to synthesize placeholder
|
||||
A : Type,
|
||||
a b c : A,
|
||||
Hab : a = b,
|
||||
Hbc : b = c
|
||||
⊢ a = c
|
||||
beginend_bug.lean:9:0: error: failed to add declaration 'foo' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
beginend_bug.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
constant r : nat → Prop
|
||||
constant s : nat → Prop
|
||||
constant p : nat → Prop
|
||||
|
|
|
|||
|
|
@ -1,4 +1 @@
|
|||
definition lemma1 : ∀ (a : ℕ), r a → s a → p a :=
|
||||
λ (a : ℕ) (H.1 : r a) (H.2 : s a), rq₁ a H.1
|
||||
definition lemma2 : ∀ (a : ℕ), r a → s a → p a :=
|
||||
λ (a : ℕ) (H.1 : r a), rq₂ a
|
||||
blast_back2.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
set_option blast.strategy "cc"
|
||||
|
||||
example (C : nat → Type) (f : Π n, C n → C n) (n m : nat) (c : C n) (d : C m) :
|
||||
|
|
|
|||
|
|
@ -1,28 +1 @@
|
|||
blast_cc_not_provable.lean:5:0: error: blast tactic failed
|
||||
strategy 'cc' failed, no proof found, final state:
|
||||
C : ℕ → Type,
|
||||
n m : ℕ,
|
||||
f : Π (n : ℕ), C n → C n,
|
||||
c : C n,
|
||||
d : C m,
|
||||
H.6 : f n == f m,
|
||||
H.7 : c == d
|
||||
⊢ f n c == f m d
|
||||
-------
|
||||
proof state:
|
||||
C : ℕ → Type,
|
||||
f : Π (n : ℕ), C n → C n,
|
||||
n m : ℕ,
|
||||
c : C n,
|
||||
d : C m
|
||||
⊢ f n == f m → c == d → f n c == f m d
|
||||
blast_cc_not_provable.lean:5:0: error: don't know how to synthesize placeholder
|
||||
C : ℕ → Type,
|
||||
f : Π (n : ℕ), C n → C n,
|
||||
n m : ℕ,
|
||||
c : C n,
|
||||
d : C m
|
||||
⊢ f n == f m → c == d → f n c == f m d
|
||||
blast_cc_not_provable.lean:5:0: error: failed to add declaration 'example' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
blast_cc_not_provable.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,19 +1,19 @@
|
|||
bug1.lean:9:7: error: type mismatch at definition 'and_intro1', has type
|
||||
∀ (p q : bool),
|
||||
p → q → (∀ (c : bool), (p → q → c) → c)
|
||||
∀ p q,
|
||||
p → q → (∀ c, (p → q → c) → c)
|
||||
but is expected to have type
|
||||
∀ (p q : bool),
|
||||
∀ p q,
|
||||
p → q → a
|
||||
bug1.lean:13:7: error: type mismatch at definition 'and_intro2', has type
|
||||
∀ (p q : bool),
|
||||
p → q → (∀ (c : bool), (p → q → c) → c)
|
||||
∀ p q,
|
||||
p → q → (∀ c, (p → q → c) → c)
|
||||
but is expected to have type
|
||||
∀ (p q : bool),
|
||||
∀ p q,
|
||||
p → q → p ∧ p
|
||||
bug1.lean:17:7: error: type mismatch at definition 'and_intro3', has type
|
||||
∀ (p q : bool),
|
||||
p → q → (∀ (c : bool), (p → q → c) → c)
|
||||
∀ p q,
|
||||
p → q → (∀ c, (p → q → c) → c)
|
||||
but is expected to have type
|
||||
∀ (p q : bool),
|
||||
∀ p q,
|
||||
p → q → q ∧ p
|
||||
and_intro4 : ∀ (p q : bool), p → q → p ∧ q
|
||||
and_intro4 : ∀ p q, p → q → p ∧ q
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
inductive foo {A : Type} : A → Type :=
|
||||
mk : Π a : A, foo a
|
||||
|
||||
|
|
|
|||
|
|
@ -1,14 +1 @@
|
|||
cases_tac.lean:7:2: proof state
|
||||
A : Type,
|
||||
B : A → Type,
|
||||
a : A,
|
||||
Hb : B a
|
||||
⊢ A
|
||||
cases_tac.lean:17:2: proof state
|
||||
A : Type,
|
||||
B : A → Type,
|
||||
f : A → A,
|
||||
a : A,
|
||||
Hc : a = a,
|
||||
Hb : foo₂.mk (f a) a = foo₂.mk (f a) a
|
||||
⊢ A
|
||||
cases_tac.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
import data.list
|
||||
open list
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1 @@
|
|||
change_tac_fail.lean:10:48: error: type mismatch at application
|
||||
t ++ a
|
||||
term
|
||||
a
|
||||
has type
|
||||
T
|
||||
but is expected to have type
|
||||
list T
|
||||
change_tac_fail.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
and.intro : ?a → ?b → ?a ∧ ?b
|
||||
or.elim : ?a ∨ ?b → (?a → ?c) → (?b → ?c) → ?c
|
||||
eq : ?A → ?A → Prop
|
||||
eq.rec : ?C ?a → (Π {a : ?A}, ?a = a → ?C a)
|
||||
eq.rec : ?C ?a → (Π {a}, ?a = a → ?C a)
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
import data.list
|
||||
open sigma list
|
||||
|
||||
|
|
|
|||
|
|
@ -1,9 +1 @@
|
|||
a :: l : list A
|
||||
check_expr.lean:8:0: error: 1 unsolved subgoal
|
||||
A : Type,
|
||||
l : list A,
|
||||
a b : A
|
||||
⊢ list A
|
||||
check_expr.lean:8:0: error: failed to add declaration 'foo' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
check_expr.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
pr : Π {A : Type}, A → A → A
|
||||
pr : Π {A}, A → A → A
|
||||
pr a b : N
|
||||
pr a b : N
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
open nat
|
||||
|
||||
definition g : nat → nat → nat :=
|
||||
|
|
|
|||
|
|
@ -1,9 +1 @@
|
|||
congr_error_msg.lean:9:0: error: invalid [congr] lemma, 'C₁' the left-hand-side of the congruence resulting type must be of the form (g x_1 ... x_n), where each x_i is a distinct variable or a sort
|
||||
congr_error_msg.lean:12:0: error: invalid [congr] lemma, 'C₂' resulting type is not of the form (g ...) ~ (g ...), where ~ is 'eq'
|
||||
congr_error_msg.lean:15:0: error: invalid [congr] lemma, 'C₃' resulting type is not of the form t ~ s, where '~' is a transitive and reflexive relation
|
||||
congr_error_msg.lean:21:0: error: invalid [congr] lemma, 'C₅' left-hand-side of the congruence resulting type must be of the form (fun/Pi (x : A), B x)
|
||||
congr_error_msg.lean:24:0: error: invalid [congr] lemma, 'C₆' left-hand-side is not an application nor a binding
|
||||
congr_error_msg.lean:27:0: error: invalid [congr] lemma, 'C₇' argument #2 of parameter #5 contains unresolved parameters
|
||||
congr_error_msg.lean:30:0: error: invalid [congr] lemma, 'C₈' argument #5 is not a valid hypothesis, the left-hand-side contains unresolved parameters
|
||||
congr_error_msg.lean:33:0: error: invalid [congr] lemma, 'C₉' argument #6 is not a valid hypothesis, the right-hand-side must be of the form (m l_1 ... l_n) where m is parameter that was not 'assigned/resolved' yet and l_i's are locals
|
||||
congr_error_msg.lean:33:0: error: unknown declaration 'C₁'
|
||||
congr_error_msg.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,19 +1,2 @@
|
|||
theorem perm.perm_erase_dup_of_perm [congr] : ∀ {A : Type} [H : decidable_eq A] {l₁ l₂ : list A}, l₁ ~ l₂ → erase_dup l₁ ~ erase_dup l₂ :=
|
||||
λ (A : Type) (H : decidable_eq A) (l₁ l₂ : list A) (p : l₁ ~ l₂),
|
||||
perm_induction_on p nil
|
||||
(λ (x : A) (t₁ t₂ : list A) (p : t₁ ~ t₂) (r : erase_dup t₁ ~ erase_dup t₂),
|
||||
decidable.by_cases (λ (xint₁ : x ∈ t₁), have xint₂ : x ∈ t₂, from mem_of_mem_erase_dup …, … …)
|
||||
(λ (nxint₁ : x ∉ t₁),
|
||||
have nxint₂ : x ∉ t₂, from λ (xint₂ : x ∈ t₂), … nxint₁,
|
||||
eq.rec … (eq.symm …)))
|
||||
(λ (y x : A) (t₁ t₂ : list A) (p : t₁ ~ t₂) (r : erase_dup t₁ ~ erase_dup t₂),
|
||||
decidable.by_cases
|
||||
(λ (xinyt₁ : x ∈ y :: t₁),
|
||||
decidable.by_cases (λ (yint₁ : …), …)
|
||||
(λ (nyint₁ : y ∉ t₁), have nyint₂ : …, from …, …))
|
||||
(λ (nxinyt₁ : x ∉ y :: t₁),
|
||||
have xney : x ≠ y, from ne_of_not_mem_cons nxinyt₁,
|
||||
have nxint₁ : x ∉ t₁, from not_mem_of_not_mem_cons nxinyt₁,
|
||||
have nxint₂ : x ∉ t₂, from λ (xint₂ : …), …,
|
||||
… …))
|
||||
(λ (t₁ t₂ t₃ : list A) (p₁ : t₁ ~ t₂) (p₂ : t₂ ~ t₃), trans)
|
||||
theorem perm.perm_erase_dup_of_perm : ∀ {A : Type} [H : decidable_eq A] {l₁ l₂ : list A}, l₁ ~ l₂ → erase_dup l₁ ~ erase_dup l₂ :=
|
||||
λ A H l₁ l₂, sorry
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
example : nat :=
|
||||
begin
|
||||
split -- ERROR
|
||||
|
|
|
|||
|
|
@ -1,56 +1 @@
|
|||
constr_tac_errors.lean:3:2: error:invalid 'constructor' tactic, goal is an inductive datatype, but it does not have 1 constructor(s)
|
||||
proof state:
|
||||
|
||||
⊢ ℕ
|
||||
constr_tac_errors.lean:4:0: error: don't know how to synthesize placeholder
|
||||
|
||||
⊢ ℕ
|
||||
constr_tac_errors.lean:4:0: error: failed to add declaration 'example' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
constr_tac_errors.lean:12:2: error:invalid 'constructor' tactic, goal is an inductive datatype, but it does not have 2 constructor(s)
|
||||
proof state:
|
||||
a b : Prop,
|
||||
Ha : a,
|
||||
Hb : b
|
||||
⊢ a ∧ b
|
||||
constr_tac_errors.lean:13:0: error: don't know how to synthesize placeholder
|
||||
a b : Prop
|
||||
⊢ a → b → a ∧ b
|
||||
constr_tac_errors.lean:13:0: error: failed to add declaration 'example' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
constr_tac_errors.lean:18:2: error:invalid 'constructor' tactic, goal is an inductive datatype, but it does not have 2 constructor(s)
|
||||
proof state:
|
||||
a b : Prop,
|
||||
Ha : a,
|
||||
Hb : b
|
||||
⊢ a ∧ b
|
||||
constr_tac_errors.lean:19:0: error: don't know how to synthesize placeholder
|
||||
a b : Prop
|
||||
⊢ a → b → a ∧ b
|
||||
constr_tac_errors.lean:19:0: error: failed to add declaration 'example' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
constr_tac_errors.lean:31:2: error:invalid 'constructor' tactic, too many arguments have been provided
|
||||
proof state:
|
||||
a b : Prop,
|
||||
Ha : a,
|
||||
Hb : b
|
||||
⊢ unit
|
||||
constr_tac_errors.lean:32:0: error: don't know how to synthesize placeholder
|
||||
a b : Prop
|
||||
⊢ a → b → unit
|
||||
constr_tac_errors.lean:32:0: error: failed to add declaration 'example' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
constr_tac_errors.lean:39:2: error:invalid 'constructor' tactic, goal is not an inductive datatype
|
||||
proof state:
|
||||
|
||||
⊢ ℕ → ℕ
|
||||
constr_tac_errors.lean:40:0: error: don't know how to synthesize placeholder
|
||||
|
||||
⊢ ℕ → ℕ
|
||||
constr_tac_errors.lean:40:0: error: failed to add declaration 'example' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
constr_tac_errors.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,10 +1,4 @@
|
|||
ctx.lean:3:0: error: don't know how to synthesize placeholder
|
||||
A B : Type,
|
||||
a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 : ℕ,
|
||||
b1 b2 b3 : bool,
|
||||
h : A = B,
|
||||
p1 p2 : A × B
|
||||
⊢ ℕ
|
||||
don't know how to synthesize placeholder
|
||||
ctx.lean:3:0: error: failed to add declaration 'foo' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
λ (x y z w : A), q (q (q w))
|
||||
A → A → A → (∀ (w : A), q (q (q w)) = w)
|
||||
λ (x y z w : A), q (f (q (q x)) (q (q z)) (q w))
|
||||
∀ (x : A), A → (∀ (z w : A), q (f (q (q x)) (q (q z)) (q w)) = w)
|
||||
λ (x y z w : A), q (q (q w))
|
||||
A → A → A → (∀ (w : A), q (q (q w)) = w)
|
||||
λ (x y z w : A), w
|
||||
A → A → A → (∀ (w : A), w = w)
|
||||
λ x y z w, q (q (q w))
|
||||
A → A → A → (∀ w, q (q (q w)) = w)
|
||||
λ x y z w, q (f (q (q x)) (q (q z)) (q w))
|
||||
∀ x, A → (∀ z w, q (f (q (q x)) (q (q z)) (q w)) = w)
|
||||
λ x y z w, q (q (q w))
|
||||
A → A → A → (∀ w, q (q (q w)) = w)
|
||||
λ x y z w, w
|
||||
A → A → A → (∀ w, w = w)
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
import logic
|
||||
open tactic
|
||||
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
empty_thm.lean:9:28: error: ':=', '.', command, script, or end-of-file expected
|
||||
empty_thm.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,5 @@
|
|||
exit
|
||||
|
||||
inductive foo :=
|
||||
| a | b
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1 @@
|
|||
eq_class_error.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
error_pos_bug.lean:9:0: error: type error in placeholder assigned to
|
||||
λ (a : Category) (b : Category) (c : Category),
|
||||
λ a b c,
|
||||
a
|
||||
placeholder has type
|
||||
Category
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
namespace foo
|
||||
|
||||
definition tst1 : nat → nat → nat :=
|
||||
|
|
|
|||
|
|
@ -1,8 +1 @@
|
|||
errors.lean:4:0: error: unknown identifier 'a'
|
||||
tst1 : ℕ → ℕ → ℕ
|
||||
errors.lean:12:16: error: unknown identifier 'wth'
|
||||
errors.lean:22:12: error: unknown identifier 'b'
|
||||
tst3 : A → A → A
|
||||
foo.tst1 : ℕ → ℕ → ℕ
|
||||
foo.tst2 : ℕ → ℕ → ℕ
|
||||
foo.tst3 : Π (A : Type), A → A → A
|
||||
errors.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
λ (A : Type) (x y : A) (H₁ : x = y) (H₂ : y = x), eq.rec H₁ H₂
|
||||
λ A x y H₁ H₂, eq.rec H₁ H₂
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
example (a b : Prop) : a → b → a ∧ b :=
|
||||
begin
|
||||
intros,
|
||||
|
|
|
|||
|
|
@ -1,23 +1 @@
|
|||
exact_partial.lean:4:19: error: don't know how to synthesize placeholder
|
||||
a b : Prop,
|
||||
a_1 : a,
|
||||
a_2 : b
|
||||
⊢ a
|
||||
exact_partial.lean:4:21: error: don't know how to synthesize placeholder
|
||||
a b : Prop,
|
||||
a_1 : a,
|
||||
a_2 : b
|
||||
⊢ b
|
||||
exact_partial.lean:4:2: error:invalid 'exact' tactic, term still contains metavariables after elaboration
|
||||
and.intro ?M_1 ?M_2
|
||||
proof state:
|
||||
a b : Prop,
|
||||
a_1 : a,
|
||||
a_2 : b
|
||||
⊢ a ∧ b
|
||||
exact_partial.lean:5:0: error: don't know how to synthesize placeholder
|
||||
a b : Prop
|
||||
⊢ a → b → a ∧ b
|
||||
exact_partial.lean:5:0: error: failed to add declaration 'example' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
exact_partial.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
example (a b c : nat) (h₁ : a = b) (h₂ : b = c) : a = c :=
|
||||
begin
|
||||
exact (eq.trans h₁ _)
|
||||
|
|
|
|||
|
|
@ -1,20 +1 @@
|
|||
exact_partial2.lean:3:21: error: don't know how to synthesize placeholder
|
||||
a b c : ℕ,
|
||||
h₁ : a = b,
|
||||
h₂ : b = c
|
||||
⊢ b = c
|
||||
exact_partial2.lean:3:2: error:invalid 'exact' tactic, term still contains metavariables after elaboration
|
||||
eq.trans h₁ ?M_1
|
||||
proof state:
|
||||
a b c : ℕ,
|
||||
h₁ : a = b,
|
||||
h₂ : b = c
|
||||
⊢ a = c
|
||||
exact_partial2.lean:4:0: error: don't know how to synthesize placeholder
|
||||
a b c : ℕ,
|
||||
h₁ : a = b,
|
||||
h₂ : b = c
|
||||
⊢ a = c
|
||||
exact_partial2.lean:4:0: error: failed to add declaration 'example' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
exact_partial2.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,5 +1,2 @@
|
|||
LEAN_INFORMATION
|
||||
position 6:2
|
||||
a b c d : ℕ
|
||||
⊢ a + b = 0 → b = 0 → c + 1 + a = 1 → d = c - 1 → d = 0
|
||||
END_LEAN_INFORMATION
|
||||
show_goal.lean:2:0: warning: imported file uses 'sorry'
|
||||
show_goal.lean:5:0: error: begin-end-exprs have been disabled
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
inductive list (T : Type) : Type := nil {} : list T | cons : T → list T → list T
|
||||
inductive List (T : Type) : Type := nil {} : List T | cons : T → List T → List T
|
||||
|
||||
namespace explicit
|
||||
|
||||
|
|
@ -25,7 +25,7 @@ namespace implicit2
|
|||
inductive ftree (A : Type) (B : Type) : Type :=
|
||||
leafa : A → ftree A B |
|
||||
leafb : B → ftree A B |
|
||||
node : (list A → ftree A B) → (B → ftree A B) → ftree A B
|
||||
node : (List A → ftree A B) → (B → ftree A B) → ftree A B
|
||||
set_option pp.universes true
|
||||
check ftree
|
||||
end implicit2
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
import data.nat
|
||||
open nat
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1 @@
|
|||
gen_as.lean:7:2: proof state
|
||||
x y : ℕ
|
||||
⊢ ∀ (n : ℕ),
|
||||
n ≥ 0
|
||||
gen_as.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
import logic
|
||||
|
||||
set_option pp.notation false
|
||||
|
|
|
|||
|
|
@ -1,23 +1 @@
|
|||
gen_bug.lean:9:2: error:invalid 'generalize' tactic, type error
|
||||
type mismatch at application
|
||||
@heq B b
|
||||
term
|
||||
b
|
||||
has type
|
||||
B_1
|
||||
but is expected to have type
|
||||
B
|
||||
proof state:
|
||||
A B : Type,
|
||||
a : A,
|
||||
b : B,
|
||||
H : @heq A a B b
|
||||
⊢ @heq B b A a
|
||||
gen_bug.lean:12:0: error: don't know how to synthesize placeholder
|
||||
A B : Type,
|
||||
a : A,
|
||||
b : B
|
||||
⊢ @heq A a B b → @heq B b A a
|
||||
gen_bug.lean:12:0: error: failed to add declaration 'tst' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
gen_bug.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
prelude import logic.eq
|
||||
open tactic
|
||||
set_option pp.notation false
|
||||
|
|
|
|||
|
|
@ -1,9 +1 @@
|
|||
goals1.lean:9:0: error: 1 unsolved subgoal
|
||||
A : Type,
|
||||
a b c : A,
|
||||
Hab : eq a b,
|
||||
Hbc : eq b c
|
||||
⊢ eq b c
|
||||
goals1.lean:9:0: error: failed to add declaration 'foo' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
goals1.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ axiom H1 : a = b
|
|||
axiom H2 : b = c
|
||||
|
||||
check have e1 : a = b, from H1,
|
||||
have e2 : a = c, by apply trans; apply e1; apply H2,
|
||||
have e2 : a = c, from sorry, -- by apply trans; apply e1; apply H2,
|
||||
have e3 : c = a, from e2⁻¹,
|
||||
have e4 : b = a, from e1⁻¹,
|
||||
have e5 : b = c, from e4 ⬝ e2,
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
have e1 : a = b, from H1,
|
||||
have e2 : a = c, from e1 ⬝ H2,
|
||||
have e2 : a = c, from sorry,
|
||||
have e3 : c = a, from e2⁻¹,
|
||||
have e4 : b = a, from e1⁻¹,
|
||||
have e5 : b = c, from e4 ⬝ e2,
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
exit
|
||||
example (a b c : nat) : a = b → b = c → a = c :=
|
||||
begin
|
||||
intro h₁ h₂,
|
||||
|
|
|
|||
|
|
@ -1,18 +1 @@
|
|||
have_tactic.lean:4:31: error: don't know how to synthesize placeholder
|
||||
a b c : ℕ,
|
||||
h₁ : a = b,
|
||||
h₂ : b = c
|
||||
⊢ b = c
|
||||
have_tactic.lean:4:19: error:invalid 'exact' tactic, term still contains metavariables after elaboration
|
||||
eq.trans h₁ ?M_1
|
||||
proof state:
|
||||
a b c : ℕ,
|
||||
h₁ : a = b,
|
||||
h₂ : b = c
|
||||
⊢ a = c
|
||||
have_tactic.lean:5:0: error: don't know how to synthesize placeholder
|
||||
a b c : ℕ
|
||||
⊢ a = b → b = c → a = c
|
||||
have_tactic.lean:5:0: error: failed to add declaration 'example' to environment, value has metavariables
|
||||
remark: set 'formatter.hide_full_terms' to false to see the complete term
|
||||
?M_1
|
||||
have_tactic.lean:1:0: warning: using 'exit' to interrupt Lean
|
||||
|
|
|
|||
|
|
@ -1 +1,5 @@
|
|||
inst.lean:11:11:failed to generate bytecode for 'C_magic'
|
||||
code generation failed, VM does not have code for 'magic'
|
||||
inst.lean:21:11:failed to generate bytecode for 'test'
|
||||
code generation failed, VM does not have code for 'magic'
|
||||
C.mk (magic (prod Prop Prop))
|
||||
|
|
|
|||
|
|
@ -1,46 +1,51 @@
|
|||
-- BEGINSET
|
||||
SET_command:1:0: warning: imported file uses 'sorry'
|
||||
-- ENDSET
|
||||
-- BEGINWAIT
|
||||
-- ENDWAIT
|
||||
-- BEGINFINDP
|
||||
bool.tt_bxor_tt|eq (bool.bxor bool.tt bool.tt) bool.ff
|
||||
bool.tt_bxor_ff|eq (bool.bxor bool.tt bool.ff) bool.tt
|
||||
bool.bor_tt|∀ (a : bool), eq (bool.bor a bool.tt) bool.tt
|
||||
bool.band_tt|∀ (a : bool), eq (bool.band a bool.tt) a
|
||||
bool.bor_tt|∀ a, eq (bool.bor a bool.tt) bool.tt
|
||||
bool.band_tt|∀ a, eq (bool.band a bool.tt) a
|
||||
bool.tt|bool
|
||||
bool.bxor_tt|∀ (a : bool), eq (bool.bxor a bool.tt) (bool.bnot a)
|
||||
bool.bxor_tt|∀ a, eq (bool.bxor a bool.tt) (bool.bnot a)
|
||||
bool.eq_tt_of_bnot_eq_ff|eq (bool.bnot ?a) bool.ff → eq ?a bool.tt
|
||||
bool.eq_ff_of_bnot_eq_tt|eq (bool.bnot ?a) bool.tt → eq ?a bool.ff
|
||||
bool.ff_bxor_tt|eq (bool.bxor bool.ff bool.tt) bool.tt
|
||||
bool.absurd_of_eq_ff_of_eq_tt|eq ?a bool.ff → eq ?a bool.tt → ?B
|
||||
bool.eq_tt_of_ne_ff|ne ?a bool.ff → eq ?a bool.tt
|
||||
tactic.with_attributes_tac|tactic.expr → tactic.identifier_list → tactic → tactic
|
||||
bool.tt_band|∀ (a : bool), eq (bool.band bool.tt a) a
|
||||
bool.cond_tt|∀ (t e : ?A), eq (bool.cond bool.tt t e) t
|
||||
bool.tt_band|∀ a, eq (bool.band bool.tt a) a
|
||||
bool.cond_tt|∀ t e, eq (bool.cond bool.tt t e) t
|
||||
environment.mk_hott|nat → environment
|
||||
decidable.tt|?p → decidable ?p
|
||||
bool.ff_ne_tt|eq bool.ff bool.tt → false
|
||||
bool.eq_ff_of_ne_tt|ne ?a bool.tt → eq ?a bool.ff
|
||||
bool.tt_bxor|∀ (a : bool), eq (bool.bxor bool.tt a) (bool.bnot a)
|
||||
bool.tt_bor|∀ (a : bool), eq (bool.bor bool.tt a) bool.tt
|
||||
bool.tt_bxor|∀ a, eq (bool.bxor bool.tt a) (bool.bnot a)
|
||||
bool.tt_bor|∀ a, eq (bool.bor bool.tt a) bool.tt
|
||||
format.flatten|format → format
|
||||
-- ENDFINDP
|
||||
-- BEGINWAIT
|
||||
-- ENDWAIT
|
||||
-- BEGINFINDP
|
||||
tt|bool
|
||||
tt_bor|∀ (a : bool), eq (bor tt a) tt
|
||||
tt_band|∀ (a : bool), eq (band tt a) a
|
||||
tt_bxor|∀ (a : bool), eq (bxor tt a) (bnot a)
|
||||
tt_bor|∀ a, eq (bor tt a) tt
|
||||
tt_band|∀ a, eq (band tt a) a
|
||||
tt_bxor|∀ a, eq (bxor tt a) (bnot a)
|
||||
tt_bxor_tt|eq (bxor tt tt) ff
|
||||
tt_bxor_ff|eq (bxor tt ff) tt
|
||||
bor_tt|∀ (a : bool), eq (bor a tt) tt
|
||||
band_tt|∀ (a : bool), eq (band a tt) a
|
||||
bxor_tt|∀ (a : bool), eq (bxor a tt) (bnot a)
|
||||
bor_tt|∀ a, eq (bor a tt) tt
|
||||
band_tt|∀ a, eq (band a tt) a
|
||||
bxor_tt|∀ a, eq (bxor a tt) (bnot a)
|
||||
eq_tt_of_bnot_eq_ff|eq (bnot ?a) ff → eq ?a tt
|
||||
eq_ff_of_bnot_eq_tt|eq (bnot ?a) tt → eq ?a ff
|
||||
ff_bxor_tt|eq (bxor ff tt) tt
|
||||
absurd_of_eq_ff_of_eq_tt|eq ?a ff → eq ?a tt → ?B
|
||||
eq_tt_of_ne_ff|ne ?a ff → eq ?a tt
|
||||
tactic.with_attributes_tac|tactic.expr → tactic.identifier_list → tactic → tactic
|
||||
cond_tt|∀ (t e : ?A), eq (cond tt t e) t
|
||||
cond_tt|∀ t e, eq (cond tt t e) t
|
||||
environment.mk_hott|nat → environment
|
||||
decidable.tt|?p → decidable ?p
|
||||
ff_ne_tt|eq ff tt → false
|
||||
eq_ff_of_ne_tt|ne ?a tt → eq ?a ff
|
||||
format.flatten|format → format
|
||||
-- ENDFINDP
|
||||
|
|
|
|||
|
|
@ -1,18 +1,6 @@
|
|||
-- BEGINWAIT
|
||||
-- ENDWAIT
|
||||
-- BEGININFO
|
||||
-- TYPE|7|7
|
||||
a
|
||||
-- ACK
|
||||
-- IDENTIFIER|7|7
|
||||
Ha
|
||||
-- ACK
|
||||
-- BEGININFO STALE
|
||||
-- ENDINFO
|
||||
-- BEGININFO
|
||||
-- TYPE|16|7
|
||||
b
|
||||
-- ACK
|
||||
-- IDENTIFIER|16|7
|
||||
Hb
|
||||
-- ACK
|
||||
-- BEGININFO STALE
|
||||
-- ENDINFO
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
-- BEGINWAIT
|
||||
-- ENDWAIT
|
||||
-- BEGINFINDP
|
||||
le.rec_on|le ?a ?a → (Π (a : nat), ?C a a) → ?C ?a ?a
|
||||
nat.rec_on|Π (n : nat), ?C 0 → (Π (a : nat), ?C a → ?C (succ a)) → ?C n
|
||||
bool.rec_on|Π (n : bool), ?C bool.ff → ?C bool.tt → ?C n
|
||||
le.rec_on|le ?a ?a → (Π a, ?C a a) → ?C ?a ?a
|
||||
nat.rec_on|Π n, ?C 0 → (Π a, ?C a → ?C (succ a)) → ?C n
|
||||
bool.rec_on|Π n, ?C bool.ff → ?C bool.tt → ?C n
|
||||
-- ENDFINDP
|
||||
-- BEGINFINDP
|
||||
nat.le.rec_on|nat.le ?a ?a → (Π (a : nat), ?C a a) → ?C ?a ?a
|
||||
nat.rec_on|Π (n : nat), ?C 0 → (Π (a : nat), ?C a → ?C (nat.succ a)) → ?C n
|
||||
bool.rec_on|Π (n : bool), ?C bool.ff → ?C bool.tt → ?C n
|
||||
nat.le.rec_on|nat.le ?a ?a → (Π a, ?C a a) → ?C ?a ?a
|
||||
nat.rec_on|Π n, ?C 0 → (Π a, ?C a → ?C (nat.succ a)) → ?C n
|
||||
bool.rec_on|Π n, ?C bool.ff → ?C bool.tt → ?C n
|
||||
-- ENDFINDP
|
||||
|
|
|
|||
|
|
@ -1,49 +1,4 @@
|
|||
-- BEGINWAIT
|
||||
-- ENDWAIT
|
||||
-- BEGININFO
|
||||
-- SYMBOL|7|15
|
||||
=
|
||||
-- ACK
|
||||
-- TYPE|7|17
|
||||
ℕ
|
||||
-- ACK
|
||||
-- IDENTIFIER|7|17
|
||||
a
|
||||
-- ACK
|
||||
-- TYPE|7|19
|
||||
ℕ → ℕ → ℕ
|
||||
-- ACK
|
||||
-- SYMBOL|7|19
|
||||
+
|
||||
-- ACK
|
||||
-- TYPE|7|21
|
||||
ℕ
|
||||
-- ACK
|
||||
-- IDENTIFIER|7|21
|
||||
c
|
||||
-- ACK
|
||||
-- TYPE|7|23
|
||||
ℕ → ℕ → ℕ
|
||||
-- ACK
|
||||
-- SYMBOL|7|23
|
||||
+
|
||||
-- ACK
|
||||
-- TYPE|7|25
|
||||
ℕ
|
||||
-- ACK
|
||||
-- IDENTIFIER|7|25
|
||||
b
|
||||
-- ACK
|
||||
-- SYMBOL|7|31
|
||||
by
|
||||
-- ACK
|
||||
-- SYMBOL|7|34
|
||||
rewrite
|
||||
-- ACK
|
||||
-- TYPE|7|42
|
||||
∀ (a_1 b_1 c_1 : ?A), (:a_1 + b_1 + c_1:) = (:a_1 + (b_1 + c_1):)
|
||||
-- ACK
|
||||
-- IDENTIFIER|7|42
|
||||
add.assoc
|
||||
-- ACK
|
||||
-- BEGININFO STALE
|
||||
-- ENDINFO
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
-- BEGINSET
|
||||
SET_command:1:0: warning: imported file uses 'sorry'
|
||||
-- ENDSET
|
||||
-- ERROR unexpected command line: end bool
|
||||
-- BEGINWAIT
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue