Skip to content

Can't produce a object file #1041

@NotBad4U

Description

@NotBad4U

The file below can not produce a corresponding object file when I run the command:

lambdapi check -c Test.lp
Checking "/Users/alessiocoltellacci/Junk/foo/Test.lp" ...
Writing "/Users/alessiocoltellacci/Junk/foo/Test.lpo" ...
Uncaught [File "src/core/sign.ml", line 182, characters 16-22: Assertion failed].

Moreover, the proof goal is complete and I can have a lambda term.

File "src/core/sign.ml", line 182, characters 16-22: Assertion failed

The error comes from this assertion line. I do not understand which Meta term is blocking Lambdapi.

constant symbol Prop : TYPE;
builtin "Prop" ≔ Prop;
injective symbol π : Prop → TYPE; // `p
builtin "P" ≔ π;

constant symbol Set : TYPE;
injective symbol τ : Set → TYPE;
builtin "T" ≔ τ;

constant symbol ⊥ : Prop; // \bot

constant symbol ⇒ : Prop → Prop → Prop; notation ⇒ infix right 5; // =>
rule π ($p ⇒ $q) ↪ π $p → π $q;

symbol ¬ p ≔ p ⇒ ⊥; // ~~ or \neg
notation ¬ prefix 35;

constant symbol ∀ [a] : (τ a → Prop) → Prop; notation ∀ quantifier; // !! or \forall
rule π (∀ $f) ↪ Π x, π ($f x);

injective symbol πᶜ p ≔ π (¬ ¬ p);

symbol ∀ᶜ [a] p ≔ `∀ x : τ a, ¬ ¬ (p x); notation ∀ᶜ quantifier;

opaque symbol ∀ᶜᵢ p : (Π x, πᶜ (p x)) → πᶜ (∀ᶜ p) ≔
begin
  assume p Hnnpx Hnnnpx;
  apply Hnnnpx;
  assume x Hnnp;
  apply Hnnpx x;
  assume Hnp;
  apply Hnnp;
  apply Hnp;
end;

This issue is relative to my PR #13 for the Stdlib.
I am not sure if it is a bug or if I am doing something wrong. I would appreciate an explanation of how the gen-obj process works 😄 .

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions