01: // This file is part of KeY - Integrated Deductive Software Design
02: // Copyright (C) 2001-2007 Universitaet Karlsruhe, Germany
03: // Universitaet Koblenz-Landau, Germany
04: // Chalmers University of Technology, Sweden
05: //
06: // The KeY system is protected by the GNU General Public License.
07: // See LICENSE.TXT for details.
08: package de.uka.ilkd.key.rule.metaconstruct;
09:
10: import de.uka.ilkd.key.java.Services;
11: import de.uka.ilkd.key.logic.Name;
12: import de.uka.ilkd.key.logic.Term;
13: import de.uka.ilkd.key.logic.op.AbstractMetaOperator;
14: import de.uka.ilkd.key.logic.sort.Sort;
15: import de.uka.ilkd.key.rule.inst.SVInstantiations;
16:
17: /**
18: * The meta operator inserting the proof obligation for the <tt>inReachableState</tt>
19: * predicate
20: * @see de.uka.ilkd.key.rule.metaconstruct.InReachableStatePOBuilder
21: */
22: public class CreateInReachableStatePO extends AbstractMetaOperator {
23:
24: public CreateInReachableStatePO() {
25: super (new Name("#createInReachableStatePO"), 1);
26: }
27:
28: public Sort sort(Term[] term) {
29: return Sort.FORMULA;
30: }
31:
32: public Term calculate(Term term, SVInstantiations svInst,
33: Services services) {
34: final InReachableStatePOBuilder po = new InReachableStatePOBuilder(
35: services);
36:
37: return po.generatePO(term.sub(0));
38: }
39:
40: }
|