-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathArguments_renaming.out
116 lines (106 loc) · 4.54 KB
/
Arguments_renaming.out
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
File "./output/Arguments_renaming.v", line 2, characters 0-36:
The command has indeed failed with message:
Flag "rename" expected to rename A into B.
File "./output/Arguments_renaming.v", line 3, characters 0-19:
Warning: This command is just asserting the names of arguments of eq. If this
is what you want, add ': assert' to silence the warning. If you want to clear
implicit arguments, add ': clear implicits'. If you want to clear notation
scopes, add ': clear scopes' [arguments-assert,vernacular,default]
@eq_refl
: forall (B : Type) (y : B), y = y
eq_refl
: ?y = ?y
where
?y : [ |- nat]
Inductive eq (A : Type) (x : A) : A -> Prop := eq_refl : x = x.
Arguments eq {A}%type_scope x _
Arguments eq_refl {B}%type_scope {y}, [_] _
(where some original arguments have been renamed)
eq_refl : forall {B : Type} {y : B}, y = y
eq_refl is template universe polymorphic
Arguments eq_refl {B}%type_scope {y}, [_] _
(where some original arguments have been renamed)
Expands to: Constructor Stdlib.Init.Logic.eq_refl
Inductive myEq (B : Type) (x : A) : A -> Prop := myrefl : B -> myEq B x x.
Arguments myEq B%type_scope x _
Arguments myrefl {C}%type_scope x _
(where some original arguments have been renamed)
myrefl : forall {C : Type} (x : A), C -> myEq C x x
myrefl is template universe polymorphic
Arguments myrefl {C}%type_scope x _
(where some original arguments have been renamed)
myrefl uses section variable A.
Expands to: Constructor Arguments_renaming.Test1.myrefl
myplus =
fix myplus (T : Type) (t : T) (n m : nat) {struct n} : nat :=
match n with
| 0 => m
| S n' => S (myplus T t n' m)
end
: forall {T : Type}, T -> nat -> nat -> nat
Arguments myplus {Z}%type_scope !t (!n m)%nat_scope
(where some original arguments have been renamed)
myplus : forall {Z : Type}, Z -> nat -> nat -> nat
myplus is not universe polymorphic
Arguments myplus {Z}%type_scope !t (!n m)%nat_scope
(where some original arguments have been renamed)
The reduction tactics unfold myplus when the 2nd and
3rd arguments evaluate to a constructor
myplus is transparent
Expands to: Constant Arguments_renaming.Test1.myplus
@myplus
: forall Z : Type, Z -> nat -> nat -> nat
Inductive myEq (A B : Type) (x : A) : A -> Prop :=
myrefl : B -> myEq A B x x.
Arguments myEq (A B)%type_scope x _
Arguments myrefl A%type_scope {C}%type_scope x _
(where some original arguments have been renamed)
myrefl : forall (A : Type) {C : Type} (x : A), C -> myEq A C x x
myrefl is template universe polymorphic
Arguments myrefl A%type_scope {C}%type_scope x _
(where some original arguments have been renamed)
Expands to: Constructor Arguments_renaming.myrefl
myrefl
: forall (A C : Type) (x : A), C -> myEq A C x x
myplus =
fix myplus (T : Type) (t : T) (n m : nat) {struct n} : nat :=
match n with
| 0 => m
| S n' => S (myplus T t n' m)
end
: forall {T : Type}, T -> nat -> nat -> nat
Arguments myplus {Z}%type_scope !t (!n m)%nat_scope
(where some original arguments have been renamed)
myplus : forall {Z : Type}, Z -> nat -> nat -> nat
myplus is not universe polymorphic
Arguments myplus {Z}%type_scope !t (!n m)%nat_scope
(where some original arguments have been renamed)
The reduction tactics unfold myplus when the 2nd and
3rd arguments evaluate to a constructor
myplus is transparent
Expands to: Constant Arguments_renaming.myplus
@myplus
: forall Z : Type, Z -> nat -> nat -> nat
File "./output/Arguments_renaming.v", line 49, characters 0-36:
The command has indeed failed with message:
Argument lists should agree on the names they provide.
File "./output/Arguments_renaming.v", line 50, characters 0-41:
The command has indeed failed with message:
Sequences of implicit arguments must be of different lengths.
File "./output/Arguments_renaming.v", line 51, characters 0-37:
The command has indeed failed with message:
Argument number 3 is a trailing implicit, so it can't be declared non
maximal. Please use { } instead of [ ].
File "./output/Arguments_renaming.v", line 52, characters 0-37:
The command has indeed failed with message:
Argument z is a trailing implicit, so it can't be declared non maximal.
Please use { } instead of [ ].
File "./output/Arguments_renaming.v", line 53, characters 0-28:
The command has indeed failed with message:
Extra arguments: y.
File "./output/Arguments_renaming.v", line 54, characters 0-26:
The command has indeed failed with message:
Flag "rename" expected to rename A into R.
File "./output/Arguments_renaming.v", line 58, characters 2-36:
The command has indeed failed with message:
Arguments of section variables such as allTrue may not be renamed.