Set: pp::colors Set: pp::unicode Assumed: f Failed to solve ⊢ (?M::1 ≈ λ x : ℕ, x) ⊕ (?M::1 ≈ nat_to_int) ⊕ (?M::1 ≈ nat_to_real) (line: 4: pos: 8) Coercion for 10 Failed to solve ⊢ Bool ≺ ℕ Substitution ⊢ Bool ≺ ?M::0 (line: 4: pos: 6) Type of argument 3 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 ?M::1 10 ⊤ Assignment ⊢ ℕ ≺ ?M::0 Substitution ⊢ (?M::5[inst:0 (10)]) 10 ≺ ?M::0 (line: 4: pos: 6) Type of argument 2 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 ?M::1 10 ⊤ Assignment x : ℕ ⊢ λ x : ℕ, ℕ ≈ ?M::5 Destruct/Decompose x : ℕ ⊢ ℕ ≈ ?M::5 x Destruct/Decompose ⊢ ℕ → ℕ ≈ Π x : ?M::4, ?M::5 x Substitution ⊢ ?M::3 ≈ Π x : ?M::4, ?M::5 x Function expected at ?M::1 10 Assignment ⊢ ℕ → ℕ ≺ ?M::3 Propagate type, ?M::1 : ?M::3 Assignment ⊢ ?M::1 ≈ λ x : ℕ, x Assumption 0 Failed to solve ⊢ Bool ≺ ℤ Substitution ⊢ Bool ≺ ?M::0 (line: 4: pos: 6) Type of argument 3 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 ?M::1 10 ⊤ Assignment ⊢ ℤ ≺ ?M::0 Substitution ⊢ (?M::5[inst:0 (10)]) 10 ≺ ?M::0 (line: 4: pos: 6) Type of argument 2 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 ?M::1 10 ⊤ Assignment _ : ℕ ⊢ λ x : ℕ, ℤ ≈ ?M::5 Destruct/Decompose _ : ℕ ⊢ ℤ ≈ ?M::5 _ Destruct/Decompose ⊢ ℕ → ℤ ≈ Π x : ?M::4, ?M::5 x Substitution ⊢ ?M::3 ≈ Π x : ?M::4, ?M::5 x Function expected at ?M::1 10 Assignment ⊢ ℕ → ℤ ≺ ?M::3 Propagate type, ?M::1 : ?M::3 Assignment ⊢ ?M::1 ≈ nat_to_int Assumption 1 Failed to solve ⊢ Bool ≺ ℝ Substitution ⊢ Bool ≺ ?M::0 (line: 4: pos: 6) Type of argument 3 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 ?M::1 10 ⊤ Assignment ⊢ ℝ ≺ ?M::0 Substitution ⊢ (?M::5[inst:0 (10)]) 10 ≺ ?M::0 (line: 4: pos: 6) Type of argument 2 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 ?M::1 10 ⊤ Assignment _ : ℕ ⊢ λ x : ℕ, ℝ ≈ ?M::5 Destruct/Decompose _ : ℕ ⊢ ℝ ≈ ?M::5 _ Destruct/Decompose ⊢ ℕ → ℝ ≈ Π x : ?M::4, ?M::5 x Substitution ⊢ ?M::3 ≈ Π x : ?M::4, ?M::5 x Function expected at ?M::1 10 Assignment ⊢ ℕ → ℝ ≺ ?M::3 Propagate type, ?M::1 : ?M::3 Assignment ⊢ ?M::1 ≈ nat_to_real Assumption 2 Assumed: g Error (line: 7, pos: 8) unexpected metavariable occurrence Assumed: h Failed to solve x : ?M::0, A : Type ⊢ ?M::0[lift:0:2] ≺ A (line: 11: pos: 27) Type of argument 2 must be convertible to the expected type in the application of h with arguments: A x Assumed: my_eq Failed to solve A : Type, B : Type, a : ?M::0, b : ?M::1, C : Type ⊢ ?M::0[lift:0:3] ≺ C (line: 15: pos: 51) Type of argument 2 must be convertible to the expected type in the application of my_eq with arguments: C a b Assumed: a Assumed: b Assumed: H Error (line: 20, pos: 28) unexpected metavariable occurrence Failed to solve ⊢ b ≈ a Substitution ⊢ b ≈ ?M::3 Destruct/Decompose ⊢ b == b ≺ ?M::3 == ?M::4 (line: 22: pos: 22) Type of argument 6 must be convertible to the expected type in the application of Trans::explicit with arguments: ?M::1 ?M::2 ?M::3 ?M::4 Refl a Refl b Assignment ⊢ a ≈ ?M::3 Destruct/Decompose ⊢ a == a ≺ ?M::2 == ?M::3 (line: 22: pos: 22) Type of argument 5 must be convertible to the expected type in the application of Trans::explicit with arguments: ?M::1 ?M::2 ?M::3 ?M::4 Refl a Refl b Failed to solve ⊢ (?M::0 ≈ Type) ⊕ (?M::0 ≈ Type 1) ⊕ (?M::0 ≈ Type 2) ⊕ (?M::0 ≈ Type M) ⊕ (?M::0 ≈ Type U) Destruct/Decompose ⊢ Type ≺ ?M::0 (line: 24: pos: 6) Type of argument 3 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Failed to solve ⊢ (?M::1 ≈ Type 1) ⊕ (?M::1 ≈ Type 2) ⊕ (?M::1 ≈ Type 3) ⊕ (?M::1 ≈ Type M) ⊕ (?M::1 ≈ Type U) Destruct/Decompose ⊢ Type 1 ≺ ?M::1 Propagate type, ?M::0 : ?M::1 Assignment ⊢ ?M::0 ≈ Type Assumption 0 Failed to solve ⊢ Type 1 ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type 1 Assumption 1 Failed to solve ⊢ Type 2 ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type 2 Assumption 2 Failed to solve ⊢ Type 3 ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type 3 Assumption 3 Failed to solve ⊢ Type M ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type M Assumption 4 Failed to solve ⊢ Type U ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type U Assumption 5 Failed to solve ⊢ (?M::1 ≈ Type 2) ⊕ (?M::1 ≈ Type 3) ⊕ (?M::1 ≈ Type 4) ⊕ (?M::1 ≈ Type M) ⊕ (?M::1 ≈ Type U) Destruct/Decompose ⊢ Type 2 ≺ ?M::1 Propagate type, ?M::0 : ?M::1 Assignment ⊢ ?M::0 ≈ Type 1 Assumption 6 Failed to solve ⊢ Type 2 ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type 2 Assumption 7 Failed to solve ⊢ Type 3 ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type 3 Assumption 8 Failed to solve ⊢ Type 4 ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type 4 Assumption 9 Failed to solve ⊢ Type M ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type M Assumption 10 Failed to solve ⊢ Type U ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type U Assumption 11 Failed to solve ⊢ (?M::1 ≈ Type 3) ⊕ (?M::1 ≈ Type 4) ⊕ (?M::1 ≈ Type 5) ⊕ (?M::1 ≈ Type M) ⊕ (?M::1 ≈ Type U) Destruct/Decompose ⊢ Type 3 ≺ ?M::1 Propagate type, ?M::0 : ?M::1 Assignment ⊢ ?M::0 ≈ Type 2 Assumption 12 Failed to solve ⊢ Type 3 ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type 3 Assumption 13 Failed to solve ⊢ Type 4 ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type 4 Assumption 14 Failed to solve ⊢ Type 5 ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type 5 Assumption 15 Failed to solve ⊢ Type M ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type M Assumption 16 Failed to solve ⊢ Type U ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type U Assumption 17 Failed to solve ⊢ (?M::1 ≈ Type M+1) ⊕ (?M::1 ≈ Type M+2) ⊕ (?M::1 ≈ Type M+3) ⊕ (?M::1 ≈ Type M) ⊕ (?M::1 ≈ Type U) Destruct/Decompose ⊢ Type M+1 ≺ ?M::1 Propagate type, ?M::0 : ?M::1 Assignment ⊢ ?M::0 ≈ Type M Assumption 18 Failed to solve ⊢ Type M+1 ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type M+1 Assumption 19 Failed to solve ⊢ Type M+2 ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type M+2 Assumption 20 Failed to solve ⊢ Type M+3 ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type M+3 Assumption 21 Failed to solve ⊢ Type M ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type M Assumption 22 Failed to solve ⊢ Type U ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type U Assumption 23 Failed to solve ⊢ (?M::1 ≈ Type U+1) ⊕ (?M::1 ≈ Type U+2) ⊕ (?M::1 ≈ Type U+3) ⊕ (?M::1 ≈ Type M) ⊕ (?M::1 ≈ Type U) Destruct/Decompose ⊢ Type U+1 ≺ ?M::1 Propagate type, ?M::0 : ?M::1 Assignment ⊢ ?M::0 ≈ Type U Assumption 24 Failed to solve ⊢ Type U+1 ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type U+1 Assumption 25 Failed to solve ⊢ Type U+2 ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type U+2 Assumption 26 Failed to solve ⊢ Type U+3 ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type U+3 Assumption 27 Failed to solve ⊢ Type M ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type M Assumption 28 Failed to solve ⊢ Type U ≺ Type Substitution ⊢ ?M::1 ≺ Type (line: 24: pos: 6) Type of argument 1 must be convertible to the expected type in the application of f::explicit with arguments: ?M::0 Bool Bool Assignment ⊢ ?M::1 ≈ Type U Assumption 29 Failed to solve a : Bool, b : Bool, H : ?M::2, H_na : ?M::7 ⊢ a ≺ if (if a b ⊤) a ⊤ Substitution a : Bool, b : Bool, H : ?M::2, H_na : ?M::7 ⊢ a ≺ ?M::5[lift:0:1] Substitution a : Bool, b : Bool, H : ?M::2, H_na : ?M::7 ⊢ ?M::8 ≺ ?M::5[lift:0:1] Destruct/Decompose a : Bool, b : Bool, H : ?M::2 ⊢ Π H_na : ?M::7, ?M::8 ≺ Π _ : ?M::4, ?M::5[lift:0:1] (line: 27: pos: 21) Type of argument 6 must be convertible to the expected type in the application of DisjCases::explicit with arguments: ?M::3 ?M::4 ?M::5 EM a λ H_a : ?M::6, H λ H_na : ?M::7, NotImp1 (MT H H_na) Assignment a : Bool, b : Bool, H : ?M::2, H_na : ?M::7 ⊢ a ≈ ?M::8 Destruct/Decompose a : Bool, b : Bool, H : ?M::2, H_na : ?M::7 ⊢ if a b ⊤ ≈ if ?M::8 ?M::9 ⊤ Normalize a : Bool, b : Bool, H : ?M::2, H_na : ?M::7 ⊢ if a b ⊤ ≈ ?M::8 ⇒ ?M::9 Substitution a : Bool, b : Bool, H : ?M::2, H_na : ?M::7 ⊢ if a b ⊤ ≈ ?M::10 Destruct/Decompose a : Bool, b : Bool, H : ?M::2, H_na : ?M::7 ⊢ if (if a b ⊤) a ⊤ ≺ if ?M::10 ?M::11 ⊤ Normalize a : Bool, b : Bool, H : ?M::2, H_na : ?M::7 ⊢ (a ⇒ b) ⇒ a ≺ if ?M::10 ?M::11 ⊤ Substitution a : Bool, b : Bool, H : ?M::2, H_na : ?M::7 ⊢ ?M::2[lift:0:2] ≺ if ?M::10 ?M::11 ⊤ Normalize a : Bool, b : Bool, H : ?M::2, H_na : ?M::7 ⊢ ?M::2[lift:0:2] ≺ ?M::10 ⇒ ?M::11 (line: 29: pos: 48) Type of argument 3 must be convertible to the expected type in the application of MT::explicit with arguments: ?M::10 ?M::11 H H_na Normalize assignment ?M::0 Assignment a : Bool, b : Bool ⊢ ?M::2 ≈ ?M::0 Destruct/Decompose a : Bool, b : Bool ⊢ Π H : ?M::2, ?M::5 ≺ Π _ : ?M::0, ?M::1[lift:0:1] (line: 27: pos: 4) Type of argument 3 must be convertible to the expected type in the application of Discharge::explicit with arguments: ?M::0 ?M::1 λ H : ?M::2, DisjCases (EM a) (λ H_a : ?M::6, H) (λ H_na : ?M::7, NotImp1 (MT H H_na)) Assignment a : Bool, b : Bool ⊢ ?M::0 ≈ (a ⇒ b) ⇒ a Destruct/Decompose a : Bool, b : Bool ⊢ ?M::0 ⇒ ?M::1 ≺ ((a ⇒ b) ⇒ a) ⇒ a Destruct/Decompose a : Bool ⊢ Π b : Bool, ?M::0 ⇒ ?M::1 ≺ Π b : Bool, ((a ⇒ b) ⇒ a) ⇒ a Destruct/Decompose ⊢ Π a b : Bool, ?M::0 ⇒ ?M::1 ≺ Π a b : Bool, ((a ⇒ b) ⇒ a) ⇒ a (line: 26: pos: 16) Type of definition 'pierce' must be convertible to expected type. Assignment a : Bool, b : Bool, H : ?M::2, H_na : ?M::7 ⊢ ?M::10 ≈ ?M::8 ⇒ ?M::9 Destruct/Decompose a : Bool, b : Bool, H : ?M::2, H_na : ?M::7 ⊢ ¬ ?M::10 ≺ ¬ (?M::8 ⇒ ?M::9) (line: 29: pos: 40) Type of argument 3 must be convertible to the expected type in the application of NotImp1::explicit with arguments: ?M::8 ?M::9 MT H H_na Assignment a : Bool, b : Bool, H : ?M::2 ⊢ if (if a b ⊤) a ⊤ ≺ ?M::5 Normalize a : Bool, b : Bool, H : ?M::2 ⊢ (a ⇒ b) ⇒ a ≺ ?M::5 Normalize a : Bool, b : Bool, H : ?M::2, H_a : ?M::6 ⊢ (a ⇒ b) ⇒ a ≺ ?M::5[lift:0:1] Substitution a : Bool, b : Bool, H : ?M::2, H_a : ?M::6 ⊢ ?M::2[lift:0:2] ≺ ?M::5[lift:0:1] Destruct/Decompose a : Bool, b : Bool, H : ?M::2 ⊢ Π H_a : ?M::6, ?M::2[lift:0:2] ≺ Π _ : ?M::3, ?M::5[lift:0:1] (line: 27: pos: 21) Type of argument 5 must be convertible to the expected type in the application of DisjCases::explicit with arguments: ?M::3 ?M::4 ?M::5 EM a λ H_a : ?M::6, H λ H_na : ?M::7, NotImp1 (MT H H_na) Normalize assignment ?M::0 Assignment a : Bool, b : Bool ⊢ ?M::2 ≈ ?M::0 Destruct/Decompose a : Bool, b : Bool ⊢ Π H : ?M::2, ?M::5 ≺ Π _ : ?M::0, ?M::1[lift:0:1] (line: 27: pos: 4) Type of argument 3 must be convertible to the expected type in the application of Discharge::explicit with arguments: ?M::0 ?M::1 λ H : ?M::2, DisjCases (EM a) (λ H_a : ?M::6, H) (λ H_na : ?M::7, NotImp1 (MT H H_na)) Assignment a : Bool, b : Bool ⊢ ?M::0 ≈ (a ⇒ b) ⇒ a Destruct/Decompose a : Bool, b : Bool ⊢ ?M::0 ⇒ ?M::1 ≺ ((a ⇒ b) ⇒ a) ⇒ a Destruct/Decompose a : Bool ⊢ Π b : Bool, ?M::0 ⇒ ?M::1 ≺ Π b : Bool, ((a ⇒ b) ⇒ a) ⇒ a Destruct/Decompose ⊢ Π a b : Bool, ?M::0 ⇒ ?M::1 ≺ Π a b : Bool, ((a ⇒ b) ⇒ a) ⇒ a (line: 26: pos: 16) Type of definition 'pierce' must be convertible to expected type.