Skip to content

Instantly share code, notes, and snippets.

View wilcoxjay's full-sized avatar

James Wilcox wilcoxjay

View GitHub Profile
@wilcoxjay
wilcoxjay / R.v
Created April 22, 2015 02:13 — forked from nkaretnikov/R.v
Inductive R : nat -> nat -> nat -> Prop :=
| c1 : R 0 0 0
| c2 : forall m n o, R m n o -> R (S m) n (S o)
| c3 : forall m n o, R m n o -> R m (S n) (S o)
| c4 : forall m n o, R (S m) (S n) (S (S o)) -> R m n o
| c5 : forall m n o, R m n o -> R n m o.
Require Import Omega.
Theorem R_is_plus :
Require Import Arith List Omega Program.
Definition fvar : Type := nat.
Definition bvar : Type := nat.
Inductive sort : Type :=
| N : sort
| ArrowS : sort -> sort -> sort.
Definition env := list (fvar * sort).