Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save ComFreek/2901f474145717b7201768996b7639c6 to your computer and use it in GitHub Desktop.
Save ComFreek/2901f474145717b7201768996b7639c6 to your computer and use it in GitHub Desktop.
derivation-calculus-non-strictly-positive.v
Inductive pl : Prop := disj: pl -> pl -> pl.
Definition context := pl -> Prop.
Reserved Notation "Gamma '|-' f" (at level 65).
Inductive plDerivable : context -> pl -> Prop :=
disjElim: forall ctx (p q r: pl),
ctx |- disj p q
-> (ctx |- p -> ctx |- r)
-> (ctx |- q -> ctx |- r)
-> ctx |- r
where "Gamma '|-' f" := (plDerivable Gamma f).
(* gives error:
Non strictly positive occurrence of "plDerivable" in
"forall (ctx : context) (p q r : pl),
plDerivable ctx (disj p q) ->
(plDerivable ctx p -> plDerivable ctx r) ->
(plDerivable ctx q -> plDerivable ctx r) -> plDerivable ctx r".
*)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment