Skip to content
Original file line number Diff line number Diff line change
Expand Up @@ -9,20 +9,22 @@
import de.uka.ilkd.key.proof.Goal;
import de.uka.ilkd.key.proof.Node;
import de.uka.ilkd.key.proof.Proof;
import de.uka.ilkd.key.strategy.AbstractFeatureStrategy;
import de.uka.ilkd.key.strategy.Strategy;
import de.uka.ilkd.key.strategy.JavaAbstractFeatureStrategy;

import org.key_project.logic.Name;
import org.key_project.prover.proof.ProofGoal;
import org.key_project.prover.rules.RuleApp;
import org.key_project.prover.sequent.PosInOccurrence;
import org.key_project.prover.strategy.Strategy;
import org.key_project.prover.strategy.costbased.MutableState;
import org.key_project.prover.strategy.costbased.NumberRuleAppCost;
import org.key_project.prover.strategy.costbased.RuleAppCost;
import org.key_project.prover.strategy.costbased.TopRuleAppCost;

import org.jspecify.annotations.NonNull;

import static de.uka.ilkd.key.strategy.StaticFeatureCollection.hasLabel;


/**
* The macro UseInformationFlowContractMacro applies all applicable information flow contracts.
Expand Down Expand Up @@ -67,7 +69,7 @@ public String getDescription() {
* This strategy accepts all rule apps for which the rule name starts with a string in the
* admitted set and rejects everything else.
*/
protected static class RemovePostStrategy extends AbstractFeatureStrategy {
protected static class RemovePostStrategy extends JavaAbstractFeatureStrategy {

private final Name NAME = new Name("RemovePostStrategy");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ protected Set<String> getAdmittedRuleNames() {
}

@Override
protected Strategy<@NonNull Goal> createStrategy(Proof proof,
protected org.key_project.prover.strategy.Strategy<@NonNull Goal> createStrategy(Proof proof,
PosInOccurrence posInOcc) {
return new SelfCompExpansionStrategy(getAdmittedRuleNames());
}
Expand Down Expand Up @@ -110,7 +110,7 @@ protected boolean allowOSS() {
* This strategy accepts all rule apps for which the rule name is in the admitted set or has
* INF_FLOW_UNFOLD_PREFIX as a prefix and rejects everything else.
*/
private class SelfCompExpansionStrategy implements Strategy<Goal> {
private class SelfCompExpansionStrategy implements JavaStrategy {

private final Name NAME = new Name(
SelfcompositionStateExpansionMacro.SelfCompExpansionStrategy.class.getSimpleName());
Expand All @@ -134,7 +134,7 @@ public Name name() {
if ((admittedRuleNames.contains(name) || name.startsWith(INF_FLOW_UNFOLD_PREFIX))
&& ruleApplicationInContextAllowed(ruleApp, pio, goal)) {
ModularJavaDLStrategyFactory strategyFactory = new ModularJavaDLStrategyFactory();
Strategy<@NonNull Goal> dlStrategy =
org.key_project.prover.strategy.Strategy<@NonNull Goal> dlStrategy =
strategyFactory.create(goal.proof(), new StrategyProperties());
RuleAppCost costs = dlStrategy.computeCost(ruleApp, pio, goal, mState);
if ("orLeft".equals(name)) {
Expand All @@ -154,7 +154,7 @@ public boolean isApprovedApp(RuleApp app, PosInOccurrence pio,

@Override
public void instantiateApp(RuleApp app, PosInOccurrence pio, Goal goal,
RuleAppCostCollector collector) {
org.key_project.prover.strategy.RuleAppCostCollector collector) {
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,13 @@
import de.uka.ilkd.key.proof.Goal;
import de.uka.ilkd.key.proof.Node;
import de.uka.ilkd.key.proof.Proof;
import de.uka.ilkd.key.strategy.RuleAppCostCollector;
import de.uka.ilkd.key.strategy.Strategy;
import de.uka.ilkd.key.strategy.JavaStrategy;

import org.key_project.logic.Name;
import org.key_project.prover.proof.ProofGoal;
import org.key_project.prover.rules.RuleApp;
import org.key_project.prover.sequent.PosInOccurrence;
import org.key_project.prover.strategy.RuleAppCostCollector;
import org.key_project.prover.strategy.costbased.MutableState;
import org.key_project.prover.strategy.costbased.NumberRuleAppCost;
import org.key_project.prover.strategy.costbased.RuleAppCost;
Expand Down Expand Up @@ -166,7 +166,7 @@ private String getAppRuleName(Node parent) {
* This strategy accepts all rule apps for which the rule name starts with a string in the
* admitted set and rejects everything else.
*/
protected class PropExpansionStrategy implements Strategy<Goal> {
protected class PropExpansionStrategy implements JavaStrategy {

private final Name NAME =
new Name(UseInformationFlowContractMacro.PropExpansionStrategy.class.getSimpleName());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,9 @@
import de.uka.ilkd.key.proof.Goal;
import de.uka.ilkd.key.proof.StrategyInfoUndoMethod;
import de.uka.ilkd.key.strategy.StrategyProperties;
import de.uka.ilkd.key.util.properties.Properties;
import de.uka.ilkd.key.util.properties.Properties.Property;

import org.key_project.util.Properties;
import org.key_project.util.Properties.Property;


/// Helper class to access Information Flow information in the [StrategySettings]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@
import de.uka.ilkd.key.logic.JTerm;
import de.uka.ilkd.key.logic.ProgramElementName;
import de.uka.ilkd.key.logic.TermBuilder;
import de.uka.ilkd.key.logic.TermServices;
import de.uka.ilkd.key.logic.label.ParameterlessTermLabel;
import de.uka.ilkd.key.logic.op.JFunction;
import de.uka.ilkd.key.logic.op.LocationVariable;
Expand All @@ -43,6 +42,7 @@
import de.uka.ilkd.key.speclang.BlockContract;
import de.uka.ilkd.key.util.MiscTools;

import org.key_project.logic.LogicServices;
import org.key_project.logic.Name;
import org.key_project.logic.op.Function;
import org.key_project.prover.sequent.PosInOccurrence;
Expand Down Expand Up @@ -90,7 +90,7 @@ private InfFlowBlockContractInternalRule() {

@Override
public BlockContractInternalBuiltInRuleApp<? extends BlockContractInternalRule> createApp(
PosInOccurrence occurrence, TermServices services) {
PosInOccurrence occurrence, LogicServices services) {
return new InfFlowBlockContractInternalBuiltInRuleApp(this, occurrence);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@
import de.uka.ilkd.key.speclang.LoopSpecification;
import de.uka.ilkd.key.util.MiscTools;

import org.key_project.logic.LogicServices;
import org.key_project.logic.Name;
import org.key_project.logic.Namespace;
import org.key_project.logic.op.Function;
Expand All @@ -57,8 +58,8 @@ public Name name() {

@Override
public InfFlowLoopInvariantBuiltInRuleApp createApp(PosInOccurrence pos,
TermServices services) {
return new InfFlowLoopInvariantBuiltInRuleApp(this, pos, services);
LogicServices services) {
return new InfFlowLoopInvariantBuiltInRuleApp(this, pos, (TermServices) services);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,14 @@
import de.uka.ilkd.key.proof.StrategyInfoUndoMethod;
import de.uka.ilkd.key.rule.TacletApp;
import de.uka.ilkd.key.rule.executor.javadl.RewriteTacletExecutor;
import de.uka.ilkd.key.util.properties.Properties;

import org.key_project.logic.LogicServices;
import org.key_project.prover.rules.instantiation.MatchResultInfo;
import org.key_project.prover.sequent.PosInOccurrence;
import org.key_project.prover.sequent.Semisequent;
import org.key_project.prover.sequent.SequentChangeInfo;
import org.key_project.prover.sequent.SequentFormula;
import org.key_project.util.Properties;
import org.key_project.util.collection.ImmutableList;

import org.jspecify.annotations.NonNull;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,14 @@
import de.uka.ilkd.key.proof.Goal;
import de.uka.ilkd.key.proof.Node;
import de.uka.ilkd.key.proof.Proof;
import de.uka.ilkd.key.strategy.Strategy;
import de.uka.ilkd.key.testgen.TestGenerationSettings;

import org.key_project.logic.Name;
import org.key_project.prover.proof.ProofGoal;
import org.key_project.prover.rules.Rule;
import org.key_project.prover.rules.RuleApp;
import org.key_project.prover.sequent.PosInOccurrence;
import org.key_project.prover.strategy.Strategy;
import org.key_project.prover.strategy.costbased.MutableState;
import org.key_project.prover.strategy.costbased.NumberRuleAppCost;
import org.key_project.prover.strategy.costbased.RuleAppCost;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,16 @@
import de.uka.ilkd.key.proof.Proof;
import de.uka.ilkd.key.proof.init.ContractPO;
import de.uka.ilkd.key.proof.init.FunctionalOperationContractPO;
import de.uka.ilkd.key.strategy.RuleAppCostCollector;
import de.uka.ilkd.key.strategy.Strategy;
import de.uka.ilkd.key.strategy.JavaStrategy;
import de.uka.ilkd.key.wd.*;
import de.uka.ilkd.key.wd.po.*;

import org.key_project.logic.Name;
import org.key_project.prover.proof.ProofGoal;
import org.key_project.prover.rules.RuleApp;
import org.key_project.prover.sequent.PosInOccurrence;
import org.key_project.prover.strategy.RuleAppCostCollector;
import org.key_project.prover.strategy.Strategy;
import org.key_project.prover.strategy.costbased.MutableState;
import org.key_project.prover.strategy.costbased.NumberRuleAppCost;
import org.key_project.prover.strategy.costbased.RuleAppCost;
Expand Down Expand Up @@ -95,7 +96,7 @@ public boolean canApplyTo(Proof proof, ImmutableList<Goal> goals,
* This strategy accepts all rule apps for which the rule name is a Well-Definedness rule and
* rejects everything else.
*/
private static class WellDefinednessStrategy implements Strategy<Goal> {
private static class WellDefinednessStrategy implements JavaStrategy {

private static final Name NAME = new Name(WellDefinednessStrategy.class.getSimpleName());

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ public class TacletFindModel extends AbstractTableModel {
/**
* Create new data model for tree.
*
* @param app the TacletApp where to get the necessary entries
* @param app the ITacletApp where to get the necessary entries
* @param services services.
* @param nss universal namespace of variables, minimum for input in a row.
* @param scm the abbreviation map.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -215,7 +215,7 @@ public void setManualInput(int i, String s) {
}

/**
* replaces the TacletApp of this ApplyTacletDialogModel by an TacletApp where all name
* replaces the ITacletApp of this ApplyTacletDialogModel by an ITacletApp where all name
* conflicts are resolved and thus the parser is enabled to accept variables from the context or
* the prefix of the Taclet.
*
Expand Down
3 changes: 2 additions & 1 deletion key.core/src/main/java/de/uka/ilkd/key/ldt/IntegerLDT.java
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
import de.uka.ilkd.key.logic.TermServices;
import de.uka.ilkd.key.util.Debug;

import org.key_project.ldt.IIntLdt;
import org.key_project.logic.Name;
import org.key_project.logic.op.Function;
import org.key_project.util.ExtList;
Expand All @@ -33,7 +34,7 @@
* convert java number types to their logic counterpart.
*/
@SuppressWarnings("unused")
public final class IntegerLDT extends LDT {
public final class IntegerLDT extends LDT implements IIntLdt {
private static final Logger LOGGER = LoggerFactory.getLogger(IntegerLDT.class);

public static final Name NAME = new Name("int");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -444,7 +444,7 @@ public ProgramElementName getTemporaryNameProposal(String basename) {
@Override
public String getProposal(TacletApp app, SchemaVariable var, Services services, Node undoAnchor,
ImmutableList<String> previousProposals) {
// determine posOfDeclaration from TacletApp
// determine posOfDeclaration from ITacletApp
ContextStatementBlockInstantiation cie = app.instantiations().getContextInstantiation();
PosInProgram posOfDeclaration = (cie == null ? null : cie.prefix());

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,7 @@
import de.uka.ilkd.key.rule.OneStepSimplifier;
import de.uka.ilkd.key.speclang.ClassAxiom;
import de.uka.ilkd.key.speclang.RepresentsAxiom;
import de.uka.ilkd.key.strategy.RuleAppCostCollector;
import de.uka.ilkd.key.strategy.Strategy;
import de.uka.ilkd.key.strategy.JavaStrategy;

import org.key_project.logic.Name;
import org.key_project.logic.op.Function;
Expand All @@ -40,6 +39,8 @@
import org.key_project.prover.sequent.Semisequent;
import org.key_project.prover.sequent.Sequent;
import org.key_project.prover.sequent.SequentFormula;
import org.key_project.prover.strategy.RuleAppCostCollector;
import org.key_project.prover.strategy.Strategy;
import org.key_project.prover.strategy.costbased.MutableState;
import org.key_project.prover.strategy.costbased.NumberRuleAppCost;
import org.key_project.prover.strategy.costbased.RuleAppCost;
Expand Down Expand Up @@ -203,7 +204,7 @@ private static void addFormulas(List<SequentFormula> result,
}
}

private class SemanticsBlastingStrategy implements Strategy<Goal> {
private class SemanticsBlastingStrategy implements JavaStrategy {

@Override
public @NonNull Name name() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ public String getCategory() {
protected abstract boolean allowOSS();

@Override
protected Strategy<@NonNull Goal> createStrategy(Proof proof,
protected org.key_project.prover.strategy.Strategy<@NonNull Goal> createStrategy(Proof proof,
PosInOccurrence posInOcc) {
return new PropExpansionStrategy(proof.getActiveStrategy(), getAdmittedRuleNames(),
allowOSS());
Expand All @@ -85,14 +85,15 @@ protected boolean ruleApplicationInContextAllowed(RuleApp ruleApp,
* This strategy accepts all rule apps for which the rule name is in the admitted set and
* rejects everything else.
*/
private static class PropExpansionStrategy implements Strategy<Goal> {
private static class PropExpansionStrategy implements JavaStrategy {
private final Name NAME = new Name(PropExpansionStrategy.class.getSimpleName());

private final Set<String> admittedRuleNames;
private final Strategy<@NonNull Goal> delegate;
private final org.key_project.prover.strategy.Strategy<@NonNull Goal> delegate;
private final boolean allowOSS;

public PropExpansionStrategy(Strategy<@NonNull Goal> delegate,
public PropExpansionStrategy(
org.key_project.prover.strategy.Strategy<@NonNull Goal> delegate,
Set<String> admittedRuleNames,
boolean allowOSS) {
this.delegate = delegate;
Expand Down Expand Up @@ -134,7 +135,7 @@ public boolean isApprovedApp(RuleApp app, PosInOccurrence pio,

@Override
public void instantiateApp(RuleApp app, PosInOccurrence pio, Goal goal,
RuleAppCostCollector collector) {
org.key_project.prover.strategy.RuleAppCostCollector collector) {
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,12 @@
import de.uka.ilkd.key.proof.Goal;
import de.uka.ilkd.key.proof.Proof;
import de.uka.ilkd.key.rule.Taclet;
import de.uka.ilkd.key.strategy.Strategy;

import org.key_project.logic.Name;
import org.key_project.prover.rules.Rule;
import org.key_project.prover.rules.RuleApp;
import org.key_project.prover.sequent.PosInOccurrence;
import org.key_project.prover.strategy.Strategy;

import org.jspecify.annotations.NonNull;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,10 +76,10 @@ public static boolean isAdmittedRule(Rule rule) {
return false;
}

private static class AutoPilotStrategy implements Strategy<Goal> {
private static class AutoPilotStrategy implements JavaStrategy {

private static final Name NAME = new Name("Autopilot filter strategy");
private final Strategy<@NonNull Goal> delegate;
private final org.key_project.prover.strategy.Strategy<@NonNull Goal> delegate;
/** the modality cache used by this strategy */
private final ModalityCache modalityCache = new ModalityCache();

Expand Down Expand Up @@ -144,7 +144,7 @@ public boolean isApprovedApp(RuleApp app, PosInOccurrence pio, Goal goal) {
@Override
public void instantiateApp(RuleApp app, PosInOccurrence pio,
Goal goal,
RuleAppCostCollector collector) {
org.key_project.prover.strategy.RuleAppCostCollector collector) {
delegate.instantiateApp(app, pio, goal, collector);
}

Expand All @@ -156,7 +156,7 @@ public boolean isStopAtFirstNonCloseableGoal() {
}

@Override
protected Strategy<@NonNull Goal> createStrategy(Proof proof,
protected org.key_project.prover.strategy.Strategy<@NonNull Goal> createStrategy(Proof proof,
PosInOccurrence posInOcc) {
return new AutoPilotStrategy(proof);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,20 @@
package de.uka.ilkd.key.macros;

import de.uka.ilkd.key.proof.Goal;
import de.uka.ilkd.key.strategy.RuleAppCostCollector;
import de.uka.ilkd.key.strategy.Strategy;
import de.uka.ilkd.key.strategy.JavaStrategy;

import org.key_project.prover.proof.ProofGoal;
import org.key_project.prover.rules.RuleApp;
import org.key_project.prover.sequent.PosInOccurrence;
import org.key_project.prover.strategy.RuleAppCostCollector;
import org.key_project.prover.strategy.Strategy;
import org.key_project.prover.strategy.costbased.MutableState;
import org.key_project.prover.strategy.costbased.RuleAppCost;
import org.key_project.prover.strategy.costbased.TopRuleAppCost;

import org.jspecify.annotations.NonNull;

public abstract class FilterStrategy implements Strategy<@NonNull Goal> {
public abstract class FilterStrategy implements JavaStrategy {

private final Strategy<@NonNull Goal> delegate;

Expand Down
Loading
Loading