2015-11-20 7 views
1

Я пытаюсь доказать biconditional в Coq:Coq расчетно стиль biconditional цепь

P <-> Q 

И я записал доказательство того, что имеет такую ​​структуру:

P 
<-> 
S 
<-> 
T 
<-> 
Q 
thus: P <-> Q 

Как я могу имитировать этот расчетно доказательство структуры в Coq?

Заранее спасибо.

ответ

1

Так вы можете выразить это в Coq. intuition - тактика, которая хороша в решении логических целей, подобных вашей.

Lemma lma P S T Q : (P <-> S) -> (S <-> T) -> (T <-> Q) -> (P <-> Q). 
    intuition. 
Qed. 

Если вы предпочитаете писать это в явном виде, сделать:

Lemma lma P S T Q : (P <-> S) -> (S <-> T) -> (T <-> Q) -> (P <-> Q). 
    intros [ps sp] [st ts] [tq qt]. 
    constructor. 
    - intro p. 
    apply tq. 
    apply st. 
    apply ps. 
    apply p. 
    - intro q. 
    apply sp. 
    apply ts. 
    apply qt. 
    apply q. 
Qed. 
+0

как использовать LMA тогда? Как я могу указать значения P S T Q? –

+0

Думаю, я бы предпочел использовать тактику «транзитивности». – Ptival