diff options
57 files changed, 335 insertions, 329 deletions
diff --git a/settings.gradle b/settings.gradle index 94a3c2e6..81bcb53b 100644 --- a/settings.gradle +++ b/settings.gradle | |||
@@ -7,9 +7,9 @@ include 'language-model' | |||
7 | include 'language-semantics' | 7 | include 'language-semantics' |
8 | include 'language-web' | 8 | include 'language-web' |
9 | include 'store' | 9 | include 'store' |
10 | include 'store-partial' | ||
11 | include 'store-query' | 10 | include 'store-query' |
12 | include 'store-query-viatra' | 11 | include 'store-query-viatra' |
12 | include 'store-reasoning' | ||
13 | 13 | ||
14 | for (project in rootProject.children) { | 14 | for (project in rootProject.children) { |
15 | def projectName = project.name | 15 | def projectName = project.name |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/AnyPartialSymbolInterpretation.java b/subprojects/store-partial/src/main/java/tools/refinery/store/partial/AnyPartialSymbolInterpretation.java deleted file mode 100644 index b6b1f2be..00000000 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/AnyPartialSymbolInterpretation.java +++ /dev/null | |||
@@ -1,13 +0,0 @@ | |||
1 | package tools.refinery.store.partial; | ||
2 | |||
3 | import tools.refinery.store.partial.representation.AnyPartialSymbol; | ||
4 | |||
5 | public sealed interface AnyPartialSymbolInterpretation permits PartialSymbolInterpretation { | ||
6 | PartialInterpretationAdapter getAdapter(); | ||
7 | |||
8 | AnyPartialSymbol getPartialSymbol(); | ||
9 | |||
10 | int countUnfinished(); | ||
11 | |||
12 | int countErrors(); | ||
13 | } | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/PartialInterpretation.java b/subprojects/store-partial/src/main/java/tools/refinery/store/partial/PartialInterpretation.java deleted file mode 100644 index d76f8728..00000000 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/PartialInterpretation.java +++ /dev/null | |||
@@ -1,24 +0,0 @@ | |||
1 | package tools.refinery.store.partial; | ||
2 | |||
3 | import tools.refinery.store.partial.internal.PartialInterpretationBuilderImpl; | ||
4 | import tools.refinery.store.adapter.ModelAdapterBuilderFactory; | ||
5 | import tools.refinery.store.model.ModelStoreBuilder; | ||
6 | import tools.refinery.store.partial.representation.PartialRelation; | ||
7 | |||
8 | public final class PartialInterpretation extends ModelAdapterBuilderFactory<PartialInterpretationAdapter, | ||
9 | PartialInterpretationStoreAdapter, PartialInterpretationBuilder> { | ||
10 | public static final PartialInterpretation ADAPTER = new PartialInterpretation(); | ||
11 | |||
12 | public static final PartialRelation EXISTS = new PartialRelation("exists", 1); | ||
13 | |||
14 | public static final PartialRelation EQUALS = new PartialRelation("equals", 1); | ||
15 | |||
16 | private PartialInterpretation() { | ||
17 | super(PartialInterpretationAdapter.class, PartialInterpretationStoreAdapter.class, PartialInterpretationBuilder.class); | ||
18 | } | ||
19 | |||
20 | @Override | ||
21 | public PartialInterpretationBuilder createBuilder(ModelStoreBuilder storeBuilder) { | ||
22 | return new PartialInterpretationBuilderImpl(storeBuilder); | ||
23 | } | ||
24 | } | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/PartialInterpretationAdapter.java b/subprojects/store-partial/src/main/java/tools/refinery/store/partial/PartialInterpretationAdapter.java deleted file mode 100644 index b811ae7a..00000000 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/PartialInterpretationAdapter.java +++ /dev/null | |||
@@ -1,20 +0,0 @@ | |||
1 | package tools.refinery.store.partial; | ||
2 | |||
3 | import tools.refinery.store.adapter.ModelAdapter; | ||
4 | import tools.refinery.store.partial.representation.AnyPartialSymbol; | ||
5 | import tools.refinery.store.partial.representation.PartialSymbol; | ||
6 | import tools.refinery.store.query.Dnf; | ||
7 | import tools.refinery.store.query.ResultSet; | ||
8 | |||
9 | public interface PartialInterpretationAdapter extends ModelAdapter { | ||
10 | @Override | ||
11 | PartialInterpretationStoreAdapter getStoreAdapter(); | ||
12 | |||
13 | default AnyPartialSymbolInterpretation getPartialInterpretation(AnyPartialSymbol partialSymbol) { | ||
14 | return getPartialInterpretation((PartialSymbol<?, ?>) partialSymbol); | ||
15 | } | ||
16 | |||
17 | <A, C> PartialSymbolInterpretation<A, C> getPartialInterpretation(PartialSymbol<A, C> partialSymbol); | ||
18 | |||
19 | ResultSet getLiftedResultSet(Dnf query); | ||
20 | } | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/PartialInterpretationBuilder.java b/subprojects/store-partial/src/main/java/tools/refinery/store/partial/PartialInterpretationBuilder.java deleted file mode 100644 index db042466..00000000 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/PartialInterpretationBuilder.java +++ /dev/null | |||
@@ -1,28 +0,0 @@ | |||
1 | package tools.refinery.store.partial; | ||
2 | |||
3 | import tools.refinery.store.adapter.ModelAdapterBuilder; | ||
4 | import tools.refinery.store.model.ModelStore; | ||
5 | import tools.refinery.store.query.Dnf; | ||
6 | import tools.refinery.store.partial.literal.Modality; | ||
7 | |||
8 | import java.util.Collection; | ||
9 | import java.util.List; | ||
10 | |||
11 | @SuppressWarnings("UnusedReturnValue") | ||
12 | public interface PartialInterpretationBuilder extends ModelAdapterBuilder { | ||
13 | default PartialInterpretationBuilder liftedQueries(Dnf... liftedQueries) { | ||
14 | return liftedQueries(List.of(liftedQueries)); | ||
15 | } | ||
16 | |||
17 | default PartialInterpretationBuilder liftedQueries(Collection<Dnf> liftedQueries) { | ||
18 | liftedQueries.forEach(this::liftedQuery); | ||
19 | return this; | ||
20 | } | ||
21 | |||
22 | PartialInterpretationBuilder liftedQuery(Dnf liftedQuery); | ||
23 | |||
24 | Dnf lift(Modality modality, Dnf query); | ||
25 | |||
26 | @Override | ||
27 | PartialInterpretationStoreAdapter createStoreAdapter(ModelStore store); | ||
28 | } | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/internal/PartialInterpretationAdapterImpl.java b/subprojects/store-partial/src/main/java/tools/refinery/store/partial/internal/PartialInterpretationAdapterImpl.java deleted file mode 100644 index c482d8a2..00000000 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/internal/PartialInterpretationAdapterImpl.java +++ /dev/null | |||
@@ -1,38 +0,0 @@ | |||
1 | package tools.refinery.store.partial.internal; | ||
2 | |||
3 | import tools.refinery.store.model.Model; | ||
4 | import tools.refinery.store.partial.PartialInterpretationAdapter; | ||
5 | import tools.refinery.store.partial.PartialSymbolInterpretation; | ||
6 | import tools.refinery.store.partial.representation.PartialSymbol; | ||
7 | import tools.refinery.store.query.Dnf; | ||
8 | import tools.refinery.store.query.ResultSet; | ||
9 | |||
10 | public class PartialInterpretationAdapterImpl implements PartialInterpretationAdapter { | ||
11 | private final Model model; | ||
12 | private final PartialInterpretationStoreAdapterImpl storeAdapter; | ||
13 | |||
14 | PartialInterpretationAdapterImpl(Model model, PartialInterpretationStoreAdapterImpl storeAdapter) { | ||
15 | this.model = model; | ||
16 | this.storeAdapter = storeAdapter; | ||
17 | } | ||
18 | |||
19 | @Override | ||
20 | public Model getModel() { | ||
21 | return model; | ||
22 | } | ||
23 | |||
24 | @Override | ||
25 | public PartialInterpretationStoreAdapterImpl getStoreAdapter() { | ||
26 | return storeAdapter; | ||
27 | } | ||
28 | |||
29 | @Override | ||
30 | public <A, C> PartialSymbolInterpretation<A, C> getPartialInterpretation(PartialSymbol<A, C> partialSymbol) { | ||
31 | return null; | ||
32 | } | ||
33 | |||
34 | @Override | ||
35 | public ResultSet getLiftedResultSet(Dnf query) { | ||
36 | return null; | ||
37 | } | ||
38 | } | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/internal/PartialInterpretationBuilderImpl.java b/subprojects/store-partial/src/main/java/tools/refinery/store/partial/internal/PartialInterpretationBuilderImpl.java deleted file mode 100644 index 5853aeaf..00000000 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/internal/PartialInterpretationBuilderImpl.java +++ /dev/null | |||
@@ -1,29 +0,0 @@ | |||
1 | package tools.refinery.store.partial.internal; | ||
2 | |||
3 | import tools.refinery.store.adapter.AbstractModelAdapterBuilder; | ||
4 | import tools.refinery.store.model.ModelStore; | ||
5 | import tools.refinery.store.model.ModelStoreBuilder; | ||
6 | import tools.refinery.store.partial.PartialInterpretationBuilder; | ||
7 | import tools.refinery.store.partial.literal.Modality; | ||
8 | import tools.refinery.store.query.Dnf; | ||
9 | |||
10 | public class PartialInterpretationBuilderImpl extends AbstractModelAdapterBuilder implements PartialInterpretationBuilder { | ||
11 | public PartialInterpretationBuilderImpl(ModelStoreBuilder storeBuilder) { | ||
12 | super(storeBuilder); | ||
13 | } | ||
14 | |||
15 | @Override | ||
16 | public PartialInterpretationBuilder liftedQuery(Dnf liftedQuery) { | ||
17 | return null; | ||
18 | } | ||
19 | |||
20 | @Override | ||
21 | public Dnf lift(Modality modality, Dnf query) { | ||
22 | return null; | ||
23 | } | ||
24 | |||
25 | @Override | ||
26 | public PartialInterpretationStoreAdapterImpl createStoreAdapter(ModelStore store) { | ||
27 | return null; | ||
28 | } | ||
29 | } | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/internal/PartialInterpretationStoreAdapterImpl.java b/subprojects/store-partial/src/main/java/tools/refinery/store/partial/internal/PartialInterpretationStoreAdapterImpl.java deleted file mode 100644 index 0486af6e..00000000 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/internal/PartialInterpretationStoreAdapterImpl.java +++ /dev/null | |||
@@ -1,37 +0,0 @@ | |||
1 | package tools.refinery.store.partial.internal; | ||
2 | |||
3 | import tools.refinery.store.partial.PartialInterpretationStoreAdapter; | ||
4 | import tools.refinery.store.model.Model; | ||
5 | import tools.refinery.store.model.ModelStore; | ||
6 | import tools.refinery.store.partial.representation.AnyPartialSymbol; | ||
7 | import tools.refinery.store.query.Dnf; | ||
8 | |||
9 | import java.util.Collection; | ||
10 | |||
11 | public class PartialInterpretationStoreAdapterImpl implements PartialInterpretationStoreAdapter { | ||
12 | private final ModelStore store; | ||
13 | |||
14 | PartialInterpretationStoreAdapterImpl(ModelStore store) { | ||
15 | this.store = store; | ||
16 | } | ||
17 | |||
18 | @Override | ||
19 | public ModelStore getStore() { | ||
20 | return store; | ||
21 | } | ||
22 | |||
23 | @Override | ||
24 | public Collection<AnyPartialSymbol> getPartialSymbols() { | ||
25 | return null; | ||
26 | } | ||
27 | |||
28 | @Override | ||
29 | public Collection<Dnf> getLiftedQueries() { | ||
30 | return null; | ||
31 | } | ||
32 | |||
33 | @Override | ||
34 | public PartialInterpretationAdapterImpl createModelAdapter(Model model) { | ||
35 | return new PartialInterpretationAdapterImpl(model, this); | ||
36 | } | ||
37 | } | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/TranslationUnit.java b/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/TranslationUnit.java deleted file mode 100644 index 26bd909b..00000000 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/TranslationUnit.java +++ /dev/null | |||
@@ -1,48 +0,0 @@ | |||
1 | package tools.refinery.store.partial.translator; | ||
2 | |||
3 | import tools.refinery.store.partial.PartialInterpretationBuilder; | ||
4 | import tools.refinery.store.model.Model; | ||
5 | import tools.refinery.store.model.ModelStoreBuilder; | ||
6 | import tools.refinery.store.partial.AnyPartialSymbolInterpretation; | ||
7 | import tools.refinery.store.partial.literal.Modality; | ||
8 | import tools.refinery.store.partial.representation.AnyPartialSymbol; | ||
9 | import tools.refinery.store.partial.representation.PartialRelation; | ||
10 | import tools.refinery.store.query.Variable; | ||
11 | import tools.refinery.store.query.literal.CallPolarity; | ||
12 | import tools.refinery.store.query.literal.Literal; | ||
13 | |||
14 | import java.util.Collection; | ||
15 | import java.util.List; | ||
16 | import java.util.Map; | ||
17 | |||
18 | public abstract class TranslationUnit { | ||
19 | private PartialInterpretationBuilder partialInterpretationBuilder; | ||
20 | |||
21 | protected PartialInterpretationBuilder getPartialInterpretationBuilder() { | ||
22 | return partialInterpretationBuilder; | ||
23 | } | ||
24 | |||
25 | public void setPartialInterpretationBuilder(PartialInterpretationBuilder partialInterpretationBuilder) { | ||
26 | this.partialInterpretationBuilder = partialInterpretationBuilder; | ||
27 | } | ||
28 | |||
29 | protected ModelStoreBuilder getModelStoreBuilder() { | ||
30 | return partialInterpretationBuilder.getStoreBuilder(); | ||
31 | } | ||
32 | |||
33 | public abstract Collection<AnyPartialSymbol> getTranslatedPartialSymbols(); | ||
34 | |||
35 | public Collection<Advice> computeAdvices() { | ||
36 | // No advices to give by default. | ||
37 | return List.of(); | ||
38 | } | ||
39 | |||
40 | public abstract void configure(Collection<Advice> advices); | ||
41 | |||
42 | public abstract List<Literal> call(CallPolarity polarity, Modality modality, PartialRelation target, | ||
43 | List<Variable> arguments); | ||
44 | |||
45 | public abstract Map<AnyPartialSymbol, AnyPartialSymbolInterpretation> createPartialInterpretations(Model model); | ||
46 | |||
47 | public abstract void initializeModel(Model model, int nodeCount); | ||
48 | } | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/EliminatedType.java b/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/EliminatedType.java deleted file mode 100644 index 9adf6bc8..00000000 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/EliminatedType.java +++ /dev/null | |||
@@ -1,6 +0,0 @@ | |||
1 | package tools.refinery.store.partial.translator.typehierarchy; | ||
2 | |||
3 | import tools.refinery.store.partial.representation.PartialRelation; | ||
4 | |||
5 | record EliminatedType(PartialRelation replacement) implements TypeAnalysisResult { | ||
6 | } | ||
diff --git a/subprojects/store-partial/build.gradle b/subprojects/store-reasoning/build.gradle index cb440d9f..cb440d9f 100644 --- a/subprojects/store-partial/build.gradle +++ b/subprojects/store-reasoning/build.gradle | |||
diff --git a/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/AnyPartialInterpretation.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/AnyPartialInterpretation.java new file mode 100644 index 00000000..ebe82c8b --- /dev/null +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/AnyPartialInterpretation.java | |||
@@ -0,0 +1,13 @@ | |||
1 | package tools.refinery.store.reasoning; | ||
2 | |||
3 | import tools.refinery.store.reasoning.representation.AnyPartialSymbol; | ||
4 | |||
5 | public sealed interface AnyPartialInterpretation permits PartialInterpretation { | ||
6 | ReasoningAdapter getAdapter(); | ||
7 | |||
8 | AnyPartialSymbol getPartialSymbol(); | ||
9 | |||
10 | int countUnfinished(); | ||
11 | |||
12 | int countErrors(); | ||
13 | } | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/MergeResult.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/MergeResult.java index 82414d87..0d51598b 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/MergeResult.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/MergeResult.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.partial; | 1 | package tools.refinery.store.reasoning; |
2 | 2 | ||
3 | public enum MergeResult { | 3 | public enum MergeResult { |
4 | UNCHANGED, | 4 | UNCHANGED, |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/PartialSymbolInterpretation.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/PartialInterpretation.java index fa9e9216..99656da8 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/PartialSymbolInterpretation.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/PartialInterpretation.java | |||
@@ -1,10 +1,10 @@ | |||
1 | package tools.refinery.store.partial; | 1 | package tools.refinery.store.reasoning; |
2 | 2 | ||
3 | import tools.refinery.store.partial.representation.PartialSymbol; | 3 | import tools.refinery.store.reasoning.representation.PartialSymbol; |
4 | import tools.refinery.store.map.Cursor; | 4 | import tools.refinery.store.map.Cursor; |
5 | import tools.refinery.store.tuple.Tuple; | 5 | import tools.refinery.store.tuple.Tuple; |
6 | 6 | ||
7 | public non-sealed interface PartialSymbolInterpretation<A, C> extends AnyPartialSymbolInterpretation { | 7 | public non-sealed interface PartialInterpretation<A, C> extends AnyPartialInterpretation { |
8 | @Override | 8 | @Override |
9 | PartialSymbol<A, C> getPartialSymbol(); | 9 | PartialSymbol<A, C> getPartialSymbol(); |
10 | 10 | ||
diff --git a/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/Reasoning.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/Reasoning.java new file mode 100644 index 00000000..d7d0a999 --- /dev/null +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/Reasoning.java | |||
@@ -0,0 +1,24 @@ | |||
1 | package tools.refinery.store.reasoning; | ||
2 | |||
3 | import tools.refinery.store.reasoning.internal.ReasoningBuilderImpl; | ||
4 | import tools.refinery.store.adapter.ModelAdapterBuilderFactory; | ||
5 | import tools.refinery.store.model.ModelStoreBuilder; | ||
6 | import tools.refinery.store.reasoning.representation.PartialRelation; | ||
7 | |||
8 | public final class Reasoning extends ModelAdapterBuilderFactory<ReasoningAdapter, | ||
9 | ReasoningStoreAdapter, ReasoningBuilder> { | ||
10 | public static final Reasoning ADAPTER = new Reasoning(); | ||
11 | |||
12 | public static final PartialRelation EXISTS = new PartialRelation("exists", 1); | ||
13 | |||
14 | public static final PartialRelation EQUALS = new PartialRelation("equals", 1); | ||
15 | |||
16 | private Reasoning() { | ||
17 | super(ReasoningAdapter.class, ReasoningStoreAdapter.class, ReasoningBuilder.class); | ||
18 | } | ||
19 | |||
20 | @Override | ||
21 | public ReasoningBuilder createBuilder(ModelStoreBuilder storeBuilder) { | ||
22 | return new ReasoningBuilderImpl(storeBuilder); | ||
23 | } | ||
24 | } | ||
diff --git a/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/ReasoningAdapter.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/ReasoningAdapter.java new file mode 100644 index 00000000..e602242e --- /dev/null +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/ReasoningAdapter.java | |||
@@ -0,0 +1,22 @@ | |||
1 | package tools.refinery.store.reasoning; | ||
2 | |||
3 | import tools.refinery.store.adapter.ModelAdapter; | ||
4 | import tools.refinery.store.reasoning.representation.AnyPartialSymbol; | ||
5 | import tools.refinery.store.reasoning.representation.PartialSymbol; | ||
6 | import tools.refinery.store.query.Dnf; | ||
7 | import tools.refinery.store.query.ResultSet; | ||
8 | |||
9 | public interface ReasoningAdapter extends ModelAdapter { | ||
10 | @Override | ||
11 | ReasoningStoreAdapter getStoreAdapter(); | ||
12 | |||
13 | default AnyPartialInterpretation getPartialInterpretation(AnyPartialSymbol partialSymbol) { | ||
14 | // Cast to disambiguate overloads. | ||
15 | var typedPartialSymbol = (PartialSymbol<?, ?>) partialSymbol; | ||
16 | return getPartialInterpretation(typedPartialSymbol); | ||
17 | } | ||
18 | |||
19 | <A, C> PartialInterpretation<A, C> getPartialInterpretation(PartialSymbol<A, C> partialSymbol); | ||
20 | |||
21 | ResultSet getLiftedResultSet(Dnf query); | ||
22 | } | ||
diff --git a/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/ReasoningBuilder.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/ReasoningBuilder.java new file mode 100644 index 00000000..588c2711 --- /dev/null +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/ReasoningBuilder.java | |||
@@ -0,0 +1,28 @@ | |||
1 | package tools.refinery.store.reasoning; | ||
2 | |||
3 | import tools.refinery.store.adapter.ModelAdapterBuilder; | ||
4 | import tools.refinery.store.model.ModelStore; | ||
5 | import tools.refinery.store.reasoning.literal.Modality; | ||
6 | import tools.refinery.store.query.Dnf; | ||
7 | |||
8 | import java.util.Collection; | ||
9 | import java.util.List; | ||
10 | |||
11 | @SuppressWarnings("UnusedReturnValue") | ||
12 | public interface ReasoningBuilder extends ModelAdapterBuilder { | ||
13 | default ReasoningBuilder liftedQueries(Dnf... liftedQueries) { | ||
14 | return liftedQueries(List.of(liftedQueries)); | ||
15 | } | ||
16 | |||
17 | default ReasoningBuilder liftedQueries(Collection<Dnf> liftedQueries) { | ||
18 | liftedQueries.forEach(this::liftedQuery); | ||
19 | return this; | ||
20 | } | ||
21 | |||
22 | ReasoningBuilder liftedQuery(Dnf liftedQuery); | ||
23 | |||
24 | Dnf lift(Modality modality, Dnf query); | ||
25 | |||
26 | @Override | ||
27 | ReasoningStoreAdapter createStoreAdapter(ModelStore store); | ||
28 | } | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/PartialInterpretationStoreAdapter.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/ReasoningStoreAdapter.java index a1813671..69c0f5eb 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/PartialInterpretationStoreAdapter.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/ReasoningStoreAdapter.java | |||
@@ -1,17 +1,17 @@ | |||
1 | package tools.refinery.store.partial; | 1 | package tools.refinery.store.reasoning; |
2 | 2 | ||
3 | import tools.refinery.store.adapter.ModelStoreAdapter; | 3 | import tools.refinery.store.adapter.ModelStoreAdapter; |
4 | import tools.refinery.store.model.Model; | 4 | import tools.refinery.store.model.Model; |
5 | import tools.refinery.store.partial.representation.AnyPartialSymbol; | 5 | import tools.refinery.store.reasoning.representation.AnyPartialSymbol; |
6 | import tools.refinery.store.query.Dnf; | 6 | import tools.refinery.store.query.Dnf; |
7 | 7 | ||
8 | import java.util.Collection; | 8 | import java.util.Collection; |
9 | 9 | ||
10 | public interface PartialInterpretationStoreAdapter extends ModelStoreAdapter { | 10 | public interface ReasoningStoreAdapter extends ModelStoreAdapter { |
11 | Collection<AnyPartialSymbol> getPartialSymbols(); | 11 | Collection<AnyPartialSymbol> getPartialSymbols(); |
12 | 12 | ||
13 | Collection<Dnf> getLiftedQueries(); | 13 | Collection<Dnf> getLiftedQueries(); |
14 | 14 | ||
15 | @Override | 15 | @Override |
16 | PartialInterpretationAdapter createModelAdapter(Model model); | 16 | ReasoningAdapter createModelAdapter(Model model); |
17 | } | 17 | } |
diff --git a/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/internal/ReasoningAdapterImpl.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/internal/ReasoningAdapterImpl.java new file mode 100644 index 00000000..a7a56680 --- /dev/null +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/internal/ReasoningAdapterImpl.java | |||
@@ -0,0 +1,38 @@ | |||
1 | package tools.refinery.store.reasoning.internal; | ||
2 | |||
3 | import tools.refinery.store.model.Model; | ||
4 | import tools.refinery.store.reasoning.ReasoningAdapter; | ||
5 | import tools.refinery.store.reasoning.PartialInterpretation; | ||
6 | import tools.refinery.store.reasoning.representation.PartialSymbol; | ||
7 | import tools.refinery.store.query.Dnf; | ||
8 | import tools.refinery.store.query.ResultSet; | ||
9 | |||
10 | public class ReasoningAdapterImpl implements ReasoningAdapter { | ||
11 | private final Model model; | ||
12 | private final ReasoningStoreAdapterImpl storeAdapter; | ||
13 | |||
14 | ReasoningAdapterImpl(Model model, ReasoningStoreAdapterImpl storeAdapter) { | ||
15 | this.model = model; | ||
16 | this.storeAdapter = storeAdapter; | ||
17 | } | ||
18 | |||
19 | @Override | ||
20 | public Model getModel() { | ||
21 | return model; | ||
22 | } | ||
23 | |||
24 | @Override | ||
25 | public ReasoningStoreAdapterImpl getStoreAdapter() { | ||
26 | return storeAdapter; | ||
27 | } | ||
28 | |||
29 | @Override | ||
30 | public <A, C> PartialInterpretation<A, C> getPartialInterpretation(PartialSymbol<A, C> partialSymbol) { | ||
31 | return null; | ||
32 | } | ||
33 | |||
34 | @Override | ||
35 | public ResultSet getLiftedResultSet(Dnf query) { | ||
36 | return null; | ||
37 | } | ||
38 | } | ||
diff --git a/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/internal/ReasoningBuilderImpl.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/internal/ReasoningBuilderImpl.java new file mode 100644 index 00000000..2860e2b9 --- /dev/null +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/internal/ReasoningBuilderImpl.java | |||
@@ -0,0 +1,29 @@ | |||
1 | package tools.refinery.store.reasoning.internal; | ||
2 | |||
3 | import tools.refinery.store.adapter.AbstractModelAdapterBuilder; | ||
4 | import tools.refinery.store.model.ModelStore; | ||
5 | import tools.refinery.store.model.ModelStoreBuilder; | ||
6 | import tools.refinery.store.reasoning.ReasoningBuilder; | ||
7 | import tools.refinery.store.reasoning.literal.Modality; | ||
8 | import tools.refinery.store.query.Dnf; | ||
9 | |||
10 | public class ReasoningBuilderImpl extends AbstractModelAdapterBuilder implements ReasoningBuilder { | ||
11 | public ReasoningBuilderImpl(ModelStoreBuilder storeBuilder) { | ||
12 | super(storeBuilder); | ||
13 | } | ||
14 | |||
15 | @Override | ||
16 | public ReasoningBuilder liftedQuery(Dnf liftedQuery) { | ||
17 | return null; | ||
18 | } | ||
19 | |||
20 | @Override | ||
21 | public Dnf lift(Modality modality, Dnf query) { | ||
22 | return null; | ||
23 | } | ||
24 | |||
25 | @Override | ||
26 | public ReasoningStoreAdapterImpl createStoreAdapter(ModelStore store) { | ||
27 | return null; | ||
28 | } | ||
29 | } | ||
diff --git a/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/internal/ReasoningStoreAdapterImpl.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/internal/ReasoningStoreAdapterImpl.java new file mode 100644 index 00000000..763dad6d --- /dev/null +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/internal/ReasoningStoreAdapterImpl.java | |||
@@ -0,0 +1,37 @@ | |||
1 | package tools.refinery.store.reasoning.internal; | ||
2 | |||
3 | import tools.refinery.store.reasoning.ReasoningStoreAdapter; | ||
4 | import tools.refinery.store.model.Model; | ||
5 | import tools.refinery.store.model.ModelStore; | ||
6 | import tools.refinery.store.reasoning.representation.AnyPartialSymbol; | ||
7 | import tools.refinery.store.query.Dnf; | ||
8 | |||
9 | import java.util.Collection; | ||
10 | |||
11 | public class ReasoningStoreAdapterImpl implements ReasoningStoreAdapter { | ||
12 | private final ModelStore store; | ||
13 | |||
14 | ReasoningStoreAdapterImpl(ModelStore store) { | ||
15 | this.store = store; | ||
16 | } | ||
17 | |||
18 | @Override | ||
19 | public ModelStore getStore() { | ||
20 | return store; | ||
21 | } | ||
22 | |||
23 | @Override | ||
24 | public Collection<AnyPartialSymbol> getPartialSymbols() { | ||
25 | return null; | ||
26 | } | ||
27 | |||
28 | @Override | ||
29 | public Collection<Dnf> getLiftedQueries() { | ||
30 | return null; | ||
31 | } | ||
32 | |||
33 | @Override | ||
34 | public ReasoningAdapterImpl createModelAdapter(Model model) { | ||
35 | return new ReasoningAdapterImpl(model, this); | ||
36 | } | ||
37 | } | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/lifting/DnfLifter.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/lifting/DnfLifter.java index 1c35b925..966e080a 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/lifting/DnfLifter.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/lifting/DnfLifter.java | |||
@@ -1,10 +1,10 @@ | |||
1 | package tools.refinery.store.partial.lifting; | 1 | package tools.refinery.store.reasoning.lifting; |
2 | 2 | ||
3 | import org.jetbrains.annotations.Nullable; | 3 | import org.jetbrains.annotations.Nullable; |
4 | import tools.refinery.store.partial.literal.ModalDnfCallLiteral; | 4 | import tools.refinery.store.reasoning.literal.ModalDnfCallLiteral; |
5 | import tools.refinery.store.partial.PartialInterpretation; | 5 | import tools.refinery.store.reasoning.Reasoning; |
6 | import tools.refinery.store.partial.literal.ModalRelationLiteral; | 6 | import tools.refinery.store.reasoning.literal.ModalRelationLiteral; |
7 | import tools.refinery.store.partial.literal.PartialRelationLiteral; | 7 | import tools.refinery.store.reasoning.literal.PartialRelationLiteral; |
8 | import tools.refinery.store.query.Dnf; | 8 | import tools.refinery.store.query.Dnf; |
9 | import tools.refinery.store.query.DnfBuilder; | 9 | import tools.refinery.store.query.DnfBuilder; |
10 | import tools.refinery.store.query.DnfClause; | 10 | import tools.refinery.store.query.DnfClause; |
@@ -12,7 +12,7 @@ import tools.refinery.store.query.Variable; | |||
12 | import tools.refinery.store.query.literal.CallPolarity; | 12 | import tools.refinery.store.query.literal.CallPolarity; |
13 | import tools.refinery.store.query.literal.DnfCallLiteral; | 13 | import tools.refinery.store.query.literal.DnfCallLiteral; |
14 | import tools.refinery.store.query.literal.Literal; | 14 | import tools.refinery.store.query.literal.Literal; |
15 | import tools.refinery.store.partial.literal.Modality; | 15 | import tools.refinery.store.reasoning.literal.Modality; |
16 | import tools.refinery.store.util.CycleDetectingMapper; | 16 | import tools.refinery.store.util.CycleDetectingMapper; |
17 | 17 | ||
18 | import java.util.ArrayList; | 18 | import java.util.ArrayList; |
@@ -66,7 +66,7 @@ public class DnfLifter { | |||
66 | } | 66 | } |
67 | for (var quantifiedVariable : quantifiedVariables) { | 67 | for (var quantifiedVariable : quantifiedVariables) { |
68 | // Quantify over variables that are not already quantified with the expected modality. | 68 | // Quantify over variables that are not already quantified with the expected modality. |
69 | liftedLiterals.add(PartialInterpretation.EXISTS.call(CallPolarity.POSITIVE, modality, | 69 | liftedLiterals.add(Reasoning.EXISTS.call(CallPolarity.POSITIVE, modality, |
70 | List.of(quantifiedVariable))); | 70 | List.of(quantifiedVariable))); |
71 | } | 71 | } |
72 | builder.clause(liftedLiterals); | 72 | builder.clause(liftedLiterals); |
@@ -78,7 +78,7 @@ public class DnfLifter { | |||
78 | if (literal instanceof ModalRelationLiteral modalRelationLiteral && | 78 | if (literal instanceof ModalRelationLiteral modalRelationLiteral && |
79 | modalRelationLiteral.getPolarity() == CallPolarity.POSITIVE && | 79 | modalRelationLiteral.getPolarity() == CallPolarity.POSITIVE && |
80 | modalRelationLiteral.getModality() == modality && | 80 | modalRelationLiteral.getModality() == modality && |
81 | modalRelationLiteral.getTarget().equals(PartialInterpretation.EXISTS)) { | 81 | modalRelationLiteral.getTarget().equals(Reasoning.EXISTS)) { |
82 | return modalRelationLiteral.getArguments().get(0); | 82 | return modalRelationLiteral.getArguments().get(0); |
83 | } | 83 | } |
84 | return null; | 84 | return null; |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/lifting/ModalDnf.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/lifting/ModalDnf.java index 6fe54ad9..7aa98bf2 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/lifting/ModalDnf.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/lifting/ModalDnf.java | |||
@@ -1,7 +1,7 @@ | |||
1 | package tools.refinery.store.partial.lifting; | 1 | package tools.refinery.store.reasoning.lifting; |
2 | 2 | ||
3 | import tools.refinery.store.query.Dnf; | 3 | import tools.refinery.store.query.Dnf; |
4 | import tools.refinery.store.partial.literal.Modality; | 4 | import tools.refinery.store.reasoning.literal.Modality; |
5 | 5 | ||
6 | public record ModalDnf(Modality modality, Dnf dnf) { | 6 | public record ModalDnf(Modality modality, Dnf dnf) { |
7 | @Override | 7 | @Override |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/literal/ModalDnfCallLiteral.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/literal/ModalDnfCallLiteral.java index 8c157187..1090f1ae 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/literal/ModalDnfCallLiteral.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/literal/ModalDnfCallLiteral.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.partial.literal; | 1 | package tools.refinery.store.reasoning.literal; |
2 | 2 | ||
3 | import tools.refinery.store.query.Dnf; | 3 | import tools.refinery.store.query.Dnf; |
4 | import tools.refinery.store.query.Variable; | 4 | import tools.refinery.store.query.Variable; |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/literal/ModalLiteral.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/literal/ModalLiteral.java index cebe9c9d..5992f172 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/literal/ModalLiteral.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/literal/ModalLiteral.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.partial.literal; | 1 | package tools.refinery.store.reasoning.literal; |
2 | 2 | ||
3 | import tools.refinery.store.query.RelationLike; | 3 | import tools.refinery.store.query.RelationLike; |
4 | import tools.refinery.store.query.Variable; | 4 | import tools.refinery.store.query.Variable; |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/literal/ModalRelationLiteral.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/literal/ModalRelationLiteral.java index 39054f22..9c72bd37 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/literal/ModalRelationLiteral.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/literal/ModalRelationLiteral.java | |||
@@ -1,6 +1,6 @@ | |||
1 | package tools.refinery.store.partial.literal; | 1 | package tools.refinery.store.reasoning.literal; |
2 | 2 | ||
3 | import tools.refinery.store.partial.representation.PartialRelation; | 3 | import tools.refinery.store.reasoning.representation.PartialRelation; |
4 | import tools.refinery.store.query.Variable; | 4 | import tools.refinery.store.query.Variable; |
5 | import tools.refinery.store.query.literal.CallPolarity; | 5 | import tools.refinery.store.query.literal.CallPolarity; |
6 | import tools.refinery.store.query.literal.PolarLiteral; | 6 | import tools.refinery.store.query.literal.PolarLiteral; |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/literal/Modality.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/literal/Modality.java index d647ef0a..f0cb59de 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/literal/Modality.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/literal/Modality.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.partial.literal; | 1 | package tools.refinery.store.reasoning.literal; |
2 | 2 | ||
3 | import tools.refinery.store.query.literal.CallPolarity; | 3 | import tools.refinery.store.query.literal.CallPolarity; |
4 | 4 | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/literal/PartialLiterals.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/literal/PartialLiterals.java index 51d388d3..10e4c7f7 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/literal/PartialLiterals.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/literal/PartialLiterals.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.partial.literal; | 1 | package tools.refinery.store.reasoning.literal; |
2 | 2 | ||
3 | import tools.refinery.store.query.literal.DnfCallLiteral; | 3 | import tools.refinery.store.query.literal.DnfCallLiteral; |
4 | 4 | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/literal/PartialRelationLiteral.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/literal/PartialRelationLiteral.java index b81d9a3d..aff84538 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/literal/PartialRelationLiteral.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/literal/PartialRelationLiteral.java | |||
@@ -1,6 +1,6 @@ | |||
1 | package tools.refinery.store.partial.literal; | 1 | package tools.refinery.store.reasoning.literal; |
2 | 2 | ||
3 | import tools.refinery.store.partial.representation.PartialRelation; | 3 | import tools.refinery.store.reasoning.representation.PartialRelation; |
4 | import tools.refinery.store.query.Variable; | 4 | import tools.refinery.store.query.Variable; |
5 | import tools.refinery.store.query.literal.CallLiteral; | 5 | import tools.refinery.store.query.literal.CallLiteral; |
6 | import tools.refinery.store.query.literal.CallPolarity; | 6 | import tools.refinery.store.query.literal.CallPolarity; |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/representation/AnyPartialFunction.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/representation/AnyPartialFunction.java index 1113245e..e74cd58b 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/representation/AnyPartialFunction.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/representation/AnyPartialFunction.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.partial.representation; | 1 | package tools.refinery.store.reasoning.representation; |
2 | 2 | ||
3 | public sealed interface AnyPartialFunction extends AnyPartialSymbol permits PartialFunction { | 3 | public sealed interface AnyPartialFunction extends AnyPartialSymbol permits PartialFunction { |
4 | } | 4 | } |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/representation/AnyPartialSymbol.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/representation/AnyPartialSymbol.java index 25096e74..6ff5031b 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/representation/AnyPartialSymbol.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/representation/AnyPartialSymbol.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.partial.representation; | 1 | package tools.refinery.store.reasoning.representation; |
2 | 2 | ||
3 | import tools.refinery.store.representation.AnyAbstractDomain; | 3 | import tools.refinery.store.representation.AnyAbstractDomain; |
4 | 4 | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/representation/PartialFunction.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/representation/PartialFunction.java index 3c186f6f..59eeeefe 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/representation/PartialFunction.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/representation/PartialFunction.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.partial.representation; | 1 | package tools.refinery.store.reasoning.representation; |
2 | 2 | ||
3 | import tools.refinery.store.representation.AbstractDomain; | 3 | import tools.refinery.store.representation.AbstractDomain; |
4 | 4 | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/representation/PartialRelation.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/representation/PartialRelation.java index 51c2f28d..f884f8d6 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/representation/PartialRelation.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/representation/PartialRelation.java | |||
@@ -1,8 +1,8 @@ | |||
1 | package tools.refinery.store.partial.representation; | 1 | package tools.refinery.store.reasoning.representation; |
2 | 2 | ||
3 | import tools.refinery.store.partial.literal.Modality; | 3 | import tools.refinery.store.reasoning.literal.Modality; |
4 | import tools.refinery.store.partial.literal.PartialRelationLiteral; | 4 | import tools.refinery.store.reasoning.literal.PartialRelationLiteral; |
5 | import tools.refinery.store.partial.literal.ModalRelationLiteral; | 5 | import tools.refinery.store.reasoning.literal.ModalRelationLiteral; |
6 | import tools.refinery.store.query.RelationLike; | 6 | import tools.refinery.store.query.RelationLike; |
7 | import tools.refinery.store.query.Variable; | 7 | import tools.refinery.store.query.Variable; |
8 | import tools.refinery.store.query.literal.CallPolarity; | 8 | import tools.refinery.store.query.literal.CallPolarity; |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/representation/PartialSymbol.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/representation/PartialSymbol.java index 38533fa9..1af11f2e 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/representation/PartialSymbol.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/representation/PartialSymbol.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.partial.representation; | 1 | package tools.refinery.store.reasoning.representation; |
2 | 2 | ||
3 | import tools.refinery.store.representation.AbstractDomain; | 3 | import tools.refinery.store.representation.AbstractDomain; |
4 | 4 | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/rule/RelationRefinementAction.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/rule/RelationRefinementAction.java index 6c89653d..c7681b53 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/rule/RelationRefinementAction.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/rule/RelationRefinementAction.java | |||
@@ -1,7 +1,7 @@ | |||
1 | package tools.refinery.store.partial.rule; | 1 | package tools.refinery.store.reasoning.rule; |
2 | 2 | ||
3 | import tools.refinery.store.partial.PartialInterpretation; | 3 | import tools.refinery.store.reasoning.Reasoning; |
4 | import tools.refinery.store.partial.representation.PartialRelation; | 4 | import tools.refinery.store.reasoning.representation.PartialRelation; |
5 | import tools.refinery.store.model.Model; | 5 | import tools.refinery.store.model.Model; |
6 | import tools.refinery.store.query.Variable; | 6 | import tools.refinery.store.query.Variable; |
7 | import tools.refinery.store.representation.TruthValue; | 7 | import tools.refinery.store.representation.TruthValue; |
@@ -23,7 +23,7 @@ public record RelationRefinementAction(PartialRelation target, List<Variable> ar | |||
23 | 23 | ||
24 | @Override | 24 | @Override |
25 | public RuleActionExecutor createExecutor(int[] argumentIndices, Model model) { | 25 | public RuleActionExecutor createExecutor(int[] argumentIndices, Model model) { |
26 | var targetInterpretation = model.getAdapter(PartialInterpretation.ADAPTER).getPartialInterpretation(target); | 26 | var targetInterpretation = model.getAdapter(Reasoning.ADAPTER).getPartialInterpretation(target); |
27 | return activationTuple -> { | 27 | return activationTuple -> { |
28 | int arity = argumentIndices.length; | 28 | int arity = argumentIndices.length; |
29 | var arguments = new int[arity]; | 29 | var arguments = new int[arity]; |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/rule/Rule.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/rule/Rule.java index c114b8cf..8a812518 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/rule/Rule.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/rule/Rule.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.partial.rule; | 1 | package tools.refinery.store.reasoning.rule; |
2 | 2 | ||
3 | import tools.refinery.store.model.Model; | 3 | import tools.refinery.store.model.Model; |
4 | import tools.refinery.store.query.Dnf; | 4 | import tools.refinery.store.query.Dnf; |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/rule/RuleAction.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/rule/RuleAction.java index 7a8ede40..bf980759 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/rule/RuleAction.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/rule/RuleAction.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.partial.rule; | 1 | package tools.refinery.store.reasoning.rule; |
2 | 2 | ||
3 | import tools.refinery.store.model.Model; | 3 | import tools.refinery.store.model.Model; |
4 | import tools.refinery.store.query.Variable; | 4 | import tools.refinery.store.query.Variable; |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/rule/RuleActionExecutor.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/rule/RuleActionExecutor.java index 1c2db5f1..80bfa6f8 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/rule/RuleActionExecutor.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/rule/RuleActionExecutor.java | |||
@@ -1,6 +1,6 @@ | |||
1 | package tools.refinery.store.partial.rule; | 1 | package tools.refinery.store.reasoning.rule; |
2 | 2 | ||
3 | import tools.refinery.store.partial.MergeResult; | 3 | import tools.refinery.store.reasoning.MergeResult; |
4 | import tools.refinery.store.tuple.TupleLike; | 4 | import tools.refinery.store.tuple.TupleLike; |
5 | 5 | ||
6 | @FunctionalInterface | 6 | @FunctionalInterface |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/rule/RuleExecutor.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/rule/RuleExecutor.java index 41d79306..1e5322b4 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/rule/RuleExecutor.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/rule/RuleExecutor.java | |||
@@ -1,6 +1,6 @@ | |||
1 | package tools.refinery.store.partial.rule; | 1 | package tools.refinery.store.reasoning.rule; |
2 | 2 | ||
3 | import tools.refinery.store.partial.MergeResult; | 3 | import tools.refinery.store.reasoning.MergeResult; |
4 | import tools.refinery.store.model.Model; | 4 | import tools.refinery.store.model.Model; |
5 | import tools.refinery.store.tuple.TupleLike; | 5 | import tools.refinery.store.tuple.TupleLike; |
6 | 6 | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/Advice.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/Advice.java index 65040a8e..7909a7e1 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/Advice.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/Advice.java | |||
@@ -1,9 +1,10 @@ | |||
1 | package tools.refinery.store.partial.translator; | 1 | package tools.refinery.store.reasoning.translator; |
2 | 2 | ||
3 | import tools.refinery.store.partial.representation.AnyPartialSymbol; | 3 | import tools.refinery.store.reasoning.representation.AnyPartialSymbol; |
4 | import tools.refinery.store.partial.representation.PartialRelation; | 4 | import tools.refinery.store.reasoning.representation.PartialRelation; |
5 | import tools.refinery.store.query.Variable; | 5 | import tools.refinery.store.query.Variable; |
6 | import tools.refinery.store.query.literal.Literal; | 6 | import tools.refinery.store.query.literal.Literal; |
7 | import tools.refinery.store.query.substitution.Substitutions; | ||
7 | 8 | ||
8 | import java.util.*; | 9 | import java.util.*; |
9 | 10 | ||
@@ -61,10 +62,13 @@ public final class Advice { | |||
61 | checkArity(substituteParameters); | 62 | checkArity(substituteParameters); |
62 | markProcessed(); | 63 | markProcessed(); |
63 | int arity = parameters.size(); | 64 | int arity = parameters.size(); |
64 | var substitution = new HashMap<Variable, Variable>(arity); | 65 | var variableMap = new HashMap<Variable, Variable>(arity); |
65 | for (int i = 0; i < arity; i++) { | 66 | for (int i = 0; i < arity; i++) { |
66 | substitution.put(parameters.get(i), substituteParameters.get(i)); | 67 | variableMap.put(parameters.get(i), substituteParameters.get(i)); |
67 | } | 68 | } |
69 | // Use a renewing substitution to remove any non-parameter variables and avoid clashed between variables | ||
70 | // coming from different advice in the same clause. | ||
71 | var substitution = Substitutions.renewing(variableMap); | ||
68 | return literals.stream().map(literal -> literal.substitute(substitution)).toList(); | 72 | return literals.stream().map(literal -> literal.substitute(substitution)).toList(); |
69 | } | 73 | } |
70 | 74 | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/AdviceSlot.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/AdviceSlot.java index 3702a8ac..f3bd9c5e 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/AdviceSlot.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/AdviceSlot.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.partial.translator; | 1 | package tools.refinery.store.reasoning.translator; |
2 | 2 | ||
3 | import tools.refinery.store.representation.TruthValue; | 3 | import tools.refinery.store.representation.TruthValue; |
4 | 4 | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/Seed.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/Seed.java index c56b06ed..779eadbe 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/Seed.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/Seed.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.partial.translator; | 1 | package tools.refinery.store.reasoning.translator; |
2 | 2 | ||
3 | import tools.refinery.store.map.Cursor; | 3 | import tools.refinery.store.map.Cursor; |
4 | import tools.refinery.store.tuple.Tuple; | 4 | import tools.refinery.store.tuple.Tuple; |
diff --git a/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/TranslationUnit.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/TranslationUnit.java new file mode 100644 index 00000000..e45d20c8 --- /dev/null +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/TranslationUnit.java | |||
@@ -0,0 +1,48 @@ | |||
1 | package tools.refinery.store.reasoning.translator; | ||
2 | |||
3 | import tools.refinery.store.reasoning.ReasoningBuilder; | ||
4 | import tools.refinery.store.model.Model; | ||
5 | import tools.refinery.store.model.ModelStoreBuilder; | ||
6 | import tools.refinery.store.reasoning.AnyPartialInterpretation; | ||
7 | import tools.refinery.store.reasoning.literal.Modality; | ||
8 | import tools.refinery.store.reasoning.representation.AnyPartialSymbol; | ||
9 | import tools.refinery.store.reasoning.representation.PartialRelation; | ||
10 | import tools.refinery.store.query.Variable; | ||
11 | import tools.refinery.store.query.literal.CallPolarity; | ||
12 | import tools.refinery.store.query.literal.Literal; | ||
13 | |||
14 | import java.util.Collection; | ||
15 | import java.util.List; | ||
16 | import java.util.Map; | ||
17 | |||
18 | public abstract class TranslationUnit { | ||
19 | private ReasoningBuilder reasoningBuilder; | ||
20 | |||
21 | protected ReasoningBuilder getPartialInterpretationBuilder() { | ||
22 | return reasoningBuilder; | ||
23 | } | ||
24 | |||
25 | public void setPartialInterpretationBuilder(ReasoningBuilder reasoningBuilder) { | ||
26 | this.reasoningBuilder = reasoningBuilder; | ||
27 | } | ||
28 | |||
29 | protected ModelStoreBuilder getModelStoreBuilder() { | ||
30 | return reasoningBuilder.getStoreBuilder(); | ||
31 | } | ||
32 | |||
33 | public abstract Collection<AnyPartialSymbol> getTranslatedPartialSymbols(); | ||
34 | |||
35 | public Collection<Advice> computeAdvices() { | ||
36 | // No advices to give by default. | ||
37 | return List.of(); | ||
38 | } | ||
39 | |||
40 | public abstract void configure(Collection<Advice> advices); | ||
41 | |||
42 | public abstract List<Literal> call(CallPolarity polarity, Modality modality, PartialRelation target, | ||
43 | List<Variable> arguments); | ||
44 | |||
45 | public abstract Map<AnyPartialSymbol, AnyPartialInterpretation> createPartialInterpretations(Model model); | ||
46 | |||
47 | public abstract void initializeModel(Model model, int nodeCount); | ||
48 | } | ||
diff --git a/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/EliminatedType.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/EliminatedType.java new file mode 100644 index 00000000..1b8d7cc9 --- /dev/null +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/EliminatedType.java | |||
@@ -0,0 +1,6 @@ | |||
1 | package tools.refinery.store.reasoning.translator.typehierarchy; | ||
2 | |||
3 | import tools.refinery.store.reasoning.representation.PartialRelation; | ||
4 | |||
5 | record EliminatedType(PartialRelation replacement) implements TypeAnalysisResult { | ||
6 | } | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/ExtendedTypeInfo.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/ExtendedTypeInfo.java index d3f66a4c..43b8e1dd 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/ExtendedTypeInfo.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/ExtendedTypeInfo.java | |||
@@ -1,7 +1,7 @@ | |||
1 | package tools.refinery.store.partial.translator.typehierarchy; | 1 | package tools.refinery.store.reasoning.translator.typehierarchy; |
2 | 2 | ||
3 | import org.jetbrains.annotations.NotNull; | 3 | import org.jetbrains.annotations.NotNull; |
4 | import tools.refinery.store.partial.representation.PartialRelation; | 4 | import tools.refinery.store.reasoning.representation.PartialRelation; |
5 | 5 | ||
6 | import java.util.HashSet; | 6 | import java.util.HashSet; |
7 | import java.util.LinkedHashSet; | 7 | import java.util.LinkedHashSet; |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/InferredMayTypeRelationView.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/InferredMayTypeRelationView.java index ff761936..12c37c86 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/InferredMayTypeRelationView.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/InferredMayTypeRelationView.java | |||
@@ -1,6 +1,6 @@ | |||
1 | package tools.refinery.store.partial.translator.typehierarchy; | 1 | package tools.refinery.store.reasoning.translator.typehierarchy; |
2 | 2 | ||
3 | import tools.refinery.store.partial.representation.PartialRelation; | 3 | import tools.refinery.store.reasoning.representation.PartialRelation; |
4 | import tools.refinery.store.query.view.TuplePreservingRelationView; | 4 | import tools.refinery.store.query.view.TuplePreservingRelationView; |
5 | import tools.refinery.store.tuple.Tuple; | 5 | import tools.refinery.store.tuple.Tuple; |
6 | 6 | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/InferredMustTypeRelationView.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/InferredMustTypeRelationView.java index 4eca0a1c..975f627e 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/InferredMustTypeRelationView.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/InferredMustTypeRelationView.java | |||
@@ -1,6 +1,6 @@ | |||
1 | package tools.refinery.store.partial.translator.typehierarchy; | 1 | package tools.refinery.store.reasoning.translator.typehierarchy; |
2 | 2 | ||
3 | import tools.refinery.store.partial.representation.PartialRelation; | 3 | import tools.refinery.store.reasoning.representation.PartialRelation; |
4 | import tools.refinery.store.query.view.TuplePreservingRelationView; | 4 | import tools.refinery.store.query.view.TuplePreservingRelationView; |
5 | import tools.refinery.store.tuple.Tuple; | 5 | import tools.refinery.store.tuple.Tuple; |
6 | 6 | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/InferredType.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/InferredType.java index 729b1fb5..a366e262 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/InferredType.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/InferredType.java | |||
@@ -1,6 +1,6 @@ | |||
1 | package tools.refinery.store.partial.translator.typehierarchy; | 1 | package tools.refinery.store.reasoning.translator.typehierarchy; |
2 | 2 | ||
3 | import tools.refinery.store.partial.representation.PartialRelation; | 3 | import tools.refinery.store.reasoning.representation.PartialRelation; |
4 | 4 | ||
5 | import java.util.Collections; | 5 | import java.util.Collections; |
6 | import java.util.Set; | 6 | import java.util.Set; |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/PreservedType.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/PreservedType.java index 0299ae03..63dba964 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/PreservedType.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/PreservedType.java | |||
@@ -1,6 +1,6 @@ | |||
1 | package tools.refinery.store.partial.translator.typehierarchy; | 1 | package tools.refinery.store.reasoning.translator.typehierarchy; |
2 | 2 | ||
3 | import tools.refinery.store.partial.representation.PartialRelation; | 3 | import tools.refinery.store.reasoning.representation.PartialRelation; |
4 | import tools.refinery.store.representation.TruthValue; | 4 | import tools.refinery.store.representation.TruthValue; |
5 | 5 | ||
6 | import java.util.*; | 6 | import java.util.*; |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/TypeAnalysisResult.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/TypeAnalysisResult.java index 0745f84e..4f915108 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/TypeAnalysisResult.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/TypeAnalysisResult.java | |||
@@ -1,4 +1,4 @@ | |||
1 | package tools.refinery.store.partial.translator.typehierarchy; | 1 | package tools.refinery.store.reasoning.translator.typehierarchy; |
2 | 2 | ||
3 | sealed interface TypeAnalysisResult permits EliminatedType, PreservedType { | 3 | sealed interface TypeAnalysisResult permits EliminatedType, PreservedType { |
4 | } | 4 | } |
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/TypeAnalyzer.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/TypeAnalyzer.java index 062b4c49..62f8e750 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/TypeAnalyzer.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/TypeAnalyzer.java | |||
@@ -1,6 +1,6 @@ | |||
1 | package tools.refinery.store.partial.translator.typehierarchy; | 1 | package tools.refinery.store.reasoning.translator.typehierarchy; |
2 | 2 | ||
3 | import tools.refinery.store.partial.representation.PartialRelation; | 3 | import tools.refinery.store.reasoning.representation.PartialRelation; |
4 | 4 | ||
5 | import java.util.*; | 5 | import java.util.*; |
6 | 6 | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/TypeHierarchyTranslationUnit.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/TypeHierarchyTranslationUnit.java index 7f438f71..c800b4cd 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/TypeHierarchyTranslationUnit.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/TypeHierarchyTranslationUnit.java | |||
@@ -1,11 +1,11 @@ | |||
1 | package tools.refinery.store.partial.translator.typehierarchy; | 1 | package tools.refinery.store.reasoning.translator.typehierarchy; |
2 | 2 | ||
3 | import tools.refinery.store.partial.AnyPartialSymbolInterpretation; | 3 | import tools.refinery.store.reasoning.AnyPartialInterpretation; |
4 | import tools.refinery.store.partial.literal.Modality; | 4 | import tools.refinery.store.reasoning.literal.Modality; |
5 | import tools.refinery.store.partial.representation.AnyPartialSymbol; | 5 | import tools.refinery.store.reasoning.representation.AnyPartialSymbol; |
6 | import tools.refinery.store.partial.representation.PartialRelation; | 6 | import tools.refinery.store.reasoning.representation.PartialRelation; |
7 | import tools.refinery.store.partial.translator.Advice; | 7 | import tools.refinery.store.reasoning.translator.Advice; |
8 | import tools.refinery.store.partial.translator.TranslationUnit; | 8 | import tools.refinery.store.reasoning.translator.TranslationUnit; |
9 | import tools.refinery.store.model.Model; | 9 | import tools.refinery.store.model.Model; |
10 | import tools.refinery.store.query.Variable; | 10 | import tools.refinery.store.query.Variable; |
11 | import tools.refinery.store.query.literal.CallPolarity; | 11 | import tools.refinery.store.query.literal.CallPolarity; |
@@ -18,10 +18,10 @@ public class TypeHierarchyTranslationUnit extends TranslationUnit { | |||
18 | static final Symbol<InferredType> INFERRED_TYPE_SYMBOL = new Symbol<>("inferredType", 1, | 18 | static final Symbol<InferredType> INFERRED_TYPE_SYMBOL = new Symbol<>("inferredType", 1, |
19 | InferredType.class, InferredType.UNTYPED); | 19 | InferredType.class, InferredType.UNTYPED); |
20 | 20 | ||
21 | private final Map<PartialRelation, TypeInfo> typeInfoMap; | 21 | private final TypeAnalyzer typeAnalyzer; |
22 | 22 | ||
23 | public TypeHierarchyTranslationUnit(Map<PartialRelation, TypeInfo> typeInfoMap) { | 23 | public TypeHierarchyTranslationUnit(Map<PartialRelation, TypeInfo> typeInfoMap) { |
24 | this.typeInfoMap = new LinkedHashMap<>(typeInfoMap); | 24 | typeAnalyzer = new TypeAnalyzer(typeInfoMap); |
25 | } | 25 | } |
26 | 26 | ||
27 | @Override | 27 | @Override |
@@ -41,7 +41,7 @@ public class TypeHierarchyTranslationUnit extends TranslationUnit { | |||
41 | } | 41 | } |
42 | 42 | ||
43 | @Override | 43 | @Override |
44 | public Map<AnyPartialSymbol, AnyPartialSymbolInterpretation> createPartialInterpretations(Model model) { | 44 | public Map<AnyPartialSymbol, AnyPartialInterpretation> createPartialInterpretations(Model model) { |
45 | return null; | 45 | return null; |
46 | } | 46 | } |
47 | 47 | ||
diff --git a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/TypeInfo.java b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/TypeInfo.java index 1b0922fe..313df4df 100644 --- a/subprojects/store-partial/src/main/java/tools/refinery/store/partial/translator/typehierarchy/TypeInfo.java +++ b/subprojects/store-reasoning/src/main/java/tools/refinery/store/reasoning/translator/typehierarchy/TypeInfo.java | |||
@@ -1,6 +1,6 @@ | |||
1 | package tools.refinery.store.partial.translator.typehierarchy; | 1 | package tools.refinery.store.reasoning.translator.typehierarchy; |
2 | 2 | ||
3 | import tools.refinery.store.partial.representation.PartialRelation; | 3 | import tools.refinery.store.reasoning.representation.PartialRelation; |
4 | 4 | ||
5 | import java.util.*; | 5 | import java.util.*; |
6 | 6 | ||
diff --git a/subprojects/store-partial/src/test/java/tools/refinery/store/partial/translator/typehierarchy/InferredTypeTest.java b/subprojects/store-reasoning/src/test/java/tools/refinery/store/reasoning/translator/typehierarchy/InferredTypeTest.java index 9efa76ef..a8df2312 100644 --- a/subprojects/store-partial/src/test/java/tools/refinery/store/partial/translator/typehierarchy/InferredTypeTest.java +++ b/subprojects/store-reasoning/src/test/java/tools/refinery/store/reasoning/translator/typehierarchy/InferredTypeTest.java | |||
@@ -1,7 +1,7 @@ | |||
1 | package tools.refinery.store.partial.translator.typehierarchy; | 1 | package tools.refinery.store.reasoning.translator.typehierarchy; |
2 | 2 | ||
3 | import org.junit.jupiter.api.Test; | 3 | import org.junit.jupiter.api.Test; |
4 | import tools.refinery.store.partial.representation.PartialRelation; | 4 | import tools.refinery.store.reasoning.representation.PartialRelation; |
5 | 5 | ||
6 | import java.util.Set; | 6 | import java.util.Set; |
7 | 7 | ||
diff --git a/subprojects/store-partial/src/test/java/tools/refinery/store/partial/translator/typehierarchy/TypeAnalyzerExampleHierarchyTest.java b/subprojects/store-reasoning/src/test/java/tools/refinery/store/reasoning/translator/typehierarchy/TypeAnalyzerExampleHierarchyTest.java index 5f528328..b2c1ef1b 100644 --- a/subprojects/store-partial/src/test/java/tools/refinery/store/partial/translator/typehierarchy/TypeAnalyzerExampleHierarchyTest.java +++ b/subprojects/store-reasoning/src/test/java/tools/refinery/store/reasoning/translator/typehierarchy/TypeAnalyzerExampleHierarchyTest.java | |||
@@ -1,8 +1,8 @@ | |||
1 | package tools.refinery.store.partial.translator.typehierarchy; | 1 | package tools.refinery.store.reasoning.translator.typehierarchy; |
2 | 2 | ||
3 | import org.junit.jupiter.api.BeforeEach; | 3 | import org.junit.jupiter.api.BeforeEach; |
4 | import org.junit.jupiter.api.Test; | 4 | import org.junit.jupiter.api.Test; |
5 | import tools.refinery.store.partial.representation.PartialRelation; | 5 | import tools.refinery.store.reasoning.representation.PartialRelation; |
6 | import tools.refinery.store.representation.TruthValue; | 6 | import tools.refinery.store.representation.TruthValue; |
7 | 7 | ||
8 | import java.util.LinkedHashMap; | 8 | import java.util.LinkedHashMap; |
diff --git a/subprojects/store-partial/src/test/java/tools/refinery/store/partial/translator/typehierarchy/TypeAnalyzerTest.java b/subprojects/store-reasoning/src/test/java/tools/refinery/store/reasoning/translator/typehierarchy/TypeAnalyzerTest.java index 02903026..b7b69ed8 100644 --- a/subprojects/store-partial/src/test/java/tools/refinery/store/partial/translator/typehierarchy/TypeAnalyzerTest.java +++ b/subprojects/store-reasoning/src/test/java/tools/refinery/store/reasoning/translator/typehierarchy/TypeAnalyzerTest.java | |||
@@ -1,7 +1,7 @@ | |||
1 | package tools.refinery.store.partial.translator.typehierarchy; | 1 | package tools.refinery.store.reasoning.translator.typehierarchy; |
2 | 2 | ||
3 | import org.junit.jupiter.api.Test; | 3 | import org.junit.jupiter.api.Test; |
4 | import tools.refinery.store.partial.representation.PartialRelation; | 4 | import tools.refinery.store.reasoning.representation.PartialRelation; |
5 | import tools.refinery.store.representation.TruthValue; | 5 | import tools.refinery.store.representation.TruthValue; |
6 | 6 | ||
7 | import java.util.LinkedHashMap; | 7 | import java.util.LinkedHashMap; |
diff --git a/subprojects/store-partial/src/test/java/tools/refinery/store/partial/translator/typehierarchy/TypeAnalyzerTester.java b/subprojects/store-reasoning/src/test/java/tools/refinery/store/reasoning/translator/typehierarchy/TypeAnalyzerTester.java index ce600ea6..56407730 100644 --- a/subprojects/store-partial/src/test/java/tools/refinery/store/partial/translator/typehierarchy/TypeAnalyzerTester.java +++ b/subprojects/store-reasoning/src/test/java/tools/refinery/store/reasoning/translator/typehierarchy/TypeAnalyzerTester.java | |||
@@ -1,6 +1,6 @@ | |||
1 | package tools.refinery.store.partial.translator.typehierarchy; | 1 | package tools.refinery.store.reasoning.translator.typehierarchy; |
2 | 2 | ||
3 | import tools.refinery.store.partial.representation.PartialRelation; | 3 | import tools.refinery.store.reasoning.representation.PartialRelation; |
4 | 4 | ||
5 | import static org.hamcrest.MatcherAssert.assertThat; | 5 | import static org.hamcrest.MatcherAssert.assertThat; |
6 | import static org.hamcrest.Matchers.*; | 6 | import static org.hamcrest.Matchers.*; |