Skip to Content.
Sympa Menu

coq-club - [Coq-Club] Why backtick notation is needed?

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

[Coq-Club] Why backtick notation is needed?


chronological Thread 
  • From: Victor Porton <porton AT narod.ru>
  • To: coq-club AT inria.fr
  • Subject: [Coq-Club] Why backtick notation is needed?
  • Date: Fri, 04 Nov 2011 21:48:07 +0400
  • Envelope-from: porton AT yandex.ru

I installed Coq 8.3.

The following:

<<<
Definition id `(x : nat) : nat := x.
Print id.

Definition id2 (x : nat) : nat := x.
Print id2.

Definition v := id O.
Definition v2 := id2 O.

Print v.
Print v2.
>>>

Produces the output:

<<<
id = fun x : nat => x
     : nat -> nat

Argument scope is [nat_scope]
id2 = fun x : nat => x
     : nat -> nat

Argument scope is [nat_scope]
v = id 0
     : nat
v2 = id2 0
     : nat
>>>

You see that types of id and id2 are identical.

Moreover not only id but also id2 works with an implicit argument.

What is the point to use backtick, if it work implicitly even without it?

-- 
Victor Porton - http://portonvictor.org



Archive powered by MhonArc 2.6.16.

Top of Page