ConditionalProof.java
01 /* This file is part of the project "Hilbert II" - http://www.qedeq.org
02  *
03  * Copyright 2000-2013,  Michael Meyling <mime@qedeq.org>.
04  *
05  * "Hilbert II" is free software; you can redistribute
06  * it and/or modify it under the terms of the GNU General Public
07  * License as published by the Free Software Foundation; either
08  * version 2 of the License, or (at your option) any later version.
09  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  */
15 
16 package org.qedeq.kernel.se.base.module;
17 
18 
19 /**
20  * Usage of conditional proof method. If you can derive the proposition A out of
21  * the assumed formulas then the following formula is true:
22  * conjunction of the assumed formulas implies A
23  <pre>
24  *      H    hypothesis
25  *     -------------------
26  *      A
27  *  ---------------
28  *   H -&gt; A
29  </pre>
30  *
31  @author  Michael Meyling
32  */
33 public interface ConditionalProof extends Reason, FormalProofLine {
34 
35     /**
36      * Get this reason.
37      *
38      @return  This reason.
39      */
40     public ConditionalProof getConditionalProof();
41 
42     /**
43      * Get hypothesis.
44      *
45      @return  Hypothesis.
46      */
47     public Hypothesis getHypothesis();
48 
49     /**
50      * Get proof that can use the hypothesis.
51      *
52      @return  Conditional proof.
53      */
54     public FormalProofLineList getFormalProofLineList();
55 
56 
57     /**
58      * Get conclusion. This is a newly proven formula.
59      *
60      @return  Reference to proved formula.
61      */
62     public Conclusion getConclusion();
63 
64 }