2016-05-31 6 views
1

Ich habe das TorTactic teilweise berechnen Ziel in Coq

quad X Y 

, aber ich erinnere mich nicht Definition von „Quad“ und ich will nicht die Suche ihrer Definition starten.

Gibt es eine Taktik, die es mir erlaubt, Quad schnell mit seiner Definition zu ersetzen?

Record quad (X Y:Type):= { x:X; y:Y}. 

Oder ich muss und

refine (@Build_quad _ _). 

verwenden erinnern?

+4

'Konstruktor' sollte in den meisten Fällen funktionieren. Sie können auch 'Hinweis Konstruktoren' nützlich finden. – ejgallego

+2

Btw, Suche in diesem Fall ist nicht notwendig, aber es ist ziemlich einfach: 'Print Quad.' wird Ihnen die gewünschten Informationen geben. Wenn Sie ProofGeneral verwenden, müssen Sie den Cursor (Punkt) über die interessierende Entität bewegen und auf "C-c C-a C-p" und "Enter" klicken. –

Antwort

3

Ihr etwas falsch, Build_quad ist nicht die Definition von quad, es ist sein Konstruktor. Es erstellt Terme des Typs quad. Wie @Ejgallego sagte, sollten Sie in dieser Situation die constructor Taktik verwenden.

Ihr Ziel möchte, dass Sie einen Ausdruck vom Typ quad X Y bereitstellen, und die einzige Möglichkeit, einen solchen Begriff von Grund auf neu zu erstellen, ist die Verwendung des Konstruktors Build_quad vom Typ .

+2

Der Vollständigkeit halber: Ein weniger automatisierter Weg wäre, 'Build_quad.' anstelle von' constructor' zu verwenden. –

+1

Normalerweise verwende ich 'split' für Datensätze. – eponier