diff options
| -rw-r--r-- | test-suite/output/Implicit.out | 5 | ||||
| -rw-r--r-- | test-suite/output/Implicit.v | 18 |
2 files changed, 23 insertions, 0 deletions
diff --git a/test-suite/output/Implicit.out b/test-suite/output/Implicit.out new file mode 100644 index 0000000000..f9cf9efcb4 --- /dev/null +++ b/test-suite/output/Implicit.out @@ -0,0 +1,5 @@ +d2 = [x:nat](d1 1!x) + : (x,x0:nat)x0=x ->x0=x + +Positions [1; 2] are implicit +Argument scopes are [nat_scope nat_scope _] diff --git a/test-suite/output/Implicit.v b/test-suite/output/Implicit.v new file mode 100644 index 0000000000..2dea0d1852 --- /dev/null +++ b/test-suite/output/Implicit.v @@ -0,0 +1,18 @@ +Set Implicit Arguments. + +(* Suggested by Pierre Casteran (bug #169) *) +(* Argument 3 is needed to typecheck and should be printed *) +Definition compose := [A,B,C:Set; f : A-> B ; g : B->C ; x : A] (g (f x)). +Check (compose 3!nat S). + +(* Better to explicitly display the arguments inferable from a + position that could disappear after reduction *) +Inductive ex [A:Set;P:A->Prop] : Prop + := ex_intro : (x:A)(P x)->(ex P). +Check (ex_intro 2![_]True 3!O I). + +(* Test for V8 printing of implicit by names *) +Definition d1 [y;x;h:x=y:>nat] := h. +Definition d2 [x] := (!d1 x). + +Print d2. |
