Skip to content

Commit 347d1ef

Browse files
committed
removed several universe inconsistencies
1 parent b70cfa1 commit 347d1ef

File tree

3 files changed

+11
-15
lines changed

3 files changed

+11
-15
lines changed

theories/StringRewriting/PCSnf.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@ Require Import List.
22
Require Import Undecidability.PCP.PCP.
33

44
(* A string is a list of symbols. *)
5-
Definition string X := list X.
5+
Notation string X := (list X).
66

77
Notation "x / y" := (x, y).
88

99
(* A string rewriting system SRS is a list of rules x / y
1010
such that x rewrites to y. *)
11-
Definition SRS X := list (string X * string X).
11+
Notation SRS X := (list (string X * string X)).
1212

1313
(* If u / v is a rewriting rule, then u ++ x rewrites to x ++ u. *)
1414
Inductive der {X : Type} (R : SRS X) : string X -> string X -> Prop :=

theories/StringRewriting/SR.v

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
Require Import List.
2-
(* why is this import here? *)
3-
Require Import Undecidability.PCP.PCP.
42

53
(* A string is a list of symbols. *)
6-
Definition string X := list X.
4+
Notation string X := (list X).
75

86
Module RuleNotation.
97
Notation "x / y" := (x, y).
@@ -12,7 +10,7 @@ Import RuleNotation.
1210

1311
(* A string rewriting system SRS is a list of rules x / y
1412
such that x rewrites to y. *)
15-
Definition SRS X := list (string X * string X).
13+
Notation SRS X := (list (string X * string X)).
1614

1715
(* If u / v is a rewriting rule, then x ++ u ++ y rewrites to x ++ v ++ y. *)
1816
Inductive rew {X : Type} (R : SRS X) : string X -> string X -> Prop :=

theories/StringRewriting/Util/Definitions.v

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -64,15 +64,13 @@ Qed.
6464

6565
(* * Definitions *)
6666

67-
Local Definition symbol := nat.
68-
Local Definition string := (string nat).
69-
Local Definition card : Type := (string * string).
70-
Local Definition stack := list card.
71-
Local Definition SRS := SRS nat.
67+
#[local] Notation symbol := nat.
68+
#[local] Notation string := (string nat).
69+
#[local] Notation SRS := (SRS nat).
7270
Implicit Types a b : symbol.
7371
Implicit Types x y z : string.
74-
Implicit Types d e : card.
75-
Implicit Types A R P : stack.
72+
Implicit Types d e : (string * string).
73+
Implicit Types A R P : list (string * string).
7674

7775
Coercion sing (n : nat) := [n].
7876

@@ -163,7 +161,7 @@ Fixpoint sigma (a : symbol) A :=
163161

164162
(* ** Alphabets *)
165163

166-
Fixpoint sym (R : list card) :=
164+
Fixpoint sym (R : list (string * string)) :=
167165
match R with
168166
[] => []
169167
| x / y :: R => x ++ y ++ sym R
@@ -175,7 +173,7 @@ Proof.
175173
induction P as [ | [] ]; eauto; cbn; rewrite IHP. now simpl_list.
176174
Qed.
177175

178-
Lemma sym_map X (f : X -> card) l Sigma :
176+
Lemma sym_map X (f : X -> (string * string)) l Sigma :
179177
(forall x : X, x el l -> sym [f x] <<= Sigma) -> sym (map f l) <<= Sigma.
180178
Proof.
181179
intros. induction l as [ | ]; cbn in *.

0 commit comments

Comments
 (0)