aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--language-ide/src/main/xtext-gen/META-INF/services/org.eclipse.xtext.ISetup1
-rw-r--r--language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/AbstractProblemIdeModule.java60
-rw-r--r--language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/PartialProblemContentAssistParser.java33
-rw-r--r--language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/ProblemParser.java196
-rw-r--r--language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalProblem.g5755
-rw-r--r--language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalProblem.tokens77
-rw-r--r--language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalProblemLexer.java1940
-rw-r--r--language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalProblemParser.java17755
-rw-r--r--language-web/src/main/xtext-gen/org/eclipse/viatra/solver/language/web/AbstractProblemWebModule.java14
-rw-r--r--language/src/main/xtext-gen/org/eclipse/viatra/solver/language/AbstractProblemRuntimeModule.java194
-rw-r--r--language/src/main/xtext-gen/org/eclipse/viatra/solver/language/Problem.xtextbinbin7566 -> 0 bytes
-rw-r--r--language/src/main/xtext-gen/org/eclipse/viatra/solver/language/ProblemStandaloneSetupGenerated.java37
-rw-r--r--language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/ProblemAntlrTokenFileProvider.java16
-rw-r--r--language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/ProblemParser.java40
-rw-r--r--language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.g2390
-rw-r--r--language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.tokens77
-rw-r--r--language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblemLexer.java1940
-rw-r--r--language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblemParser.java6752
-rw-r--r--language/src/main/xtext-gen/org/eclipse/viatra/solver/language/scoping/AbstractProblemScopeProvider.java9
-rw-r--r--language/src/main/xtext-gen/org/eclipse/viatra/solver/language/serializer/ProblemSemanticSequencer.java534
-rw-r--r--language/src/main/xtext-gen/org/eclipse/viatra/solver/language/serializer/ProblemSyntacticSequencer.java139
-rw-r--r--language/src/main/xtext-gen/org/eclipse/viatra/solver/language/services/ProblemGrammarAccess.java2071
-rw-r--r--language/src/main/xtext-gen/org/eclipse/viatra/solver/language/validation/AbstractProblemValidator.java19
-rw-r--r--language/src/main/xtext-gen/org/eclipse/viatra/solver/language/validation/ProblemConfigurableIssueCodesProvider.java22
-rw-r--r--language/src/test/xtext-gen/org/eclipse/viatra/solver/language/tests/ProblemInjectorProvider.java69
26 files changed, 1 insertions, 40140 deletions
diff --git a/.gitignore b/.gitignore
index 31cea6a8..c5d32a6c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,6 @@
1bin/ 1bin/
2xtend-gen/ 2xtend-gen/
3xtext-gen/
3.gradle/ 4.gradle/
4build/ 5build/
5*._trace 6*._trace
diff --git a/language-ide/src/main/xtext-gen/META-INF/services/org.eclipse.xtext.ISetup b/language-ide/src/main/xtext-gen/META-INF/services/org.eclipse.xtext.ISetup
deleted file mode 100644
index 8e9ec892..00000000
--- a/language-ide/src/main/xtext-gen/META-INF/services/org.eclipse.xtext.ISetup
+++ /dev/null
@@ -1 +0,0 @@
1org.eclipse.viatra.solver.language.ide.ProblemIdeSetup
diff --git a/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/AbstractProblemIdeModule.java b/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/AbstractProblemIdeModule.java
deleted file mode 100644
index a44461f9..00000000
--- a/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/AbstractProblemIdeModule.java
+++ /dev/null
@@ -1,60 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4package org.eclipse.viatra.solver.language.ide;
5
6import com.google.inject.Binder;
7import com.google.inject.name.Names;
8import org.eclipse.viatra.solver.language.ide.contentassist.antlr.ProblemParser;
9import org.eclipse.viatra.solver.language.ide.contentassist.antlr.internal.InternalProblemLexer;
10import org.eclipse.xtext.ide.DefaultIdeModule;
11import org.eclipse.xtext.ide.LexerIdeBindings;
12import org.eclipse.xtext.ide.editor.contentassist.FQNPrefixMatcher;
13import org.eclipse.xtext.ide.editor.contentassist.IPrefixMatcher;
14import org.eclipse.xtext.ide.editor.contentassist.IProposalConflictHelper;
15import org.eclipse.xtext.ide.editor.contentassist.antlr.AntlrProposalConflictHelper;
16import org.eclipse.xtext.ide.editor.contentassist.antlr.IContentAssistParser;
17import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.Lexer;
18import org.eclipse.xtext.ide.refactoring.IRenameStrategy2;
19import org.eclipse.xtext.ide.server.rename.IRenameService2;
20import org.eclipse.xtext.ide.server.rename.RenameService2;
21
22/**
23 * Manual modifications go to {@link ProblemIdeModule}.
24 */
25@SuppressWarnings("all")
26public abstract class AbstractProblemIdeModule extends DefaultIdeModule {
27
28 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
29 public void configureContentAssistLexer(Binder binder) {
30 binder.bind(Lexer.class)
31 .annotatedWith(Names.named(LexerIdeBindings.CONTENT_ASSIST))
32 .to(InternalProblemLexer.class);
33 }
34
35 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
36 public Class<? extends IContentAssistParser> bindIContentAssistParser() {
37 return ProblemParser.class;
38 }
39
40 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
41 public Class<? extends IProposalConflictHelper> bindIProposalConflictHelper() {
42 return AntlrProposalConflictHelper.class;
43 }
44
45 // contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2
46 public Class<? extends IPrefixMatcher> bindIPrefixMatcher() {
47 return FQNPrefixMatcher.class;
48 }
49
50 // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
51 public Class<? extends IRenameService2> bindIRenameService2() {
52 return RenameService2.class;
53 }
54
55 // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
56 public Class<? extends IRenameStrategy2> bindIRenameStrategy2() {
57 return IRenameStrategy2.DefaultImpl.class;
58 }
59
60}
diff --git a/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/PartialProblemContentAssistParser.java b/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/PartialProblemContentAssistParser.java
deleted file mode 100644
index 890ab643..00000000
--- a/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/PartialProblemContentAssistParser.java
+++ /dev/null
@@ -1,33 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4package org.eclipse.viatra.solver.language.ide.contentassist.antlr;
5
6import java.util.Collection;
7import java.util.Collections;
8import org.eclipse.xtext.AbstractRule;
9import org.eclipse.xtext.ide.editor.contentassist.antlr.FollowElement;
10import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
11import org.eclipse.xtext.util.PolymorphicDispatcher;
12
13public class PartialProblemContentAssistParser extends ProblemParser {
14
15 private AbstractRule rule;
16
17 @Override
18 public void initializeFor(AbstractRule rule) {
19 this.rule = rule;
20 }
21
22 @Override
23 protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
24 if (rule == null || rule.eIsProxy())
25 return Collections.emptyList();
26 String methodName = "entryRule" + rule.getName();
27 PolymorphicDispatcher<Collection<FollowElement>> dispatcher =
28 new PolymorphicDispatcher<Collection<FollowElement>>(methodName, 0, 0, Collections.singletonList(parser));
29 dispatcher.invoke();
30 return parser.getFollowElements();
31 }
32
33}
diff --git a/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/ProblemParser.java b/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/ProblemParser.java
deleted file mode 100644
index e4f892c7..00000000
--- a/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/ProblemParser.java
+++ /dev/null
@@ -1,196 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4package org.eclipse.viatra.solver.language.ide.contentassist.antlr;
5
6import com.google.common.collect.ImmutableMap;
7import com.google.inject.Inject;
8import com.google.inject.Singleton;
9import java.util.Map;
10import org.eclipse.viatra.solver.language.ide.contentassist.antlr.internal.InternalProblemParser;
11import org.eclipse.viatra.solver.language.services.ProblemGrammarAccess;
12import org.eclipse.xtext.AbstractElement;
13import org.eclipse.xtext.ide.editor.contentassist.antlr.AbstractContentAssistParser;
14
15public class ProblemParser extends AbstractContentAssistParser {
16
17 @Singleton
18 public static final class NameMappings {
19
20 private final Map<AbstractElement, String> mappings;
21
22 @Inject
23 public NameMappings(ProblemGrammarAccess grammarAccess) {
24 ImmutableMap.Builder<AbstractElement, String> builder = ImmutableMap.builder();
25 init(builder, grammarAccess);
26 this.mappings = builder.build();
27 }
28
29 public String getRuleName(AbstractElement element) {
30 return mappings.get(element);
31 }
32
33 private static void init(ImmutableMap.Builder<AbstractElement, String> builder, ProblemGrammarAccess grammarAccess) {
34 builder.put(grammarAccess.getStatementAccess().getAlternatives(), "rule__Statement__Alternatives");
35 builder.put(grammarAccess.getClassDeclarationAccess().getAlternatives_4(), "rule__ClassDeclaration__Alternatives_4");
36 builder.put(grammarAccess.getEnumDeclarationAccess().getAlternatives_2(), "rule__EnumDeclaration__Alternatives_2");
37 builder.put(grammarAccess.getEnumDeclarationAccess().getAlternatives_2_0_1_2(), "rule__EnumDeclaration__Alternatives_2_0_1_2");
38 builder.put(grammarAccess.getReferenceDeclarationAccess().getAlternatives_0(), "rule__ReferenceDeclaration__Alternatives_0");
39 builder.put(grammarAccess.getPredicateDefinitionAccess().getAlternatives_0(), "rule__PredicateDefinition__Alternatives_0");
40 builder.put(grammarAccess.getLiteralAccess().getAlternatives(), "rule__Literal__Alternatives");
41 builder.put(grammarAccess.getArgumentAccess().getAlternatives(), "rule__Argument__Alternatives");
42 builder.put(grammarAccess.getAssertionAccess().getAlternatives_0(), "rule__Assertion__Alternatives_0");
43 builder.put(grammarAccess.getAssertionArgumentAccess().getAlternatives(), "rule__AssertionArgument__Alternatives");
44 builder.put(grammarAccess.getConstantAccess().getAlternatives(), "rule__Constant__Alternatives");
45 builder.put(grammarAccess.getTypeScopeAccess().getAlternatives_1(), "rule__TypeScope__Alternatives_1");
46 builder.put(grammarAccess.getMultiplicityAccess().getAlternatives(), "rule__Multiplicity__Alternatives");
47 builder.put(grammarAccess.getDefiniteMultiplicityAccess().getAlternatives(), "rule__DefiniteMultiplicity__Alternatives");
48 builder.put(grammarAccess.getUpperBoundAccess().getAlternatives(), "rule__UpperBound__Alternatives");
49 builder.put(grammarAccess.getQualifiedNameAccess().getAlternatives(), "rule__QualifiedName__Alternatives");
50 builder.put(grammarAccess.getIdentifierAccess().getAlternatives(), "rule__Identifier__Alternatives");
51 builder.put(grammarAccess.getRealAccess().getAlternatives_1(), "rule__Real__Alternatives_1");
52 builder.put(grammarAccess.getRealAccess().getAlternatives_1_1_2(), "rule__Real__Alternatives_1_1_2");
53 builder.put(grammarAccess.getLogicValueAccess().getAlternatives(), "rule__LogicValue__Alternatives");
54 builder.put(grammarAccess.getShortLogicValueAccess().getAlternatives(), "rule__ShortLogicValue__Alternatives");
55 builder.put(grammarAccess.getProblemAccess().getGroup(), "rule__Problem__Group__0");
56 builder.put(grammarAccess.getProblemAccess().getGroup_0(), "rule__Problem__Group_0__0");
57 builder.put(grammarAccess.getClassDeclarationAccess().getGroup(), "rule__ClassDeclaration__Group__0");
58 builder.put(grammarAccess.getClassDeclarationAccess().getGroup_3(), "rule__ClassDeclaration__Group_3__0");
59 builder.put(grammarAccess.getClassDeclarationAccess().getGroup_3_2(), "rule__ClassDeclaration__Group_3_2__0");
60 builder.put(grammarAccess.getClassDeclarationAccess().getGroup_4_0(), "rule__ClassDeclaration__Group_4_0__0");
61 builder.put(grammarAccess.getClassDeclarationAccess().getGroup_4_0_1(), "rule__ClassDeclaration__Group_4_0_1__0");
62 builder.put(grammarAccess.getEnumDeclarationAccess().getGroup(), "rule__EnumDeclaration__Group__0");
63 builder.put(grammarAccess.getEnumDeclarationAccess().getGroup_2_0(), "rule__EnumDeclaration__Group_2_0__0");
64 builder.put(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1(), "rule__EnumDeclaration__Group_2_0_1__0");
65 builder.put(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1_1(), "rule__EnumDeclaration__Group_2_0_1_1__0");
66 builder.put(grammarAccess.getReferenceDeclarationAccess().getGroup(), "rule__ReferenceDeclaration__Group__0");
67 builder.put(grammarAccess.getReferenceDeclarationAccess().getGroup_2(), "rule__ReferenceDeclaration__Group_2__0");
68 builder.put(grammarAccess.getReferenceDeclarationAccess().getGroup_4(), "rule__ReferenceDeclaration__Group_4__0");
69 builder.put(grammarAccess.getPredicateDefinitionAccess().getGroup(), "rule__PredicateDefinition__Group__0");
70 builder.put(grammarAccess.getPredicateDefinitionAccess().getGroup_0_0(), "rule__PredicateDefinition__Group_0_0__0");
71 builder.put(grammarAccess.getPredicateDefinitionAccess().getGroup_3(), "rule__PredicateDefinition__Group_3__0");
72 builder.put(grammarAccess.getPredicateDefinitionAccess().getGroup_3_1(), "rule__PredicateDefinition__Group_3_1__0");
73 builder.put(grammarAccess.getPredicateDefinitionAccess().getGroup_5(), "rule__PredicateDefinition__Group_5__0");
74 builder.put(grammarAccess.getPredicateDefinitionAccess().getGroup_5_2(), "rule__PredicateDefinition__Group_5_2__0");
75 builder.put(grammarAccess.getParameterAccess().getGroup(), "rule__Parameter__Group__0");
76 builder.put(grammarAccess.getConjunctionAccess().getGroup(), "rule__Conjunction__Group__0");
77 builder.put(grammarAccess.getConjunctionAccess().getGroup_1(), "rule__Conjunction__Group_1__0");
78 builder.put(grammarAccess.getNegativeLiteralAccess().getGroup(), "rule__NegativeLiteral__Group__0");
79 builder.put(grammarAccess.getAtomAccess().getGroup(), "rule__Atom__Group__0");
80 builder.put(grammarAccess.getAtomAccess().getGroup_3(), "rule__Atom__Group_3__0");
81 builder.put(grammarAccess.getAtomAccess().getGroup_3_1(), "rule__Atom__Group_3_1__0");
82 builder.put(grammarAccess.getAssertionAccess().getGroup(), "rule__Assertion__Group__0");
83 builder.put(grammarAccess.getAssertionAccess().getGroup_0_0(), "rule__Assertion__Group_0_0__0");
84 builder.put(grammarAccess.getAssertionAccess().getGroup_0_0_2(), "rule__Assertion__Group_0_0_2__0");
85 builder.put(grammarAccess.getAssertionAccess().getGroup_0_0_2_1(), "rule__Assertion__Group_0_0_2_1__0");
86 builder.put(grammarAccess.getAssertionAccess().getGroup_0_1(), "rule__Assertion__Group_0_1__0");
87 builder.put(grammarAccess.getAssertionAccess().getGroup_0_1_3(), "rule__Assertion__Group_0_1_3__0");
88 builder.put(grammarAccess.getAssertionAccess().getGroup_0_1_3_1(), "rule__Assertion__Group_0_1_3_1__0");
89 builder.put(grammarAccess.getNodeValueAssertionAccess().getGroup(), "rule__NodeValueAssertion__Group__0");
90 builder.put(grammarAccess.getScopeDeclarationAccess().getGroup(), "rule__ScopeDeclaration__Group__0");
91 builder.put(grammarAccess.getScopeDeclarationAccess().getGroup_2(), "rule__ScopeDeclaration__Group_2__0");
92 builder.put(grammarAccess.getTypeScopeAccess().getGroup(), "rule__TypeScope__Group__0");
93 builder.put(grammarAccess.getRangeMultiplicityAccess().getGroup(), "rule__RangeMultiplicity__Group__0");
94 builder.put(grammarAccess.getQualifiedNameAccess().getGroup_1(), "rule__QualifiedName__Group_1__0");
95 builder.put(grammarAccess.getQualifiedNameAccess().getGroup_1_1(), "rule__QualifiedName__Group_1_1__0");
96 builder.put(grammarAccess.getIntegerAccess().getGroup(), "rule__Integer__Group__0");
97 builder.put(grammarAccess.getRealAccess().getGroup(), "rule__Real__Group__0");
98 builder.put(grammarAccess.getRealAccess().getGroup_1_1(), "rule__Real__Group_1_1__0");
99 builder.put(grammarAccess.getProblemAccess().getNameAssignment_0_1(), "rule__Problem__NameAssignment_0_1");
100 builder.put(grammarAccess.getProblemAccess().getStatementsAssignment_1(), "rule__Problem__StatementsAssignment_1");
101 builder.put(grammarAccess.getClassDeclarationAccess().getAbstractAssignment_0(), "rule__ClassDeclaration__AbstractAssignment_0");
102 builder.put(grammarAccess.getClassDeclarationAccess().getNameAssignment_2(), "rule__ClassDeclaration__NameAssignment_2");
103 builder.put(grammarAccess.getClassDeclarationAccess().getSuperTypesAssignment_3_1(), "rule__ClassDeclaration__SuperTypesAssignment_3_1");
104 builder.put(grammarAccess.getClassDeclarationAccess().getSuperTypesAssignment_3_2_1(), "rule__ClassDeclaration__SuperTypesAssignment_3_2_1");
105 builder.put(grammarAccess.getClassDeclarationAccess().getReferenceDeclarationsAssignment_4_0_1_0(), "rule__ClassDeclaration__ReferenceDeclarationsAssignment_4_0_1_0");
106 builder.put(grammarAccess.getEnumDeclarationAccess().getNameAssignment_1(), "rule__EnumDeclaration__NameAssignment_1");
107 builder.put(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_0(), "rule__EnumDeclaration__LiteralsAssignment_2_0_1_0");
108 builder.put(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_1_1(), "rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1");
109 builder.put(grammarAccess.getEnumLiteralAccess().getNameAssignment(), "rule__EnumLiteral__NameAssignment");
110 builder.put(grammarAccess.getReferenceDeclarationAccess().getContainmentAssignment_0_0(), "rule__ReferenceDeclaration__ContainmentAssignment_0_0");
111 builder.put(grammarAccess.getReferenceDeclarationAccess().getReferenceTypeAssignment_1(), "rule__ReferenceDeclaration__ReferenceTypeAssignment_1");
112 builder.put(grammarAccess.getReferenceDeclarationAccess().getMultiplicityAssignment_2_1(), "rule__ReferenceDeclaration__MultiplicityAssignment_2_1");
113 builder.put(grammarAccess.getReferenceDeclarationAccess().getNameAssignment_3(), "rule__ReferenceDeclaration__NameAssignment_3");
114 builder.put(grammarAccess.getReferenceDeclarationAccess().getOppositeAssignment_4_1(), "rule__ReferenceDeclaration__OppositeAssignment_4_1");
115 builder.put(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_0_0(), "rule__PredicateDefinition__ErrorAssignment_0_0_0");
116 builder.put(grammarAccess.getPredicateDefinitionAccess().getNameAssignment_1(), "rule__PredicateDefinition__NameAssignment_1");
117 builder.put(grammarAccess.getPredicateDefinitionAccess().getParametersAssignment_3_0(), "rule__PredicateDefinition__ParametersAssignment_3_0");
118 builder.put(grammarAccess.getPredicateDefinitionAccess().getParametersAssignment_3_1_1(), "rule__PredicateDefinition__ParametersAssignment_3_1_1");
119 builder.put(grammarAccess.getPredicateDefinitionAccess().getBodiesAssignment_5_1(), "rule__PredicateDefinition__BodiesAssignment_5_1");
120 builder.put(grammarAccess.getPredicateDefinitionAccess().getBodiesAssignment_5_2_1(), "rule__PredicateDefinition__BodiesAssignment_5_2_1");
121 builder.put(grammarAccess.getParameterAccess().getParameterTypeAssignment_0(), "rule__Parameter__ParameterTypeAssignment_0");
122 builder.put(grammarAccess.getParameterAccess().getNameAssignment_1(), "rule__Parameter__NameAssignment_1");
123 builder.put(grammarAccess.getConjunctionAccess().getLiteralsAssignment_0(), "rule__Conjunction__LiteralsAssignment_0");
124 builder.put(grammarAccess.getConjunctionAccess().getLiteralsAssignment_1_1(), "rule__Conjunction__LiteralsAssignment_1_1");
125 builder.put(grammarAccess.getNegativeLiteralAccess().getAtomAssignment_1(), "rule__NegativeLiteral__AtomAssignment_1");
126 builder.put(grammarAccess.getAtomAccess().getRelationAssignment_0(), "rule__Atom__RelationAssignment_0");
127 builder.put(grammarAccess.getAtomAccess().getTransitiveClosureAssignment_1(), "rule__Atom__TransitiveClosureAssignment_1");
128 builder.put(grammarAccess.getAtomAccess().getArgumentsAssignment_3_0(), "rule__Atom__ArgumentsAssignment_3_0");
129 builder.put(grammarAccess.getAtomAccess().getArgumentsAssignment_3_1_1(), "rule__Atom__ArgumentsAssignment_3_1_1");
130 builder.put(grammarAccess.getVariableOrNodeArgumentAccess().getVariableOrNodeAssignment(), "rule__VariableOrNodeArgument__VariableOrNodeAssignment");
131 builder.put(grammarAccess.getConstantArgumentAccess().getConstantAssignment(), "rule__ConstantArgument__ConstantAssignment");
132 builder.put(grammarAccess.getAssertionAccess().getRelationAssignment_0_0_0(), "rule__Assertion__RelationAssignment_0_0_0");
133 builder.put(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_0_2_0(), "rule__Assertion__ArgumentsAssignment_0_0_2_0");
134 builder.put(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_0_2_1_1(), "rule__Assertion__ArgumentsAssignment_0_0_2_1_1");
135 builder.put(grammarAccess.getAssertionAccess().getValueAssignment_0_0_5(), "rule__Assertion__ValueAssignment_0_0_5");
136 builder.put(grammarAccess.getAssertionAccess().getValueAssignment_0_1_0(), "rule__Assertion__ValueAssignment_0_1_0");
137 builder.put(grammarAccess.getAssertionAccess().getRelationAssignment_0_1_1(), "rule__Assertion__RelationAssignment_0_1_1");
138 builder.put(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_1_3_0(), "rule__Assertion__ArgumentsAssignment_0_1_3_0");
139 builder.put(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_1_3_1_1(), "rule__Assertion__ArgumentsAssignment_0_1_3_1_1");
140 builder.put(grammarAccess.getNodeAssertionArgumentAccess().getNodeAssignment(), "rule__NodeAssertionArgument__NodeAssignment");
141 builder.put(grammarAccess.getConstantAssertionArgumentAccess().getConstantAssignment(), "rule__ConstantAssertionArgument__ConstantAssignment");
142 builder.put(grammarAccess.getNodeValueAssertionAccess().getNodeAssignment_0(), "rule__NodeValueAssertion__NodeAssignment_0");
143 builder.put(grammarAccess.getNodeValueAssertionAccess().getValueAssignment_2(), "rule__NodeValueAssertion__ValueAssignment_2");
144 builder.put(grammarAccess.getIntConstantAccess().getIntValueAssignment(), "rule__IntConstant__IntValueAssignment");
145 builder.put(grammarAccess.getRealConstantAccess().getRealValueAssignment(), "rule__RealConstant__RealValueAssignment");
146 builder.put(grammarAccess.getStringConstantAccess().getStringValueAssignment(), "rule__StringConstant__StringValueAssignment");
147 builder.put(grammarAccess.getScopeDeclarationAccess().getTypeScopesAssignment_1(), "rule__ScopeDeclaration__TypeScopesAssignment_1");
148 builder.put(grammarAccess.getScopeDeclarationAccess().getTypeScopesAssignment_2_1(), "rule__ScopeDeclaration__TypeScopesAssignment_2_1");
149 builder.put(grammarAccess.getTypeScopeAccess().getTargetTypeAssignment_0(), "rule__TypeScope__TargetTypeAssignment_0");
150 builder.put(grammarAccess.getTypeScopeAccess().getIncrementAssignment_1_0(), "rule__TypeScope__IncrementAssignment_1_0");
151 builder.put(grammarAccess.getTypeScopeAccess().getMultiplicityAssignment_2(), "rule__TypeScope__MultiplicityAssignment_2");
152 builder.put(grammarAccess.getRangeMultiplicityAccess().getLowerBoundAssignment_0(), "rule__RangeMultiplicity__LowerBoundAssignment_0");
153 builder.put(grammarAccess.getRangeMultiplicityAccess().getUpperBoundAssignment_2(), "rule__RangeMultiplicity__UpperBoundAssignment_2");
154 builder.put(grammarAccess.getExactMultiplicityAccess().getExactValueAssignment(), "rule__ExactMultiplicity__ExactValueAssignment");
155 }
156 }
157
158 @Inject
159 private NameMappings nameMappings;
160
161 @Inject
162 private ProblemGrammarAccess grammarAccess;
163
164 @Override
165 protected InternalProblemParser createParser() {
166 InternalProblemParser result = new InternalProblemParser(null);
167 result.setGrammarAccess(grammarAccess);
168 return result;
169 }
170
171 @Override
172 protected String getRuleName(AbstractElement element) {
173 return nameMappings.getRuleName(element);
174 }
175
176 @Override
177 protected String[] getInitialHiddenTokens() {
178 return new String[] { "RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT" };
179 }
180
181 public ProblemGrammarAccess getGrammarAccess() {
182 return this.grammarAccess;
183 }
184
185 public void setGrammarAccess(ProblemGrammarAccess grammarAccess) {
186 this.grammarAccess = grammarAccess;
187 }
188
189 public NameMappings getNameMappings() {
190 return nameMappings;
191 }
192
193 public void setNameMappings(NameMappings nameMappings) {
194 this.nameMappings = nameMappings;
195 }
196}
diff --git a/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalProblem.g b/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalProblem.g
deleted file mode 100644
index 1fc6285d..00000000
--- a/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalProblem.g
+++ /dev/null
@@ -1,5755 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4grammar InternalProblem;
5
6options {
7 superClass=AbstractInternalContentAssistParser;
8}
9
10@lexer::header {
11package org.eclipse.viatra.solver.language.ide.contentassist.antlr.internal;
12
13// Hack: Use our own Lexer superclass by means of import.
14// Currently there is no other way to specify the superclass for the lexer.
15import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.Lexer;
16}
17
18@parser::header {
19package org.eclipse.viatra.solver.language.ide.contentassist.antlr.internal;
20
21import java.io.InputStream;
22import org.eclipse.xtext.*;
23import org.eclipse.xtext.parser.*;
24import org.eclipse.xtext.parser.impl.*;
25import org.eclipse.emf.ecore.util.EcoreUtil;
26import org.eclipse.emf.ecore.EObject;
27import org.eclipse.xtext.parser.antlr.XtextTokenStream;
28import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
29import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
30import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.DFA;
31import org.eclipse.viatra.solver.language.services.ProblemGrammarAccess;
32
33}
34@parser::members {
35 private ProblemGrammarAccess grammarAccess;
36
37 public void setGrammarAccess(ProblemGrammarAccess grammarAccess) {
38 this.grammarAccess = grammarAccess;
39 }
40
41 @Override
42 protected Grammar getGrammar() {
43 return grammarAccess.getGrammar();
44 }
45
46 @Override
47 protected String getValueForTokenName(String tokenName) {
48 return tokenName;
49 }
50}
51
52// Entry rule entryRuleProblem
53entryRuleProblem
54:
55{ before(grammarAccess.getProblemRule()); }
56 ruleProblem
57{ after(grammarAccess.getProblemRule()); }
58 EOF
59;
60
61// Rule Problem
62ruleProblem
63 @init {
64 int stackSize = keepStackSize();
65 }
66 :
67 (
68 { before(grammarAccess.getProblemAccess().getGroup()); }
69 (rule__Problem__Group__0)
70 { after(grammarAccess.getProblemAccess().getGroup()); }
71 )
72;
73finally {
74 restoreStackSize(stackSize);
75}
76
77// Entry rule entryRuleStatement
78entryRuleStatement
79:
80{ before(grammarAccess.getStatementRule()); }
81 ruleStatement
82{ after(grammarAccess.getStatementRule()); }
83 EOF
84;
85
86// Rule Statement
87ruleStatement
88 @init {
89 int stackSize = keepStackSize();
90 }
91 :
92 (
93 { before(grammarAccess.getStatementAccess().getAlternatives()); }
94 (rule__Statement__Alternatives)
95 { after(grammarAccess.getStatementAccess().getAlternatives()); }
96 )
97;
98finally {
99 restoreStackSize(stackSize);
100}
101
102// Entry rule entryRuleClassDeclaration
103entryRuleClassDeclaration
104:
105{ before(grammarAccess.getClassDeclarationRule()); }
106 ruleClassDeclaration
107{ after(grammarAccess.getClassDeclarationRule()); }
108 EOF
109;
110
111// Rule ClassDeclaration
112ruleClassDeclaration
113 @init {
114 int stackSize = keepStackSize();
115 }
116 :
117 (
118 { before(grammarAccess.getClassDeclarationAccess().getGroup()); }
119 (rule__ClassDeclaration__Group__0)
120 { after(grammarAccess.getClassDeclarationAccess().getGroup()); }
121 )
122;
123finally {
124 restoreStackSize(stackSize);
125}
126
127// Entry rule entryRuleEnumDeclaration
128entryRuleEnumDeclaration
129:
130{ before(grammarAccess.getEnumDeclarationRule()); }
131 ruleEnumDeclaration
132{ after(grammarAccess.getEnumDeclarationRule()); }
133 EOF
134;
135
136// Rule EnumDeclaration
137ruleEnumDeclaration
138 @init {
139 int stackSize = keepStackSize();
140 }
141 :
142 (
143 { before(grammarAccess.getEnumDeclarationAccess().getGroup()); }
144 (rule__EnumDeclaration__Group__0)
145 { after(grammarAccess.getEnumDeclarationAccess().getGroup()); }
146 )
147;
148finally {
149 restoreStackSize(stackSize);
150}
151
152// Entry rule entryRuleEnumLiteral
153entryRuleEnumLiteral
154:
155{ before(grammarAccess.getEnumLiteralRule()); }
156 ruleEnumLiteral
157{ after(grammarAccess.getEnumLiteralRule()); }
158 EOF
159;
160
161// Rule EnumLiteral
162ruleEnumLiteral
163 @init {
164 int stackSize = keepStackSize();
165 }
166 :
167 (
168 { before(grammarAccess.getEnumLiteralAccess().getNameAssignment()); }
169 (rule__EnumLiteral__NameAssignment)
170 { after(grammarAccess.getEnumLiteralAccess().getNameAssignment()); }
171 )
172;
173finally {
174 restoreStackSize(stackSize);
175}
176
177// Entry rule entryRuleReferenceDeclaration
178entryRuleReferenceDeclaration
179:
180{ before(grammarAccess.getReferenceDeclarationRule()); }
181 ruleReferenceDeclaration
182{ after(grammarAccess.getReferenceDeclarationRule()); }
183 EOF
184;
185
186// Rule ReferenceDeclaration
187ruleReferenceDeclaration
188 @init {
189 int stackSize = keepStackSize();
190 }
191 :
192 (
193 { before(grammarAccess.getReferenceDeclarationAccess().getGroup()); }
194 (rule__ReferenceDeclaration__Group__0)
195 { after(grammarAccess.getReferenceDeclarationAccess().getGroup()); }
196 )
197;
198finally {
199 restoreStackSize(stackSize);
200}
201
202// Entry rule entryRulePredicateDefinition
203entryRulePredicateDefinition
204:
205{ before(grammarAccess.getPredicateDefinitionRule()); }
206 rulePredicateDefinition
207{ after(grammarAccess.getPredicateDefinitionRule()); }
208 EOF
209;
210
211// Rule PredicateDefinition
212rulePredicateDefinition
213 @init {
214 int stackSize = keepStackSize();
215 }
216 :
217 (
218 { before(grammarAccess.getPredicateDefinitionAccess().getGroup()); }
219 (rule__PredicateDefinition__Group__0)
220 { after(grammarAccess.getPredicateDefinitionAccess().getGroup()); }
221 )
222;
223finally {
224 restoreStackSize(stackSize);
225}
226
227// Entry rule entryRuleParameter
228entryRuleParameter
229:
230{ before(grammarAccess.getParameterRule()); }
231 ruleParameter
232{ after(grammarAccess.getParameterRule()); }
233 EOF
234;
235
236// Rule Parameter
237ruleParameter
238 @init {
239 int stackSize = keepStackSize();
240 }
241 :
242 (
243 { before(grammarAccess.getParameterAccess().getGroup()); }
244 (rule__Parameter__Group__0)
245 { after(grammarAccess.getParameterAccess().getGroup()); }
246 )
247;
248finally {
249 restoreStackSize(stackSize);
250}
251
252// Entry rule entryRuleConjunction
253entryRuleConjunction
254:
255{ before(grammarAccess.getConjunctionRule()); }
256 ruleConjunction
257{ after(grammarAccess.getConjunctionRule()); }
258 EOF
259;
260
261// Rule Conjunction
262ruleConjunction
263 @init {
264 int stackSize = keepStackSize();
265 }
266 :
267 (
268 { before(grammarAccess.getConjunctionAccess().getGroup()); }
269 (rule__Conjunction__Group__0)
270 { after(grammarAccess.getConjunctionAccess().getGroup()); }
271 )
272;
273finally {
274 restoreStackSize(stackSize);
275}
276
277// Entry rule entryRuleLiteral
278entryRuleLiteral
279:
280{ before(grammarAccess.getLiteralRule()); }
281 ruleLiteral
282{ after(grammarAccess.getLiteralRule()); }
283 EOF
284;
285
286// Rule Literal
287ruleLiteral
288 @init {
289 int stackSize = keepStackSize();
290 }
291 :
292 (
293 { before(grammarAccess.getLiteralAccess().getAlternatives()); }
294 (rule__Literal__Alternatives)
295 { after(grammarAccess.getLiteralAccess().getAlternatives()); }
296 )
297;
298finally {
299 restoreStackSize(stackSize);
300}
301
302// Entry rule entryRuleNegativeLiteral
303entryRuleNegativeLiteral
304:
305{ before(grammarAccess.getNegativeLiteralRule()); }
306 ruleNegativeLiteral
307{ after(grammarAccess.getNegativeLiteralRule()); }
308 EOF
309;
310
311// Rule NegativeLiteral
312ruleNegativeLiteral
313 @init {
314 int stackSize = keepStackSize();
315 }
316 :
317 (
318 { before(grammarAccess.getNegativeLiteralAccess().getGroup()); }
319 (rule__NegativeLiteral__Group__0)
320 { after(grammarAccess.getNegativeLiteralAccess().getGroup()); }
321 )
322;
323finally {
324 restoreStackSize(stackSize);
325}
326
327// Entry rule entryRuleAtom
328entryRuleAtom
329:
330{ before(grammarAccess.getAtomRule()); }
331 ruleAtom
332{ after(grammarAccess.getAtomRule()); }
333 EOF
334;
335
336// Rule Atom
337ruleAtom
338 @init {
339 int stackSize = keepStackSize();
340 }
341 :
342 (
343 { before(grammarAccess.getAtomAccess().getGroup()); }
344 (rule__Atom__Group__0)
345 { after(grammarAccess.getAtomAccess().getGroup()); }
346 )
347;
348finally {
349 restoreStackSize(stackSize);
350}
351
352// Entry rule entryRuleArgument
353entryRuleArgument
354:
355{ before(grammarAccess.getArgumentRule()); }
356 ruleArgument
357{ after(grammarAccess.getArgumentRule()); }
358 EOF
359;
360
361// Rule Argument
362ruleArgument
363 @init {
364 int stackSize = keepStackSize();
365 }
366 :
367 (
368 { before(grammarAccess.getArgumentAccess().getAlternatives()); }
369 (rule__Argument__Alternatives)
370 { after(grammarAccess.getArgumentAccess().getAlternatives()); }
371 )
372;
373finally {
374 restoreStackSize(stackSize);
375}
376
377// Entry rule entryRuleVariableOrNodeArgument
378entryRuleVariableOrNodeArgument
379:
380{ before(grammarAccess.getVariableOrNodeArgumentRule()); }
381 ruleVariableOrNodeArgument
382{ after(grammarAccess.getVariableOrNodeArgumentRule()); }
383 EOF
384;
385
386// Rule VariableOrNodeArgument
387ruleVariableOrNodeArgument
388 @init {
389 int stackSize = keepStackSize();
390 }
391 :
392 (
393 { before(grammarAccess.getVariableOrNodeArgumentAccess().getVariableOrNodeAssignment()); }
394 (rule__VariableOrNodeArgument__VariableOrNodeAssignment)
395 { after(grammarAccess.getVariableOrNodeArgumentAccess().getVariableOrNodeAssignment()); }
396 )
397;
398finally {
399 restoreStackSize(stackSize);
400}
401
402// Entry rule entryRuleConstantArgument
403entryRuleConstantArgument
404:
405{ before(grammarAccess.getConstantArgumentRule()); }
406 ruleConstantArgument
407{ after(grammarAccess.getConstantArgumentRule()); }
408 EOF
409;
410
411// Rule ConstantArgument
412ruleConstantArgument
413 @init {
414 int stackSize = keepStackSize();
415 }
416 :
417 (
418 { before(grammarAccess.getConstantArgumentAccess().getConstantAssignment()); }
419 (rule__ConstantArgument__ConstantAssignment)
420 { after(grammarAccess.getConstantArgumentAccess().getConstantAssignment()); }
421 )
422;
423finally {
424 restoreStackSize(stackSize);
425}
426
427// Entry rule entryRuleAssertion
428entryRuleAssertion
429:
430{ before(grammarAccess.getAssertionRule()); }
431 ruleAssertion
432{ after(grammarAccess.getAssertionRule()); }
433 EOF
434;
435
436// Rule Assertion
437ruleAssertion
438 @init {
439 int stackSize = keepStackSize();
440 }
441 :
442 (
443 { before(grammarAccess.getAssertionAccess().getGroup()); }
444 (rule__Assertion__Group__0)
445 { after(grammarAccess.getAssertionAccess().getGroup()); }
446 )
447;
448finally {
449 restoreStackSize(stackSize);
450}
451
452// Entry rule entryRuleAssertionArgument
453entryRuleAssertionArgument
454:
455{ before(grammarAccess.getAssertionArgumentRule()); }
456 ruleAssertionArgument
457{ after(grammarAccess.getAssertionArgumentRule()); }
458 EOF
459;
460
461// Rule AssertionArgument
462ruleAssertionArgument
463 @init {
464 int stackSize = keepStackSize();
465 }
466 :
467 (
468 { before(grammarAccess.getAssertionArgumentAccess().getAlternatives()); }
469 (rule__AssertionArgument__Alternatives)
470 { after(grammarAccess.getAssertionArgumentAccess().getAlternatives()); }
471 )
472;
473finally {
474 restoreStackSize(stackSize);
475}
476
477// Entry rule entryRuleNodeAssertionArgument
478entryRuleNodeAssertionArgument
479:
480{ before(grammarAccess.getNodeAssertionArgumentRule()); }
481 ruleNodeAssertionArgument
482{ after(grammarAccess.getNodeAssertionArgumentRule()); }
483 EOF
484;
485
486// Rule NodeAssertionArgument
487ruleNodeAssertionArgument
488 @init {
489 int stackSize = keepStackSize();
490 }
491 :
492 (
493 { before(grammarAccess.getNodeAssertionArgumentAccess().getNodeAssignment()); }
494 (rule__NodeAssertionArgument__NodeAssignment)
495 { after(grammarAccess.getNodeAssertionArgumentAccess().getNodeAssignment()); }
496 )
497;
498finally {
499 restoreStackSize(stackSize);
500}
501
502// Entry rule entryRuleConstantAssertionArgument
503entryRuleConstantAssertionArgument
504:
505{ before(grammarAccess.getConstantAssertionArgumentRule()); }
506 ruleConstantAssertionArgument
507{ after(grammarAccess.getConstantAssertionArgumentRule()); }
508 EOF
509;
510
511// Rule ConstantAssertionArgument
512ruleConstantAssertionArgument
513 @init {
514 int stackSize = keepStackSize();
515 }
516 :
517 (
518 { before(grammarAccess.getConstantAssertionArgumentAccess().getConstantAssignment()); }
519 (rule__ConstantAssertionArgument__ConstantAssignment)
520 { after(grammarAccess.getConstantAssertionArgumentAccess().getConstantAssignment()); }
521 )
522;
523finally {
524 restoreStackSize(stackSize);
525}
526
527// Entry rule entryRuleNodeValueAssertion
528entryRuleNodeValueAssertion
529:
530{ before(grammarAccess.getNodeValueAssertionRule()); }
531 ruleNodeValueAssertion
532{ after(grammarAccess.getNodeValueAssertionRule()); }
533 EOF
534;
535
536// Rule NodeValueAssertion
537ruleNodeValueAssertion
538 @init {
539 int stackSize = keepStackSize();
540 }
541 :
542 (
543 { before(grammarAccess.getNodeValueAssertionAccess().getGroup()); }
544 (rule__NodeValueAssertion__Group__0)
545 { after(grammarAccess.getNodeValueAssertionAccess().getGroup()); }
546 )
547;
548finally {
549 restoreStackSize(stackSize);
550}
551
552// Entry rule entryRuleConstant
553entryRuleConstant
554:
555{ before(grammarAccess.getConstantRule()); }
556 ruleConstant
557{ after(grammarAccess.getConstantRule()); }
558 EOF
559;
560
561// Rule Constant
562ruleConstant
563 @init {
564 int stackSize = keepStackSize();
565 }
566 :
567 (
568 { before(grammarAccess.getConstantAccess().getAlternatives()); }
569 (rule__Constant__Alternatives)
570 { after(grammarAccess.getConstantAccess().getAlternatives()); }
571 )
572;
573finally {
574 restoreStackSize(stackSize);
575}
576
577// Entry rule entryRuleIntConstant
578entryRuleIntConstant
579:
580{ before(grammarAccess.getIntConstantRule()); }
581 ruleIntConstant
582{ after(grammarAccess.getIntConstantRule()); }
583 EOF
584;
585
586// Rule IntConstant
587ruleIntConstant
588 @init {
589 int stackSize = keepStackSize();
590 }
591 :
592 (
593 { before(grammarAccess.getIntConstantAccess().getIntValueAssignment()); }
594 (rule__IntConstant__IntValueAssignment)
595 { after(grammarAccess.getIntConstantAccess().getIntValueAssignment()); }
596 )
597;
598finally {
599 restoreStackSize(stackSize);
600}
601
602// Entry rule entryRuleRealConstant
603entryRuleRealConstant
604:
605{ before(grammarAccess.getRealConstantRule()); }
606 ruleRealConstant
607{ after(grammarAccess.getRealConstantRule()); }
608 EOF
609;
610
611// Rule RealConstant
612ruleRealConstant
613 @init {
614 int stackSize = keepStackSize();
615 }
616 :
617 (
618 { before(grammarAccess.getRealConstantAccess().getRealValueAssignment()); }
619 (rule__RealConstant__RealValueAssignment)
620 { after(grammarAccess.getRealConstantAccess().getRealValueAssignment()); }
621 )
622;
623finally {
624 restoreStackSize(stackSize);
625}
626
627// Entry rule entryRuleStringConstant
628entryRuleStringConstant
629:
630{ before(grammarAccess.getStringConstantRule()); }
631 ruleStringConstant
632{ after(grammarAccess.getStringConstantRule()); }
633 EOF
634;
635
636// Rule StringConstant
637ruleStringConstant
638 @init {
639 int stackSize = keepStackSize();
640 }
641 :
642 (
643 { before(grammarAccess.getStringConstantAccess().getStringValueAssignment()); }
644 (rule__StringConstant__StringValueAssignment)
645 { after(grammarAccess.getStringConstantAccess().getStringValueAssignment()); }
646 )
647;
648finally {
649 restoreStackSize(stackSize);
650}
651
652// Entry rule entryRuleScopeDeclaration
653entryRuleScopeDeclaration
654:
655{ before(grammarAccess.getScopeDeclarationRule()); }
656 ruleScopeDeclaration
657{ after(grammarAccess.getScopeDeclarationRule()); }
658 EOF
659;
660
661// Rule ScopeDeclaration
662ruleScopeDeclaration
663 @init {
664 int stackSize = keepStackSize();
665 }
666 :
667 (
668 { before(grammarAccess.getScopeDeclarationAccess().getGroup()); }
669 (rule__ScopeDeclaration__Group__0)
670 { after(grammarAccess.getScopeDeclarationAccess().getGroup()); }
671 )
672;
673finally {
674 restoreStackSize(stackSize);
675}
676
677// Entry rule entryRuleTypeScope
678entryRuleTypeScope
679:
680{ before(grammarAccess.getTypeScopeRule()); }
681 ruleTypeScope
682{ after(grammarAccess.getTypeScopeRule()); }
683 EOF
684;
685
686// Rule TypeScope
687ruleTypeScope
688 @init {
689 int stackSize = keepStackSize();
690 }
691 :
692 (
693 { before(grammarAccess.getTypeScopeAccess().getGroup()); }
694 (rule__TypeScope__Group__0)
695 { after(grammarAccess.getTypeScopeAccess().getGroup()); }
696 )
697;
698finally {
699 restoreStackSize(stackSize);
700}
701
702// Entry rule entryRuleMultiplicity
703entryRuleMultiplicity
704:
705{ before(grammarAccess.getMultiplicityRule()); }
706 ruleMultiplicity
707{ after(grammarAccess.getMultiplicityRule()); }
708 EOF
709;
710
711// Rule Multiplicity
712ruleMultiplicity
713 @init {
714 int stackSize = keepStackSize();
715 }
716 :
717 (
718 { before(grammarAccess.getMultiplicityAccess().getAlternatives()); }
719 (rule__Multiplicity__Alternatives)
720 { after(grammarAccess.getMultiplicityAccess().getAlternatives()); }
721 )
722;
723finally {
724 restoreStackSize(stackSize);
725}
726
727// Entry rule entryRuleDefiniteMultiplicity
728entryRuleDefiniteMultiplicity
729:
730{ before(grammarAccess.getDefiniteMultiplicityRule()); }
731 ruleDefiniteMultiplicity
732{ after(grammarAccess.getDefiniteMultiplicityRule()); }
733 EOF
734;
735
736// Rule DefiniteMultiplicity
737ruleDefiniteMultiplicity
738 @init {
739 int stackSize = keepStackSize();
740 }
741 :
742 (
743 { before(grammarAccess.getDefiniteMultiplicityAccess().getAlternatives()); }
744 (rule__DefiniteMultiplicity__Alternatives)
745 { after(grammarAccess.getDefiniteMultiplicityAccess().getAlternatives()); }
746 )
747;
748finally {
749 restoreStackSize(stackSize);
750}
751
752// Entry rule entryRuleUnboundedMultiplicity
753entryRuleUnboundedMultiplicity
754:
755{ before(grammarAccess.getUnboundedMultiplicityRule()); }
756 ruleUnboundedMultiplicity
757{ after(grammarAccess.getUnboundedMultiplicityRule()); }
758 EOF
759;
760
761// Rule UnboundedMultiplicity
762ruleUnboundedMultiplicity
763 @init {
764 int stackSize = keepStackSize();
765 }
766 :
767 (
768 { before(grammarAccess.getUnboundedMultiplicityAccess().getUnboundedMultiplicityAction()); }
769 ()
770 { after(grammarAccess.getUnboundedMultiplicityAccess().getUnboundedMultiplicityAction()); }
771 )
772;
773finally {
774 restoreStackSize(stackSize);
775}
776
777// Entry rule entryRuleRangeMultiplicity
778entryRuleRangeMultiplicity
779:
780{ before(grammarAccess.getRangeMultiplicityRule()); }
781 ruleRangeMultiplicity
782{ after(grammarAccess.getRangeMultiplicityRule()); }
783 EOF
784;
785
786// Rule RangeMultiplicity
787ruleRangeMultiplicity
788 @init {
789 int stackSize = keepStackSize();
790 }
791 :
792 (
793 { before(grammarAccess.getRangeMultiplicityAccess().getGroup()); }
794 (rule__RangeMultiplicity__Group__0)
795 { after(grammarAccess.getRangeMultiplicityAccess().getGroup()); }
796 )
797;
798finally {
799 restoreStackSize(stackSize);
800}
801
802// Entry rule entryRuleExactMultiplicity
803entryRuleExactMultiplicity
804:
805{ before(grammarAccess.getExactMultiplicityRule()); }
806 ruleExactMultiplicity
807{ after(grammarAccess.getExactMultiplicityRule()); }
808 EOF
809;
810
811// Rule ExactMultiplicity
812ruleExactMultiplicity
813 @init {
814 int stackSize = keepStackSize();
815 }
816 :
817 (
818 { before(grammarAccess.getExactMultiplicityAccess().getExactValueAssignment()); }
819 (rule__ExactMultiplicity__ExactValueAssignment)
820 { after(grammarAccess.getExactMultiplicityAccess().getExactValueAssignment()); }
821 )
822;
823finally {
824 restoreStackSize(stackSize);
825}
826
827// Entry rule entryRuleUpperBound
828entryRuleUpperBound
829:
830{ before(grammarAccess.getUpperBoundRule()); }
831 ruleUpperBound
832{ after(grammarAccess.getUpperBoundRule()); }
833 EOF
834;
835
836// Rule UpperBound
837ruleUpperBound
838 @init {
839 int stackSize = keepStackSize();
840 }
841 :
842 (
843 { before(grammarAccess.getUpperBoundAccess().getAlternatives()); }
844 (rule__UpperBound__Alternatives)
845 { after(grammarAccess.getUpperBoundAccess().getAlternatives()); }
846 )
847;
848finally {
849 restoreStackSize(stackSize);
850}
851
852// Entry rule entryRuleQualifiedName
853entryRuleQualifiedName
854@init {
855 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
856}
857:
858{ before(grammarAccess.getQualifiedNameRule()); }
859 ruleQualifiedName
860{ after(grammarAccess.getQualifiedNameRule()); }
861 EOF
862;
863finally {
864 myHiddenTokenState.restore();
865}
866
867// Rule QualifiedName
868ruleQualifiedName
869 @init {
870 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
871 int stackSize = keepStackSize();
872 }
873 :
874 (
875 { before(grammarAccess.getQualifiedNameAccess().getAlternatives()); }
876 (rule__QualifiedName__Alternatives)
877 { after(grammarAccess.getQualifiedNameAccess().getAlternatives()); }
878 )
879;
880finally {
881 restoreStackSize(stackSize);
882 myHiddenTokenState.restore();
883}
884
885// Entry rule entryRuleIdentifier
886entryRuleIdentifier
887:
888{ before(grammarAccess.getIdentifierRule()); }
889 ruleIdentifier
890{ after(grammarAccess.getIdentifierRule()); }
891 EOF
892;
893
894// Rule Identifier
895ruleIdentifier
896 @init {
897 int stackSize = keepStackSize();
898 }
899 :
900 (
901 { before(grammarAccess.getIdentifierAccess().getAlternatives()); }
902 (rule__Identifier__Alternatives)
903 { after(grammarAccess.getIdentifierAccess().getAlternatives()); }
904 )
905;
906finally {
907 restoreStackSize(stackSize);
908}
909
910// Entry rule entryRuleInteger
911entryRuleInteger
912@init {
913 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
914}
915:
916{ before(grammarAccess.getIntegerRule()); }
917 ruleInteger
918{ after(grammarAccess.getIntegerRule()); }
919 EOF
920;
921finally {
922 myHiddenTokenState.restore();
923}
924
925// Rule Integer
926ruleInteger
927 @init {
928 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
929 int stackSize = keepStackSize();
930 }
931 :
932 (
933 { before(grammarAccess.getIntegerAccess().getGroup()); }
934 (rule__Integer__Group__0)
935 { after(grammarAccess.getIntegerAccess().getGroup()); }
936 )
937;
938finally {
939 restoreStackSize(stackSize);
940 myHiddenTokenState.restore();
941}
942
943// Entry rule entryRuleReal
944entryRuleReal
945:
946{ before(grammarAccess.getRealRule()); }
947 ruleReal
948{ after(grammarAccess.getRealRule()); }
949 EOF
950;
951
952// Rule Real
953ruleReal
954 @init {
955 int stackSize = keepStackSize();
956 }
957 :
958 (
959 { before(grammarAccess.getRealAccess().getGroup()); }
960 (rule__Real__Group__0)
961 { after(grammarAccess.getRealAccess().getGroup()); }
962 )
963;
964finally {
965 restoreStackSize(stackSize);
966}
967
968// Rule LogicValue
969ruleLogicValue
970 @init {
971 int stackSize = keepStackSize();
972 }
973:
974 (
975 { before(grammarAccess.getLogicValueAccess().getAlternatives()); }
976 (rule__LogicValue__Alternatives)
977 { after(grammarAccess.getLogicValueAccess().getAlternatives()); }
978 )
979;
980finally {
981 restoreStackSize(stackSize);
982}
983
984// Rule ShortLogicValue
985ruleShortLogicValue
986 @init {
987 int stackSize = keepStackSize();
988 }
989:
990 (
991 { before(grammarAccess.getShortLogicValueAccess().getAlternatives()); }
992 (rule__ShortLogicValue__Alternatives)
993 { after(grammarAccess.getShortLogicValueAccess().getAlternatives()); }
994 )
995;
996finally {
997 restoreStackSize(stackSize);
998}
999
1000rule__Statement__Alternatives
1001 @init {
1002 int stackSize = keepStackSize();
1003 }
1004:
1005 (
1006 { before(grammarAccess.getStatementAccess().getClassDeclarationParserRuleCall_0()); }
1007 ruleClassDeclaration
1008 { after(grammarAccess.getStatementAccess().getClassDeclarationParserRuleCall_0()); }
1009 )
1010 |
1011 (
1012 { before(grammarAccess.getStatementAccess().getEnumDeclarationParserRuleCall_1()); }
1013 ruleEnumDeclaration
1014 { after(grammarAccess.getStatementAccess().getEnumDeclarationParserRuleCall_1()); }
1015 )
1016 |
1017 (
1018 { before(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_2()); }
1019 rulePredicateDefinition
1020 { after(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_2()); }
1021 )
1022 |
1023 (
1024 { before(grammarAccess.getStatementAccess().getAssertionParserRuleCall_3()); }
1025 ruleAssertion
1026 { after(grammarAccess.getStatementAccess().getAssertionParserRuleCall_3()); }
1027 )
1028 |
1029 (
1030 { before(grammarAccess.getStatementAccess().getNodeValueAssertionParserRuleCall_4()); }
1031 ruleNodeValueAssertion
1032 { after(grammarAccess.getStatementAccess().getNodeValueAssertionParserRuleCall_4()); }
1033 )
1034 |
1035 (
1036 { before(grammarAccess.getStatementAccess().getScopeDeclarationParserRuleCall_5()); }
1037 ruleScopeDeclaration
1038 { after(grammarAccess.getStatementAccess().getScopeDeclarationParserRuleCall_5()); }
1039 )
1040;
1041finally {
1042 restoreStackSize(stackSize);
1043}
1044
1045rule__ClassDeclaration__Alternatives_4
1046 @init {
1047 int stackSize = keepStackSize();
1048 }
1049:
1050 (
1051 { before(grammarAccess.getClassDeclarationAccess().getGroup_4_0()); }
1052 (rule__ClassDeclaration__Group_4_0__0)
1053 { after(grammarAccess.getClassDeclarationAccess().getGroup_4_0()); }
1054 )
1055 |
1056 (
1057 { before(grammarAccess.getClassDeclarationAccess().getFullStopKeyword_4_1()); }
1058 '.'
1059 { after(grammarAccess.getClassDeclarationAccess().getFullStopKeyword_4_1()); }
1060 )
1061;
1062finally {
1063 restoreStackSize(stackSize);
1064}
1065
1066rule__EnumDeclaration__Alternatives_2
1067 @init {
1068 int stackSize = keepStackSize();
1069 }
1070:
1071 (
1072 { before(grammarAccess.getEnumDeclarationAccess().getGroup_2_0()); }
1073 (rule__EnumDeclaration__Group_2_0__0)
1074 { after(grammarAccess.getEnumDeclarationAccess().getGroup_2_0()); }
1075 )
1076 |
1077 (
1078 { before(grammarAccess.getEnumDeclarationAccess().getFullStopKeyword_2_1()); }
1079 '.'
1080 { after(grammarAccess.getEnumDeclarationAccess().getFullStopKeyword_2_1()); }
1081 )
1082;
1083finally {
1084 restoreStackSize(stackSize);
1085}
1086
1087rule__EnumDeclaration__Alternatives_2_0_1_2
1088 @init {
1089 int stackSize = keepStackSize();
1090 }
1091:
1092 (
1093 { before(grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_2_0()); }
1094 ','
1095 { after(grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_2_0()); }
1096 )
1097 |
1098 (
1099 { before(grammarAccess.getEnumDeclarationAccess().getSemicolonKeyword_2_0_1_2_1()); }
1100 ';'
1101 { after(grammarAccess.getEnumDeclarationAccess().getSemicolonKeyword_2_0_1_2_1()); }
1102 )
1103;
1104finally {
1105 restoreStackSize(stackSize);
1106}
1107
1108rule__ReferenceDeclaration__Alternatives_0
1109 @init {
1110 int stackSize = keepStackSize();
1111 }
1112:
1113 (
1114 { before(grammarAccess.getReferenceDeclarationAccess().getContainmentAssignment_0_0()); }
1115 (rule__ReferenceDeclaration__ContainmentAssignment_0_0)
1116 { after(grammarAccess.getReferenceDeclarationAccess().getContainmentAssignment_0_0()); }
1117 )
1118 |
1119 (
1120 { before(grammarAccess.getReferenceDeclarationAccess().getRefersKeyword_0_1()); }
1121 'refers'
1122 { after(grammarAccess.getReferenceDeclarationAccess().getRefersKeyword_0_1()); }
1123 )
1124;
1125finally {
1126 restoreStackSize(stackSize);
1127}
1128
1129rule__PredicateDefinition__Alternatives_0
1130 @init {
1131 int stackSize = keepStackSize();
1132 }
1133:
1134 (
1135 { before(grammarAccess.getPredicateDefinitionAccess().getGroup_0_0()); }
1136 (rule__PredicateDefinition__Group_0_0__0)
1137 { after(grammarAccess.getPredicateDefinitionAccess().getGroup_0_0()); }
1138 )
1139 |
1140 (
1141 { before(grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_1()); }
1142 'pred'
1143 { after(grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_1()); }
1144 )
1145;
1146finally {
1147 restoreStackSize(stackSize);
1148}
1149
1150rule__Literal__Alternatives
1151 @init {
1152 int stackSize = keepStackSize();
1153 }
1154:
1155 (
1156 { before(grammarAccess.getLiteralAccess().getAtomParserRuleCall_0()); }
1157 ruleAtom
1158 { after(grammarAccess.getLiteralAccess().getAtomParserRuleCall_0()); }
1159 )
1160 |
1161 (
1162 { before(grammarAccess.getLiteralAccess().getNegativeLiteralParserRuleCall_1()); }
1163 ruleNegativeLiteral
1164 { after(grammarAccess.getLiteralAccess().getNegativeLiteralParserRuleCall_1()); }
1165 )
1166;
1167finally {
1168 restoreStackSize(stackSize);
1169}
1170
1171rule__Argument__Alternatives
1172 @init {
1173 int stackSize = keepStackSize();
1174 }
1175:
1176 (
1177 { before(grammarAccess.getArgumentAccess().getVariableOrNodeArgumentParserRuleCall_0()); }
1178 ruleVariableOrNodeArgument
1179 { after(grammarAccess.getArgumentAccess().getVariableOrNodeArgumentParserRuleCall_0()); }
1180 )
1181 |
1182 (
1183 { before(grammarAccess.getArgumentAccess().getConstantArgumentParserRuleCall_1()); }
1184 ruleConstantArgument
1185 { after(grammarAccess.getArgumentAccess().getConstantArgumentParserRuleCall_1()); }
1186 )
1187;
1188finally {
1189 restoreStackSize(stackSize);
1190}
1191
1192rule__Assertion__Alternatives_0
1193 @init {
1194 int stackSize = keepStackSize();
1195 }
1196:
1197 (
1198 { before(grammarAccess.getAssertionAccess().getGroup_0_0()); }
1199 (rule__Assertion__Group_0_0__0)
1200 { after(grammarAccess.getAssertionAccess().getGroup_0_0()); }
1201 )
1202 |
1203 (
1204 { before(grammarAccess.getAssertionAccess().getGroup_0_1()); }
1205 (rule__Assertion__Group_0_1__0)
1206 { after(grammarAccess.getAssertionAccess().getGroup_0_1()); }
1207 )
1208;
1209finally {
1210 restoreStackSize(stackSize);
1211}
1212
1213rule__AssertionArgument__Alternatives
1214 @init {
1215 int stackSize = keepStackSize();
1216 }
1217:
1218 (
1219 { before(grammarAccess.getAssertionArgumentAccess().getNodeAssertionArgumentParserRuleCall_0()); }
1220 ruleNodeAssertionArgument
1221 { after(grammarAccess.getAssertionArgumentAccess().getNodeAssertionArgumentParserRuleCall_0()); }
1222 )
1223 |
1224 (
1225 { before(grammarAccess.getAssertionArgumentAccess().getConstantAssertionArgumentParserRuleCall_1()); }
1226 ruleConstantAssertionArgument
1227 { after(grammarAccess.getAssertionArgumentAccess().getConstantAssertionArgumentParserRuleCall_1()); }
1228 )
1229;
1230finally {
1231 restoreStackSize(stackSize);
1232}
1233
1234rule__Constant__Alternatives
1235 @init {
1236 int stackSize = keepStackSize();
1237 }
1238:
1239 (
1240 { before(grammarAccess.getConstantAccess().getRealConstantParserRuleCall_0()); }
1241 ruleRealConstant
1242 { after(grammarAccess.getConstantAccess().getRealConstantParserRuleCall_0()); }
1243 )
1244 |
1245 (
1246 { before(grammarAccess.getConstantAccess().getIntConstantParserRuleCall_1()); }
1247 ruleIntConstant
1248 { after(grammarAccess.getConstantAccess().getIntConstantParserRuleCall_1()); }
1249 )
1250 |
1251 (
1252 { before(grammarAccess.getConstantAccess().getStringConstantParserRuleCall_2()); }
1253 ruleStringConstant
1254 { after(grammarAccess.getConstantAccess().getStringConstantParserRuleCall_2()); }
1255 )
1256;
1257finally {
1258 restoreStackSize(stackSize);
1259}
1260
1261rule__TypeScope__Alternatives_1
1262 @init {
1263 int stackSize = keepStackSize();
1264 }
1265:
1266 (
1267 { before(grammarAccess.getTypeScopeAccess().getIncrementAssignment_1_0()); }
1268 (rule__TypeScope__IncrementAssignment_1_0)
1269 { after(grammarAccess.getTypeScopeAccess().getIncrementAssignment_1_0()); }
1270 )
1271 |
1272 (
1273 { before(grammarAccess.getTypeScopeAccess().getEqualsSignKeyword_1_1()); }
1274 '='
1275 { after(grammarAccess.getTypeScopeAccess().getEqualsSignKeyword_1_1()); }
1276 )
1277;
1278finally {
1279 restoreStackSize(stackSize);
1280}
1281
1282rule__Multiplicity__Alternatives
1283 @init {
1284 int stackSize = keepStackSize();
1285 }
1286:
1287 (
1288 { before(grammarAccess.getMultiplicityAccess().getUnboundedMultiplicityParserRuleCall_0()); }
1289 ruleUnboundedMultiplicity
1290 { after(grammarAccess.getMultiplicityAccess().getUnboundedMultiplicityParserRuleCall_0()); }
1291 )
1292 |
1293 (
1294 { before(grammarAccess.getMultiplicityAccess().getDefiniteMultiplicityParserRuleCall_1()); }
1295 ruleDefiniteMultiplicity
1296 { after(grammarAccess.getMultiplicityAccess().getDefiniteMultiplicityParserRuleCall_1()); }
1297 )
1298;
1299finally {
1300 restoreStackSize(stackSize);
1301}
1302
1303rule__DefiniteMultiplicity__Alternatives
1304 @init {
1305 int stackSize = keepStackSize();
1306 }
1307:
1308 (
1309 { before(grammarAccess.getDefiniteMultiplicityAccess().getRangeMultiplicityParserRuleCall_0()); }
1310 ruleRangeMultiplicity
1311 { after(grammarAccess.getDefiniteMultiplicityAccess().getRangeMultiplicityParserRuleCall_0()); }
1312 )
1313 |
1314 (
1315 { before(grammarAccess.getDefiniteMultiplicityAccess().getExactMultiplicityParserRuleCall_1()); }
1316 ruleExactMultiplicity
1317 { after(grammarAccess.getDefiniteMultiplicityAccess().getExactMultiplicityParserRuleCall_1()); }
1318 )
1319;
1320finally {
1321 restoreStackSize(stackSize);
1322}
1323
1324rule__UpperBound__Alternatives
1325 @init {
1326 int stackSize = keepStackSize();
1327 }
1328:
1329 (
1330 { before(grammarAccess.getUpperBoundAccess().getINTTerminalRuleCall_0()); }
1331 RULE_INT
1332 { after(grammarAccess.getUpperBoundAccess().getINTTerminalRuleCall_0()); }
1333 )
1334 |
1335 (
1336 { before(grammarAccess.getUpperBoundAccess().getAsteriskKeyword_1()); }
1337 '*'
1338 { after(grammarAccess.getUpperBoundAccess().getAsteriskKeyword_1()); }
1339 )
1340;
1341finally {
1342 restoreStackSize(stackSize);
1343}
1344
1345rule__QualifiedName__Alternatives
1346 @init {
1347 int stackSize = keepStackSize();
1348 }
1349:
1350 (
1351 { before(grammarAccess.getQualifiedNameAccess().getQUOTED_IDTerminalRuleCall_0()); }
1352 RULE_QUOTED_ID
1353 { after(grammarAccess.getQualifiedNameAccess().getQUOTED_IDTerminalRuleCall_0()); }
1354 )
1355 |
1356 (
1357 { before(grammarAccess.getQualifiedNameAccess().getGroup_1()); }
1358 (rule__QualifiedName__Group_1__0)
1359 { after(grammarAccess.getQualifiedNameAccess().getGroup_1()); }
1360 )
1361;
1362finally {
1363 restoreStackSize(stackSize);
1364}
1365
1366rule__Identifier__Alternatives
1367 @init {
1368 int stackSize = keepStackSize();
1369 }
1370:
1371 (
1372 { before(grammarAccess.getIdentifierAccess().getIDTerminalRuleCall_0()); }
1373 RULE_ID
1374 { after(grammarAccess.getIdentifierAccess().getIDTerminalRuleCall_0()); }
1375 )
1376 |
1377 (
1378 { before(grammarAccess.getIdentifierAccess().getTrueKeyword_1()); }
1379 'true'
1380 { after(grammarAccess.getIdentifierAccess().getTrueKeyword_1()); }
1381 )
1382 |
1383 (
1384 { before(grammarAccess.getIdentifierAccess().getFalseKeyword_2()); }
1385 'false'
1386 { after(grammarAccess.getIdentifierAccess().getFalseKeyword_2()); }
1387 )
1388;
1389finally {
1390 restoreStackSize(stackSize);
1391}
1392
1393rule__Real__Alternatives_1
1394 @init {
1395 int stackSize = keepStackSize();
1396 }
1397:
1398 (
1399 { before(grammarAccess.getRealAccess().getEXPONENTIALTerminalRuleCall_1_0()); }
1400 RULE_EXPONENTIAL
1401 { after(grammarAccess.getRealAccess().getEXPONENTIALTerminalRuleCall_1_0()); }
1402 )
1403 |
1404 (
1405 { before(grammarAccess.getRealAccess().getGroup_1_1()); }
1406 (rule__Real__Group_1_1__0)
1407 { after(grammarAccess.getRealAccess().getGroup_1_1()); }
1408 )
1409;
1410finally {
1411 restoreStackSize(stackSize);
1412}
1413
1414rule__Real__Alternatives_1_1_2
1415 @init {
1416 int stackSize = keepStackSize();
1417 }
1418:
1419 (
1420 { before(grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1_2_0()); }
1421 RULE_INT
1422 { after(grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1_2_0()); }
1423 )
1424 |
1425 (
1426 { before(grammarAccess.getRealAccess().getEXPONENTIALTerminalRuleCall_1_1_2_1()); }
1427 RULE_EXPONENTIAL
1428 { after(grammarAccess.getRealAccess().getEXPONENTIALTerminalRuleCall_1_1_2_1()); }
1429 )
1430;
1431finally {
1432 restoreStackSize(stackSize);
1433}
1434
1435rule__LogicValue__Alternatives
1436 @init {
1437 int stackSize = keepStackSize();
1438 }
1439:
1440 (
1441 { before(grammarAccess.getLogicValueAccess().getTRUEEnumLiteralDeclaration_0()); }
1442 ('true')
1443 { after(grammarAccess.getLogicValueAccess().getTRUEEnumLiteralDeclaration_0()); }
1444 )
1445 |
1446 (
1447 { before(grammarAccess.getLogicValueAccess().getFALSEEnumLiteralDeclaration_1()); }
1448 ('false')
1449 { after(grammarAccess.getLogicValueAccess().getFALSEEnumLiteralDeclaration_1()); }
1450 )
1451 |
1452 (
1453 { before(grammarAccess.getLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_2()); }
1454 ('unknown')
1455 { after(grammarAccess.getLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_2()); }
1456 )
1457;
1458finally {
1459 restoreStackSize(stackSize);
1460}
1461
1462rule__ShortLogicValue__Alternatives
1463 @init {
1464 int stackSize = keepStackSize();
1465 }
1466:
1467 (
1468 { before(grammarAccess.getShortLogicValueAccess().getFALSEEnumLiteralDeclaration_0()); }
1469 ('!')
1470 { after(grammarAccess.getShortLogicValueAccess().getFALSEEnumLiteralDeclaration_0()); }
1471 )
1472 |
1473 (
1474 { before(grammarAccess.getShortLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_1()); }
1475 ('?')
1476 { after(grammarAccess.getShortLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_1()); }
1477 )
1478;
1479finally {
1480 restoreStackSize(stackSize);
1481}
1482
1483rule__Problem__Group__0
1484 @init {
1485 int stackSize = keepStackSize();
1486 }
1487:
1488 rule__Problem__Group__0__Impl
1489 rule__Problem__Group__1
1490;
1491finally {
1492 restoreStackSize(stackSize);
1493}
1494
1495rule__Problem__Group__0__Impl
1496 @init {
1497 int stackSize = keepStackSize();
1498 }
1499:
1500(
1501 { before(grammarAccess.getProblemAccess().getGroup_0()); }
1502 (rule__Problem__Group_0__0)?
1503 { after(grammarAccess.getProblemAccess().getGroup_0()); }
1504)
1505;
1506finally {
1507 restoreStackSize(stackSize);
1508}
1509
1510rule__Problem__Group__1
1511 @init {
1512 int stackSize = keepStackSize();
1513 }
1514:
1515 rule__Problem__Group__1__Impl
1516;
1517finally {
1518 restoreStackSize(stackSize);
1519}
1520
1521rule__Problem__Group__1__Impl
1522 @init {
1523 int stackSize = keepStackSize();
1524 }
1525:
1526(
1527 { before(grammarAccess.getProblemAccess().getStatementsAssignment_1()); }
1528 (rule__Problem__StatementsAssignment_1)*
1529 { after(grammarAccess.getProblemAccess().getStatementsAssignment_1()); }
1530)
1531;
1532finally {
1533 restoreStackSize(stackSize);
1534}
1535
1536
1537rule__Problem__Group_0__0
1538 @init {
1539 int stackSize = keepStackSize();
1540 }
1541:
1542 rule__Problem__Group_0__0__Impl
1543 rule__Problem__Group_0__1
1544;
1545finally {
1546 restoreStackSize(stackSize);
1547}
1548
1549rule__Problem__Group_0__0__Impl
1550 @init {
1551 int stackSize = keepStackSize();
1552 }
1553:
1554(
1555 { before(grammarAccess.getProblemAccess().getProblemKeyword_0_0()); }
1556 'problem'
1557 { after(grammarAccess.getProblemAccess().getProblemKeyword_0_0()); }
1558)
1559;
1560finally {
1561 restoreStackSize(stackSize);
1562}
1563
1564rule__Problem__Group_0__1
1565 @init {
1566 int stackSize = keepStackSize();
1567 }
1568:
1569 rule__Problem__Group_0__1__Impl
1570 rule__Problem__Group_0__2
1571;
1572finally {
1573 restoreStackSize(stackSize);
1574}
1575
1576rule__Problem__Group_0__1__Impl
1577 @init {
1578 int stackSize = keepStackSize();
1579 }
1580:
1581(
1582 { before(grammarAccess.getProblemAccess().getNameAssignment_0_1()); }
1583 (rule__Problem__NameAssignment_0_1)
1584 { after(grammarAccess.getProblemAccess().getNameAssignment_0_1()); }
1585)
1586;
1587finally {
1588 restoreStackSize(stackSize);
1589}
1590
1591rule__Problem__Group_0__2
1592 @init {
1593 int stackSize = keepStackSize();
1594 }
1595:
1596 rule__Problem__Group_0__2__Impl
1597;
1598finally {
1599 restoreStackSize(stackSize);
1600}
1601
1602rule__Problem__Group_0__2__Impl
1603 @init {
1604 int stackSize = keepStackSize();
1605 }
1606:
1607(
1608 { before(grammarAccess.getProblemAccess().getFullStopKeyword_0_2()); }
1609 '.'
1610 { after(grammarAccess.getProblemAccess().getFullStopKeyword_0_2()); }
1611)
1612;
1613finally {
1614 restoreStackSize(stackSize);
1615}
1616
1617
1618rule__ClassDeclaration__Group__0
1619 @init {
1620 int stackSize = keepStackSize();
1621 }
1622:
1623 rule__ClassDeclaration__Group__0__Impl
1624 rule__ClassDeclaration__Group__1
1625;
1626finally {
1627 restoreStackSize(stackSize);
1628}
1629
1630rule__ClassDeclaration__Group__0__Impl
1631 @init {
1632 int stackSize = keepStackSize();
1633 }
1634:
1635(
1636 { before(grammarAccess.getClassDeclarationAccess().getAbstractAssignment_0()); }
1637 (rule__ClassDeclaration__AbstractAssignment_0)?
1638 { after(grammarAccess.getClassDeclarationAccess().getAbstractAssignment_0()); }
1639)
1640;
1641finally {
1642 restoreStackSize(stackSize);
1643}
1644
1645rule__ClassDeclaration__Group__1
1646 @init {
1647 int stackSize = keepStackSize();
1648 }
1649:
1650 rule__ClassDeclaration__Group__1__Impl
1651 rule__ClassDeclaration__Group__2
1652;
1653finally {
1654 restoreStackSize(stackSize);
1655}
1656
1657rule__ClassDeclaration__Group__1__Impl
1658 @init {
1659 int stackSize = keepStackSize();
1660 }
1661:
1662(
1663 { before(grammarAccess.getClassDeclarationAccess().getClassKeyword_1()); }
1664 'class'
1665 { after(grammarAccess.getClassDeclarationAccess().getClassKeyword_1()); }
1666)
1667;
1668finally {
1669 restoreStackSize(stackSize);
1670}
1671
1672rule__ClassDeclaration__Group__2
1673 @init {
1674 int stackSize = keepStackSize();
1675 }
1676:
1677 rule__ClassDeclaration__Group__2__Impl
1678 rule__ClassDeclaration__Group__3
1679;
1680finally {
1681 restoreStackSize(stackSize);
1682}
1683
1684rule__ClassDeclaration__Group__2__Impl
1685 @init {
1686 int stackSize = keepStackSize();
1687 }
1688:
1689(
1690 { before(grammarAccess.getClassDeclarationAccess().getNameAssignment_2()); }
1691 (rule__ClassDeclaration__NameAssignment_2)
1692 { after(grammarAccess.getClassDeclarationAccess().getNameAssignment_2()); }
1693)
1694;
1695finally {
1696 restoreStackSize(stackSize);
1697}
1698
1699rule__ClassDeclaration__Group__3
1700 @init {
1701 int stackSize = keepStackSize();
1702 }
1703:
1704 rule__ClassDeclaration__Group__3__Impl
1705 rule__ClassDeclaration__Group__4
1706;
1707finally {
1708 restoreStackSize(stackSize);
1709}
1710
1711rule__ClassDeclaration__Group__3__Impl
1712 @init {
1713 int stackSize = keepStackSize();
1714 }
1715:
1716(
1717 { before(grammarAccess.getClassDeclarationAccess().getGroup_3()); }
1718 (rule__ClassDeclaration__Group_3__0)?
1719 { after(grammarAccess.getClassDeclarationAccess().getGroup_3()); }
1720)
1721;
1722finally {
1723 restoreStackSize(stackSize);
1724}
1725
1726rule__ClassDeclaration__Group__4
1727 @init {
1728 int stackSize = keepStackSize();
1729 }
1730:
1731 rule__ClassDeclaration__Group__4__Impl
1732;
1733finally {
1734 restoreStackSize(stackSize);
1735}
1736
1737rule__ClassDeclaration__Group__4__Impl
1738 @init {
1739 int stackSize = keepStackSize();
1740 }
1741:
1742(
1743 { before(grammarAccess.getClassDeclarationAccess().getAlternatives_4()); }
1744 (rule__ClassDeclaration__Alternatives_4)
1745 { after(grammarAccess.getClassDeclarationAccess().getAlternatives_4()); }
1746)
1747;
1748finally {
1749 restoreStackSize(stackSize);
1750}
1751
1752
1753rule__ClassDeclaration__Group_3__0
1754 @init {
1755 int stackSize = keepStackSize();
1756 }
1757:
1758 rule__ClassDeclaration__Group_3__0__Impl
1759 rule__ClassDeclaration__Group_3__1
1760;
1761finally {
1762 restoreStackSize(stackSize);
1763}
1764
1765rule__ClassDeclaration__Group_3__0__Impl
1766 @init {
1767 int stackSize = keepStackSize();
1768 }
1769:
1770(
1771 { before(grammarAccess.getClassDeclarationAccess().getExtendsKeyword_3_0()); }
1772 'extends'
1773 { after(grammarAccess.getClassDeclarationAccess().getExtendsKeyword_3_0()); }
1774)
1775;
1776finally {
1777 restoreStackSize(stackSize);
1778}
1779
1780rule__ClassDeclaration__Group_3__1
1781 @init {
1782 int stackSize = keepStackSize();
1783 }
1784:
1785 rule__ClassDeclaration__Group_3__1__Impl
1786 rule__ClassDeclaration__Group_3__2
1787;
1788finally {
1789 restoreStackSize(stackSize);
1790}
1791
1792rule__ClassDeclaration__Group_3__1__Impl
1793 @init {
1794 int stackSize = keepStackSize();
1795 }
1796:
1797(
1798 { before(grammarAccess.getClassDeclarationAccess().getSuperTypesAssignment_3_1()); }
1799 (rule__ClassDeclaration__SuperTypesAssignment_3_1)
1800 { after(grammarAccess.getClassDeclarationAccess().getSuperTypesAssignment_3_1()); }
1801)
1802;
1803finally {
1804 restoreStackSize(stackSize);
1805}
1806
1807rule__ClassDeclaration__Group_3__2
1808 @init {
1809 int stackSize = keepStackSize();
1810 }
1811:
1812 rule__ClassDeclaration__Group_3__2__Impl
1813;
1814finally {
1815 restoreStackSize(stackSize);
1816}
1817
1818rule__ClassDeclaration__Group_3__2__Impl
1819 @init {
1820 int stackSize = keepStackSize();
1821 }
1822:
1823(
1824 { before(grammarAccess.getClassDeclarationAccess().getGroup_3_2()); }
1825 (rule__ClassDeclaration__Group_3_2__0)*
1826 { after(grammarAccess.getClassDeclarationAccess().getGroup_3_2()); }
1827)
1828;
1829finally {
1830 restoreStackSize(stackSize);
1831}
1832
1833
1834rule__ClassDeclaration__Group_3_2__0
1835 @init {
1836 int stackSize = keepStackSize();
1837 }
1838:
1839 rule__ClassDeclaration__Group_3_2__0__Impl
1840 rule__ClassDeclaration__Group_3_2__1
1841;
1842finally {
1843 restoreStackSize(stackSize);
1844}
1845
1846rule__ClassDeclaration__Group_3_2__0__Impl
1847 @init {
1848 int stackSize = keepStackSize();
1849 }
1850:
1851(
1852 { before(grammarAccess.getClassDeclarationAccess().getCommaKeyword_3_2_0()); }
1853 ','
1854 { after(grammarAccess.getClassDeclarationAccess().getCommaKeyword_3_2_0()); }
1855)
1856;
1857finally {
1858 restoreStackSize(stackSize);
1859}
1860
1861rule__ClassDeclaration__Group_3_2__1
1862 @init {
1863 int stackSize = keepStackSize();
1864 }
1865:
1866 rule__ClassDeclaration__Group_3_2__1__Impl
1867;
1868finally {
1869 restoreStackSize(stackSize);
1870}
1871
1872rule__ClassDeclaration__Group_3_2__1__Impl
1873 @init {
1874 int stackSize = keepStackSize();
1875 }
1876:
1877(
1878 { before(grammarAccess.getClassDeclarationAccess().getSuperTypesAssignment_3_2_1()); }
1879 (rule__ClassDeclaration__SuperTypesAssignment_3_2_1)
1880 { after(grammarAccess.getClassDeclarationAccess().getSuperTypesAssignment_3_2_1()); }
1881)
1882;
1883finally {
1884 restoreStackSize(stackSize);
1885}
1886
1887
1888rule__ClassDeclaration__Group_4_0__0
1889 @init {
1890 int stackSize = keepStackSize();
1891 }
1892:
1893 rule__ClassDeclaration__Group_4_0__0__Impl
1894 rule__ClassDeclaration__Group_4_0__1
1895;
1896finally {
1897 restoreStackSize(stackSize);
1898}
1899
1900rule__ClassDeclaration__Group_4_0__0__Impl
1901 @init {
1902 int stackSize = keepStackSize();
1903 }
1904:
1905(
1906 { before(grammarAccess.getClassDeclarationAccess().getLeftCurlyBracketKeyword_4_0_0()); }
1907 '{'
1908 { after(grammarAccess.getClassDeclarationAccess().getLeftCurlyBracketKeyword_4_0_0()); }
1909)
1910;
1911finally {
1912 restoreStackSize(stackSize);
1913}
1914
1915rule__ClassDeclaration__Group_4_0__1
1916 @init {
1917 int stackSize = keepStackSize();
1918 }
1919:
1920 rule__ClassDeclaration__Group_4_0__1__Impl
1921 rule__ClassDeclaration__Group_4_0__2
1922;
1923finally {
1924 restoreStackSize(stackSize);
1925}
1926
1927rule__ClassDeclaration__Group_4_0__1__Impl
1928 @init {
1929 int stackSize = keepStackSize();
1930 }
1931:
1932(
1933 { before(grammarAccess.getClassDeclarationAccess().getGroup_4_0_1()); }
1934 (rule__ClassDeclaration__Group_4_0_1__0)*
1935 { after(grammarAccess.getClassDeclarationAccess().getGroup_4_0_1()); }
1936)
1937;
1938finally {
1939 restoreStackSize(stackSize);
1940}
1941
1942rule__ClassDeclaration__Group_4_0__2
1943 @init {
1944 int stackSize = keepStackSize();
1945 }
1946:
1947 rule__ClassDeclaration__Group_4_0__2__Impl
1948;
1949finally {
1950 restoreStackSize(stackSize);
1951}
1952
1953rule__ClassDeclaration__Group_4_0__2__Impl
1954 @init {
1955 int stackSize = keepStackSize();
1956 }
1957:
1958(
1959 { before(grammarAccess.getClassDeclarationAccess().getRightCurlyBracketKeyword_4_0_2()); }
1960 '}'
1961 { after(grammarAccess.getClassDeclarationAccess().getRightCurlyBracketKeyword_4_0_2()); }
1962)
1963;
1964finally {
1965 restoreStackSize(stackSize);
1966}
1967
1968
1969rule__ClassDeclaration__Group_4_0_1__0
1970 @init {
1971 int stackSize = keepStackSize();
1972 }
1973:
1974 rule__ClassDeclaration__Group_4_0_1__0__Impl
1975 rule__ClassDeclaration__Group_4_0_1__1
1976;
1977finally {
1978 restoreStackSize(stackSize);
1979}
1980
1981rule__ClassDeclaration__Group_4_0_1__0__Impl
1982 @init {
1983 int stackSize = keepStackSize();
1984 }
1985:
1986(
1987 { before(grammarAccess.getClassDeclarationAccess().getReferenceDeclarationsAssignment_4_0_1_0()); }
1988 (rule__ClassDeclaration__ReferenceDeclarationsAssignment_4_0_1_0)
1989 { after(grammarAccess.getClassDeclarationAccess().getReferenceDeclarationsAssignment_4_0_1_0()); }
1990)
1991;
1992finally {
1993 restoreStackSize(stackSize);
1994}
1995
1996rule__ClassDeclaration__Group_4_0_1__1
1997 @init {
1998 int stackSize = keepStackSize();
1999 }
2000:
2001 rule__ClassDeclaration__Group_4_0_1__1__Impl
2002;
2003finally {
2004 restoreStackSize(stackSize);
2005}
2006
2007rule__ClassDeclaration__Group_4_0_1__1__Impl
2008 @init {
2009 int stackSize = keepStackSize();
2010 }
2011:
2012(
2013 { before(grammarAccess.getClassDeclarationAccess().getSemicolonKeyword_4_0_1_1()); }
2014 (';')?
2015 { after(grammarAccess.getClassDeclarationAccess().getSemicolonKeyword_4_0_1_1()); }
2016)
2017;
2018finally {
2019 restoreStackSize(stackSize);
2020}
2021
2022
2023rule__EnumDeclaration__Group__0
2024 @init {
2025 int stackSize = keepStackSize();
2026 }
2027:
2028 rule__EnumDeclaration__Group__0__Impl
2029 rule__EnumDeclaration__Group__1
2030;
2031finally {
2032 restoreStackSize(stackSize);
2033}
2034
2035rule__EnumDeclaration__Group__0__Impl
2036 @init {
2037 int stackSize = keepStackSize();
2038 }
2039:
2040(
2041 { before(grammarAccess.getEnumDeclarationAccess().getEnumKeyword_0()); }
2042 'enum'
2043 { after(grammarAccess.getEnumDeclarationAccess().getEnumKeyword_0()); }
2044)
2045;
2046finally {
2047 restoreStackSize(stackSize);
2048}
2049
2050rule__EnumDeclaration__Group__1
2051 @init {
2052 int stackSize = keepStackSize();
2053 }
2054:
2055 rule__EnumDeclaration__Group__1__Impl
2056 rule__EnumDeclaration__Group__2
2057;
2058finally {
2059 restoreStackSize(stackSize);
2060}
2061
2062rule__EnumDeclaration__Group__1__Impl
2063 @init {
2064 int stackSize = keepStackSize();
2065 }
2066:
2067(
2068 { before(grammarAccess.getEnumDeclarationAccess().getNameAssignment_1()); }
2069 (rule__EnumDeclaration__NameAssignment_1)
2070 { after(grammarAccess.getEnumDeclarationAccess().getNameAssignment_1()); }
2071)
2072;
2073finally {
2074 restoreStackSize(stackSize);
2075}
2076
2077rule__EnumDeclaration__Group__2
2078 @init {
2079 int stackSize = keepStackSize();
2080 }
2081:
2082 rule__EnumDeclaration__Group__2__Impl
2083;
2084finally {
2085 restoreStackSize(stackSize);
2086}
2087
2088rule__EnumDeclaration__Group__2__Impl
2089 @init {
2090 int stackSize = keepStackSize();
2091 }
2092:
2093(
2094 { before(grammarAccess.getEnumDeclarationAccess().getAlternatives_2()); }
2095 (rule__EnumDeclaration__Alternatives_2)
2096 { after(grammarAccess.getEnumDeclarationAccess().getAlternatives_2()); }
2097)
2098;
2099finally {
2100 restoreStackSize(stackSize);
2101}
2102
2103
2104rule__EnumDeclaration__Group_2_0__0
2105 @init {
2106 int stackSize = keepStackSize();
2107 }
2108:
2109 rule__EnumDeclaration__Group_2_0__0__Impl
2110 rule__EnumDeclaration__Group_2_0__1
2111;
2112finally {
2113 restoreStackSize(stackSize);
2114}
2115
2116rule__EnumDeclaration__Group_2_0__0__Impl
2117 @init {
2118 int stackSize = keepStackSize();
2119 }
2120:
2121(
2122 { before(grammarAccess.getEnumDeclarationAccess().getLeftCurlyBracketKeyword_2_0_0()); }
2123 '{'
2124 { after(grammarAccess.getEnumDeclarationAccess().getLeftCurlyBracketKeyword_2_0_0()); }
2125)
2126;
2127finally {
2128 restoreStackSize(stackSize);
2129}
2130
2131rule__EnumDeclaration__Group_2_0__1
2132 @init {
2133 int stackSize = keepStackSize();
2134 }
2135:
2136 rule__EnumDeclaration__Group_2_0__1__Impl
2137 rule__EnumDeclaration__Group_2_0__2
2138;
2139finally {
2140 restoreStackSize(stackSize);
2141}
2142
2143rule__EnumDeclaration__Group_2_0__1__Impl
2144 @init {
2145 int stackSize = keepStackSize();
2146 }
2147:
2148(
2149 { before(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1()); }
2150 (rule__EnumDeclaration__Group_2_0_1__0)?
2151 { after(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1()); }
2152)
2153;
2154finally {
2155 restoreStackSize(stackSize);
2156}
2157
2158rule__EnumDeclaration__Group_2_0__2
2159 @init {
2160 int stackSize = keepStackSize();
2161 }
2162:
2163 rule__EnumDeclaration__Group_2_0__2__Impl
2164;
2165finally {
2166 restoreStackSize(stackSize);
2167}
2168
2169rule__EnumDeclaration__Group_2_0__2__Impl
2170 @init {
2171 int stackSize = keepStackSize();
2172 }
2173:
2174(
2175 { before(grammarAccess.getEnumDeclarationAccess().getRightCurlyBracketKeyword_2_0_2()); }
2176 '}'
2177 { after(grammarAccess.getEnumDeclarationAccess().getRightCurlyBracketKeyword_2_0_2()); }
2178)
2179;
2180finally {
2181 restoreStackSize(stackSize);
2182}
2183
2184
2185rule__EnumDeclaration__Group_2_0_1__0
2186 @init {
2187 int stackSize = keepStackSize();
2188 }
2189:
2190 rule__EnumDeclaration__Group_2_0_1__0__Impl
2191 rule__EnumDeclaration__Group_2_0_1__1
2192;
2193finally {
2194 restoreStackSize(stackSize);
2195}
2196
2197rule__EnumDeclaration__Group_2_0_1__0__Impl
2198 @init {
2199 int stackSize = keepStackSize();
2200 }
2201:
2202(
2203 { before(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_0()); }
2204 (rule__EnumDeclaration__LiteralsAssignment_2_0_1_0)
2205 { after(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_0()); }
2206)
2207;
2208finally {
2209 restoreStackSize(stackSize);
2210}
2211
2212rule__EnumDeclaration__Group_2_0_1__1
2213 @init {
2214 int stackSize = keepStackSize();
2215 }
2216:
2217 rule__EnumDeclaration__Group_2_0_1__1__Impl
2218 rule__EnumDeclaration__Group_2_0_1__2
2219;
2220finally {
2221 restoreStackSize(stackSize);
2222}
2223
2224rule__EnumDeclaration__Group_2_0_1__1__Impl
2225 @init {
2226 int stackSize = keepStackSize();
2227 }
2228:
2229(
2230 { before(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1_1()); }
2231 (rule__EnumDeclaration__Group_2_0_1_1__0)*
2232 { after(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1_1()); }
2233)
2234;
2235finally {
2236 restoreStackSize(stackSize);
2237}
2238
2239rule__EnumDeclaration__Group_2_0_1__2
2240 @init {
2241 int stackSize = keepStackSize();
2242 }
2243:
2244 rule__EnumDeclaration__Group_2_0_1__2__Impl
2245;
2246finally {
2247 restoreStackSize(stackSize);
2248}
2249
2250rule__EnumDeclaration__Group_2_0_1__2__Impl
2251 @init {
2252 int stackSize = keepStackSize();
2253 }
2254:
2255(
2256 { before(grammarAccess.getEnumDeclarationAccess().getAlternatives_2_0_1_2()); }
2257 (rule__EnumDeclaration__Alternatives_2_0_1_2)?
2258 { after(grammarAccess.getEnumDeclarationAccess().getAlternatives_2_0_1_2()); }
2259)
2260;
2261finally {
2262 restoreStackSize(stackSize);
2263}
2264
2265
2266rule__EnumDeclaration__Group_2_0_1_1__0
2267 @init {
2268 int stackSize = keepStackSize();
2269 }
2270:
2271 rule__EnumDeclaration__Group_2_0_1_1__0__Impl
2272 rule__EnumDeclaration__Group_2_0_1_1__1
2273;
2274finally {
2275 restoreStackSize(stackSize);
2276}
2277
2278rule__EnumDeclaration__Group_2_0_1_1__0__Impl
2279 @init {
2280 int stackSize = keepStackSize();
2281 }
2282:
2283(
2284 { before(grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_1_0()); }
2285 ','
2286 { after(grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_1_0()); }
2287)
2288;
2289finally {
2290 restoreStackSize(stackSize);
2291}
2292
2293rule__EnumDeclaration__Group_2_0_1_1__1
2294 @init {
2295 int stackSize = keepStackSize();
2296 }
2297:
2298 rule__EnumDeclaration__Group_2_0_1_1__1__Impl
2299;
2300finally {
2301 restoreStackSize(stackSize);
2302}
2303
2304rule__EnumDeclaration__Group_2_0_1_1__1__Impl
2305 @init {
2306 int stackSize = keepStackSize();
2307 }
2308:
2309(
2310 { before(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_1_1()); }
2311 (rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1)
2312 { after(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_1_1()); }
2313)
2314;
2315finally {
2316 restoreStackSize(stackSize);
2317}
2318
2319
2320rule__ReferenceDeclaration__Group__0
2321 @init {
2322 int stackSize = keepStackSize();
2323 }
2324:
2325 rule__ReferenceDeclaration__Group__0__Impl
2326 rule__ReferenceDeclaration__Group__1
2327;
2328finally {
2329 restoreStackSize(stackSize);
2330}
2331
2332rule__ReferenceDeclaration__Group__0__Impl
2333 @init {
2334 int stackSize = keepStackSize();
2335 }
2336:
2337(
2338 { before(grammarAccess.getReferenceDeclarationAccess().getAlternatives_0()); }
2339 (rule__ReferenceDeclaration__Alternatives_0)?
2340 { after(grammarAccess.getReferenceDeclarationAccess().getAlternatives_0()); }
2341)
2342;
2343finally {
2344 restoreStackSize(stackSize);
2345}
2346
2347rule__ReferenceDeclaration__Group__1
2348 @init {
2349 int stackSize = keepStackSize();
2350 }
2351:
2352 rule__ReferenceDeclaration__Group__1__Impl
2353 rule__ReferenceDeclaration__Group__2
2354;
2355finally {
2356 restoreStackSize(stackSize);
2357}
2358
2359rule__ReferenceDeclaration__Group__1__Impl
2360 @init {
2361 int stackSize = keepStackSize();
2362 }
2363:
2364(
2365 { before(grammarAccess.getReferenceDeclarationAccess().getReferenceTypeAssignment_1()); }
2366 (rule__ReferenceDeclaration__ReferenceTypeAssignment_1)
2367 { after(grammarAccess.getReferenceDeclarationAccess().getReferenceTypeAssignment_1()); }
2368)
2369;
2370finally {
2371 restoreStackSize(stackSize);
2372}
2373
2374rule__ReferenceDeclaration__Group__2
2375 @init {
2376 int stackSize = keepStackSize();
2377 }
2378:
2379 rule__ReferenceDeclaration__Group__2__Impl
2380 rule__ReferenceDeclaration__Group__3
2381;
2382finally {
2383 restoreStackSize(stackSize);
2384}
2385
2386rule__ReferenceDeclaration__Group__2__Impl
2387 @init {
2388 int stackSize = keepStackSize();
2389 }
2390:
2391(
2392 { before(grammarAccess.getReferenceDeclarationAccess().getGroup_2()); }
2393 (rule__ReferenceDeclaration__Group_2__0)?
2394 { after(grammarAccess.getReferenceDeclarationAccess().getGroup_2()); }
2395)
2396;
2397finally {
2398 restoreStackSize(stackSize);
2399}
2400
2401rule__ReferenceDeclaration__Group__3
2402 @init {
2403 int stackSize = keepStackSize();
2404 }
2405:
2406 rule__ReferenceDeclaration__Group__3__Impl
2407 rule__ReferenceDeclaration__Group__4
2408;
2409finally {
2410 restoreStackSize(stackSize);
2411}
2412
2413rule__ReferenceDeclaration__Group__3__Impl
2414 @init {
2415 int stackSize = keepStackSize();
2416 }
2417:
2418(
2419 { before(grammarAccess.getReferenceDeclarationAccess().getNameAssignment_3()); }
2420 (rule__ReferenceDeclaration__NameAssignment_3)
2421 { after(grammarAccess.getReferenceDeclarationAccess().getNameAssignment_3()); }
2422)
2423;
2424finally {
2425 restoreStackSize(stackSize);
2426}
2427
2428rule__ReferenceDeclaration__Group__4
2429 @init {
2430 int stackSize = keepStackSize();
2431 }
2432:
2433 rule__ReferenceDeclaration__Group__4__Impl
2434;
2435finally {
2436 restoreStackSize(stackSize);
2437}
2438
2439rule__ReferenceDeclaration__Group__4__Impl
2440 @init {
2441 int stackSize = keepStackSize();
2442 }
2443:
2444(
2445 { before(grammarAccess.getReferenceDeclarationAccess().getGroup_4()); }
2446 (rule__ReferenceDeclaration__Group_4__0)?
2447 { after(grammarAccess.getReferenceDeclarationAccess().getGroup_4()); }
2448)
2449;
2450finally {
2451 restoreStackSize(stackSize);
2452}
2453
2454
2455rule__ReferenceDeclaration__Group_2__0
2456 @init {
2457 int stackSize = keepStackSize();
2458 }
2459:
2460 rule__ReferenceDeclaration__Group_2__0__Impl
2461 rule__ReferenceDeclaration__Group_2__1
2462;
2463finally {
2464 restoreStackSize(stackSize);
2465}
2466
2467rule__ReferenceDeclaration__Group_2__0__Impl
2468 @init {
2469 int stackSize = keepStackSize();
2470 }
2471:
2472(
2473 { before(grammarAccess.getReferenceDeclarationAccess().getLeftSquareBracketKeyword_2_0()); }
2474 '['
2475 { after(grammarAccess.getReferenceDeclarationAccess().getLeftSquareBracketKeyword_2_0()); }
2476)
2477;
2478finally {
2479 restoreStackSize(stackSize);
2480}
2481
2482rule__ReferenceDeclaration__Group_2__1
2483 @init {
2484 int stackSize = keepStackSize();
2485 }
2486:
2487 rule__ReferenceDeclaration__Group_2__1__Impl
2488 rule__ReferenceDeclaration__Group_2__2
2489;
2490finally {
2491 restoreStackSize(stackSize);
2492}
2493
2494rule__ReferenceDeclaration__Group_2__1__Impl
2495 @init {
2496 int stackSize = keepStackSize();
2497 }
2498:
2499(
2500 { before(grammarAccess.getReferenceDeclarationAccess().getMultiplicityAssignment_2_1()); }
2501 (rule__ReferenceDeclaration__MultiplicityAssignment_2_1)
2502 { after(grammarAccess.getReferenceDeclarationAccess().getMultiplicityAssignment_2_1()); }
2503)
2504;
2505finally {
2506 restoreStackSize(stackSize);
2507}
2508
2509rule__ReferenceDeclaration__Group_2__2
2510 @init {
2511 int stackSize = keepStackSize();
2512 }
2513:
2514 rule__ReferenceDeclaration__Group_2__2__Impl
2515;
2516finally {
2517 restoreStackSize(stackSize);
2518}
2519
2520rule__ReferenceDeclaration__Group_2__2__Impl
2521 @init {
2522 int stackSize = keepStackSize();
2523 }
2524:
2525(
2526 { before(grammarAccess.getReferenceDeclarationAccess().getRightSquareBracketKeyword_2_2()); }
2527 ']'
2528 { after(grammarAccess.getReferenceDeclarationAccess().getRightSquareBracketKeyword_2_2()); }
2529)
2530;
2531finally {
2532 restoreStackSize(stackSize);
2533}
2534
2535
2536rule__ReferenceDeclaration__Group_4__0
2537 @init {
2538 int stackSize = keepStackSize();
2539 }
2540:
2541 rule__ReferenceDeclaration__Group_4__0__Impl
2542 rule__ReferenceDeclaration__Group_4__1
2543;
2544finally {
2545 restoreStackSize(stackSize);
2546}
2547
2548rule__ReferenceDeclaration__Group_4__0__Impl
2549 @init {
2550 int stackSize = keepStackSize();
2551 }
2552:
2553(
2554 { before(grammarAccess.getReferenceDeclarationAccess().getOppositeKeyword_4_0()); }
2555 'opposite'
2556 { after(grammarAccess.getReferenceDeclarationAccess().getOppositeKeyword_4_0()); }
2557)
2558;
2559finally {
2560 restoreStackSize(stackSize);
2561}
2562
2563rule__ReferenceDeclaration__Group_4__1
2564 @init {
2565 int stackSize = keepStackSize();
2566 }
2567:
2568 rule__ReferenceDeclaration__Group_4__1__Impl
2569;
2570finally {
2571 restoreStackSize(stackSize);
2572}
2573
2574rule__ReferenceDeclaration__Group_4__1__Impl
2575 @init {
2576 int stackSize = keepStackSize();
2577 }
2578:
2579(
2580 { before(grammarAccess.getReferenceDeclarationAccess().getOppositeAssignment_4_1()); }
2581 (rule__ReferenceDeclaration__OppositeAssignment_4_1)
2582 { after(grammarAccess.getReferenceDeclarationAccess().getOppositeAssignment_4_1()); }
2583)
2584;
2585finally {
2586 restoreStackSize(stackSize);
2587}
2588
2589
2590rule__PredicateDefinition__Group__0
2591 @init {
2592 int stackSize = keepStackSize();
2593 }
2594:
2595 rule__PredicateDefinition__Group__0__Impl
2596 rule__PredicateDefinition__Group__1
2597;
2598finally {
2599 restoreStackSize(stackSize);
2600}
2601
2602rule__PredicateDefinition__Group__0__Impl
2603 @init {
2604 int stackSize = keepStackSize();
2605 }
2606:
2607(
2608 { before(grammarAccess.getPredicateDefinitionAccess().getAlternatives_0()); }
2609 (rule__PredicateDefinition__Alternatives_0)
2610 { after(grammarAccess.getPredicateDefinitionAccess().getAlternatives_0()); }
2611)
2612;
2613finally {
2614 restoreStackSize(stackSize);
2615}
2616
2617rule__PredicateDefinition__Group__1
2618 @init {
2619 int stackSize = keepStackSize();
2620 }
2621:
2622 rule__PredicateDefinition__Group__1__Impl
2623 rule__PredicateDefinition__Group__2
2624;
2625finally {
2626 restoreStackSize(stackSize);
2627}
2628
2629rule__PredicateDefinition__Group__1__Impl
2630 @init {
2631 int stackSize = keepStackSize();
2632 }
2633:
2634(
2635 { before(grammarAccess.getPredicateDefinitionAccess().getNameAssignment_1()); }
2636 (rule__PredicateDefinition__NameAssignment_1)
2637 { after(grammarAccess.getPredicateDefinitionAccess().getNameAssignment_1()); }
2638)
2639;
2640finally {
2641 restoreStackSize(stackSize);
2642}
2643
2644rule__PredicateDefinition__Group__2
2645 @init {
2646 int stackSize = keepStackSize();
2647 }
2648:
2649 rule__PredicateDefinition__Group__2__Impl
2650 rule__PredicateDefinition__Group__3
2651;
2652finally {
2653 restoreStackSize(stackSize);
2654}
2655
2656rule__PredicateDefinition__Group__2__Impl
2657 @init {
2658 int stackSize = keepStackSize();
2659 }
2660:
2661(
2662 { before(grammarAccess.getPredicateDefinitionAccess().getLeftParenthesisKeyword_2()); }
2663 '('
2664 { after(grammarAccess.getPredicateDefinitionAccess().getLeftParenthesisKeyword_2()); }
2665)
2666;
2667finally {
2668 restoreStackSize(stackSize);
2669}
2670
2671rule__PredicateDefinition__Group__3
2672 @init {
2673 int stackSize = keepStackSize();
2674 }
2675:
2676 rule__PredicateDefinition__Group__3__Impl
2677 rule__PredicateDefinition__Group__4
2678;
2679finally {
2680 restoreStackSize(stackSize);
2681}
2682
2683rule__PredicateDefinition__Group__3__Impl
2684 @init {
2685 int stackSize = keepStackSize();
2686 }
2687:
2688(
2689 { before(grammarAccess.getPredicateDefinitionAccess().getGroup_3()); }
2690 (rule__PredicateDefinition__Group_3__0)?
2691 { after(grammarAccess.getPredicateDefinitionAccess().getGroup_3()); }
2692)
2693;
2694finally {
2695 restoreStackSize(stackSize);
2696}
2697
2698rule__PredicateDefinition__Group__4
2699 @init {
2700 int stackSize = keepStackSize();
2701 }
2702:
2703 rule__PredicateDefinition__Group__4__Impl
2704 rule__PredicateDefinition__Group__5
2705;
2706finally {
2707 restoreStackSize(stackSize);
2708}
2709
2710rule__PredicateDefinition__Group__4__Impl
2711 @init {
2712 int stackSize = keepStackSize();
2713 }
2714:
2715(
2716 { before(grammarAccess.getPredicateDefinitionAccess().getRightParenthesisKeyword_4()); }
2717 ')'
2718 { after(grammarAccess.getPredicateDefinitionAccess().getRightParenthesisKeyword_4()); }
2719)
2720;
2721finally {
2722 restoreStackSize(stackSize);
2723}
2724
2725rule__PredicateDefinition__Group__5
2726 @init {
2727 int stackSize = keepStackSize();
2728 }
2729:
2730 rule__PredicateDefinition__Group__5__Impl
2731 rule__PredicateDefinition__Group__6
2732;
2733finally {
2734 restoreStackSize(stackSize);
2735}
2736
2737rule__PredicateDefinition__Group__5__Impl
2738 @init {
2739 int stackSize = keepStackSize();
2740 }
2741:
2742(
2743 { before(grammarAccess.getPredicateDefinitionAccess().getGroup_5()); }
2744 (rule__PredicateDefinition__Group_5__0)?
2745 { after(grammarAccess.getPredicateDefinitionAccess().getGroup_5()); }
2746)
2747;
2748finally {
2749 restoreStackSize(stackSize);
2750}
2751
2752rule__PredicateDefinition__Group__6
2753 @init {
2754 int stackSize = keepStackSize();
2755 }
2756:
2757 rule__PredicateDefinition__Group__6__Impl
2758;
2759finally {
2760 restoreStackSize(stackSize);
2761}
2762
2763rule__PredicateDefinition__Group__6__Impl
2764 @init {
2765 int stackSize = keepStackSize();
2766 }
2767:
2768(
2769 { before(grammarAccess.getPredicateDefinitionAccess().getFullStopKeyword_6()); }
2770 '.'
2771 { after(grammarAccess.getPredicateDefinitionAccess().getFullStopKeyword_6()); }
2772)
2773;
2774finally {
2775 restoreStackSize(stackSize);
2776}
2777
2778
2779rule__PredicateDefinition__Group_0_0__0
2780 @init {
2781 int stackSize = keepStackSize();
2782 }
2783:
2784 rule__PredicateDefinition__Group_0_0__0__Impl
2785 rule__PredicateDefinition__Group_0_0__1
2786;
2787finally {
2788 restoreStackSize(stackSize);
2789}
2790
2791rule__PredicateDefinition__Group_0_0__0__Impl
2792 @init {
2793 int stackSize = keepStackSize();
2794 }
2795:
2796(
2797 { before(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_0_0()); }
2798 (rule__PredicateDefinition__ErrorAssignment_0_0_0)
2799 { after(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_0_0()); }
2800)
2801;
2802finally {
2803 restoreStackSize(stackSize);
2804}
2805
2806rule__PredicateDefinition__Group_0_0__1
2807 @init {
2808 int stackSize = keepStackSize();
2809 }
2810:
2811 rule__PredicateDefinition__Group_0_0__1__Impl
2812;
2813finally {
2814 restoreStackSize(stackSize);
2815}
2816
2817rule__PredicateDefinition__Group_0_0__1__Impl
2818 @init {
2819 int stackSize = keepStackSize();
2820 }
2821:
2822(
2823 { before(grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_0_1()); }
2824 ('pred')?
2825 { after(grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_0_1()); }
2826)
2827;
2828finally {
2829 restoreStackSize(stackSize);
2830}
2831
2832
2833rule__PredicateDefinition__Group_3__0
2834 @init {
2835 int stackSize = keepStackSize();
2836 }
2837:
2838 rule__PredicateDefinition__Group_3__0__Impl
2839 rule__PredicateDefinition__Group_3__1
2840;
2841finally {
2842 restoreStackSize(stackSize);
2843}
2844
2845rule__PredicateDefinition__Group_3__0__Impl
2846 @init {
2847 int stackSize = keepStackSize();
2848 }
2849:
2850(
2851 { before(grammarAccess.getPredicateDefinitionAccess().getParametersAssignment_3_0()); }
2852 (rule__PredicateDefinition__ParametersAssignment_3_0)
2853 { after(grammarAccess.getPredicateDefinitionAccess().getParametersAssignment_3_0()); }
2854)
2855;
2856finally {
2857 restoreStackSize(stackSize);
2858}
2859
2860rule__PredicateDefinition__Group_3__1
2861 @init {
2862 int stackSize = keepStackSize();
2863 }
2864:
2865 rule__PredicateDefinition__Group_3__1__Impl
2866;
2867finally {
2868 restoreStackSize(stackSize);
2869}
2870
2871rule__PredicateDefinition__Group_3__1__Impl
2872 @init {
2873 int stackSize = keepStackSize();
2874 }
2875:
2876(
2877 { before(grammarAccess.getPredicateDefinitionAccess().getGroup_3_1()); }
2878 (rule__PredicateDefinition__Group_3_1__0)*
2879 { after(grammarAccess.getPredicateDefinitionAccess().getGroup_3_1()); }
2880)
2881;
2882finally {
2883 restoreStackSize(stackSize);
2884}
2885
2886
2887rule__PredicateDefinition__Group_3_1__0
2888 @init {
2889 int stackSize = keepStackSize();
2890 }
2891:
2892 rule__PredicateDefinition__Group_3_1__0__Impl
2893 rule__PredicateDefinition__Group_3_1__1
2894;
2895finally {
2896 restoreStackSize(stackSize);
2897}
2898
2899rule__PredicateDefinition__Group_3_1__0__Impl
2900 @init {
2901 int stackSize = keepStackSize();
2902 }
2903:
2904(
2905 { before(grammarAccess.getPredicateDefinitionAccess().getCommaKeyword_3_1_0()); }
2906 ','
2907 { after(grammarAccess.getPredicateDefinitionAccess().getCommaKeyword_3_1_0()); }
2908)
2909;
2910finally {
2911 restoreStackSize(stackSize);
2912}
2913
2914rule__PredicateDefinition__Group_3_1__1
2915 @init {
2916 int stackSize = keepStackSize();
2917 }
2918:
2919 rule__PredicateDefinition__Group_3_1__1__Impl
2920;
2921finally {
2922 restoreStackSize(stackSize);
2923}
2924
2925rule__PredicateDefinition__Group_3_1__1__Impl
2926 @init {
2927 int stackSize = keepStackSize();
2928 }
2929:
2930(
2931 { before(grammarAccess.getPredicateDefinitionAccess().getParametersAssignment_3_1_1()); }
2932 (rule__PredicateDefinition__ParametersAssignment_3_1_1)
2933 { after(grammarAccess.getPredicateDefinitionAccess().getParametersAssignment_3_1_1()); }
2934)
2935;
2936finally {
2937 restoreStackSize(stackSize);
2938}
2939
2940
2941rule__PredicateDefinition__Group_5__0
2942 @init {
2943 int stackSize = keepStackSize();
2944 }
2945:
2946 rule__PredicateDefinition__Group_5__0__Impl
2947 rule__PredicateDefinition__Group_5__1
2948;
2949finally {
2950 restoreStackSize(stackSize);
2951}
2952
2953rule__PredicateDefinition__Group_5__0__Impl
2954 @init {
2955 int stackSize = keepStackSize();
2956 }
2957:
2958(
2959 { before(grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_5_0()); }
2960 ':-'
2961 { after(grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_5_0()); }
2962)
2963;
2964finally {
2965 restoreStackSize(stackSize);
2966}
2967
2968rule__PredicateDefinition__Group_5__1
2969 @init {
2970 int stackSize = keepStackSize();
2971 }
2972:
2973 rule__PredicateDefinition__Group_5__1__Impl
2974 rule__PredicateDefinition__Group_5__2
2975;
2976finally {
2977 restoreStackSize(stackSize);
2978}
2979
2980rule__PredicateDefinition__Group_5__1__Impl
2981 @init {
2982 int stackSize = keepStackSize();
2983 }
2984:
2985(
2986 { before(grammarAccess.getPredicateDefinitionAccess().getBodiesAssignment_5_1()); }
2987 (rule__PredicateDefinition__BodiesAssignment_5_1)
2988 { after(grammarAccess.getPredicateDefinitionAccess().getBodiesAssignment_5_1()); }
2989)
2990;
2991finally {
2992 restoreStackSize(stackSize);
2993}
2994
2995rule__PredicateDefinition__Group_5__2
2996 @init {
2997 int stackSize = keepStackSize();
2998 }
2999:
3000 rule__PredicateDefinition__Group_5__2__Impl
3001;
3002finally {
3003 restoreStackSize(stackSize);
3004}
3005
3006rule__PredicateDefinition__Group_5__2__Impl
3007 @init {
3008 int stackSize = keepStackSize();
3009 }
3010:
3011(
3012 { before(grammarAccess.getPredicateDefinitionAccess().getGroup_5_2()); }
3013 (rule__PredicateDefinition__Group_5_2__0)*
3014 { after(grammarAccess.getPredicateDefinitionAccess().getGroup_5_2()); }
3015)
3016;
3017finally {
3018 restoreStackSize(stackSize);
3019}
3020
3021
3022rule__PredicateDefinition__Group_5_2__0
3023 @init {
3024 int stackSize = keepStackSize();
3025 }
3026:
3027 rule__PredicateDefinition__Group_5_2__0__Impl
3028 rule__PredicateDefinition__Group_5_2__1
3029;
3030finally {
3031 restoreStackSize(stackSize);
3032}
3033
3034rule__PredicateDefinition__Group_5_2__0__Impl
3035 @init {
3036 int stackSize = keepStackSize();
3037 }
3038:
3039(
3040 { before(grammarAccess.getPredicateDefinitionAccess().getSemicolonKeyword_5_2_0()); }
3041 ';'
3042 { after(grammarAccess.getPredicateDefinitionAccess().getSemicolonKeyword_5_2_0()); }
3043)
3044;
3045finally {
3046 restoreStackSize(stackSize);
3047}
3048
3049rule__PredicateDefinition__Group_5_2__1
3050 @init {
3051 int stackSize = keepStackSize();
3052 }
3053:
3054 rule__PredicateDefinition__Group_5_2__1__Impl
3055;
3056finally {
3057 restoreStackSize(stackSize);
3058}
3059
3060rule__PredicateDefinition__Group_5_2__1__Impl
3061 @init {
3062 int stackSize = keepStackSize();
3063 }
3064:
3065(
3066 { before(grammarAccess.getPredicateDefinitionAccess().getBodiesAssignment_5_2_1()); }
3067 (rule__PredicateDefinition__BodiesAssignment_5_2_1)
3068 { after(grammarAccess.getPredicateDefinitionAccess().getBodiesAssignment_5_2_1()); }
3069)
3070;
3071finally {
3072 restoreStackSize(stackSize);
3073}
3074
3075
3076rule__Parameter__Group__0
3077 @init {
3078 int stackSize = keepStackSize();
3079 }
3080:
3081 rule__Parameter__Group__0__Impl
3082 rule__Parameter__Group__1
3083;
3084finally {
3085 restoreStackSize(stackSize);
3086}
3087
3088rule__Parameter__Group__0__Impl
3089 @init {
3090 int stackSize = keepStackSize();
3091 }
3092:
3093(
3094 { before(grammarAccess.getParameterAccess().getParameterTypeAssignment_0()); }
3095 (rule__Parameter__ParameterTypeAssignment_0)?
3096 { after(grammarAccess.getParameterAccess().getParameterTypeAssignment_0()); }
3097)
3098;
3099finally {
3100 restoreStackSize(stackSize);
3101}
3102
3103rule__Parameter__Group__1
3104 @init {
3105 int stackSize = keepStackSize();
3106 }
3107:
3108 rule__Parameter__Group__1__Impl
3109;
3110finally {
3111 restoreStackSize(stackSize);
3112}
3113
3114rule__Parameter__Group__1__Impl
3115 @init {
3116 int stackSize = keepStackSize();
3117 }
3118:
3119(
3120 { before(grammarAccess.getParameterAccess().getNameAssignment_1()); }
3121 (rule__Parameter__NameAssignment_1)
3122 { after(grammarAccess.getParameterAccess().getNameAssignment_1()); }
3123)
3124;
3125finally {
3126 restoreStackSize(stackSize);
3127}
3128
3129
3130rule__Conjunction__Group__0
3131 @init {
3132 int stackSize = keepStackSize();
3133 }
3134:
3135 rule__Conjunction__Group__0__Impl
3136 rule__Conjunction__Group__1
3137;
3138finally {
3139 restoreStackSize(stackSize);
3140}
3141
3142rule__Conjunction__Group__0__Impl
3143 @init {
3144 int stackSize = keepStackSize();
3145 }
3146:
3147(
3148 { before(grammarAccess.getConjunctionAccess().getLiteralsAssignment_0()); }
3149 (rule__Conjunction__LiteralsAssignment_0)
3150 { after(grammarAccess.getConjunctionAccess().getLiteralsAssignment_0()); }
3151)
3152;
3153finally {
3154 restoreStackSize(stackSize);
3155}
3156
3157rule__Conjunction__Group__1
3158 @init {
3159 int stackSize = keepStackSize();
3160 }
3161:
3162 rule__Conjunction__Group__1__Impl
3163;
3164finally {
3165 restoreStackSize(stackSize);
3166}
3167
3168rule__Conjunction__Group__1__Impl
3169 @init {
3170 int stackSize = keepStackSize();
3171 }
3172:
3173(
3174 { before(grammarAccess.getConjunctionAccess().getGroup_1()); }
3175 (rule__Conjunction__Group_1__0)*
3176 { after(grammarAccess.getConjunctionAccess().getGroup_1()); }
3177)
3178;
3179finally {
3180 restoreStackSize(stackSize);
3181}
3182
3183
3184rule__Conjunction__Group_1__0
3185 @init {
3186 int stackSize = keepStackSize();
3187 }
3188:
3189 rule__Conjunction__Group_1__0__Impl
3190 rule__Conjunction__Group_1__1
3191;
3192finally {
3193 restoreStackSize(stackSize);
3194}
3195
3196rule__Conjunction__Group_1__0__Impl
3197 @init {
3198 int stackSize = keepStackSize();
3199 }
3200:
3201(
3202 { before(grammarAccess.getConjunctionAccess().getCommaKeyword_1_0()); }
3203 ','
3204 { after(grammarAccess.getConjunctionAccess().getCommaKeyword_1_0()); }
3205)
3206;
3207finally {
3208 restoreStackSize(stackSize);
3209}
3210
3211rule__Conjunction__Group_1__1
3212 @init {
3213 int stackSize = keepStackSize();
3214 }
3215:
3216 rule__Conjunction__Group_1__1__Impl
3217;
3218finally {
3219 restoreStackSize(stackSize);
3220}
3221
3222rule__Conjunction__Group_1__1__Impl
3223 @init {
3224 int stackSize = keepStackSize();
3225 }
3226:
3227(
3228 { before(grammarAccess.getConjunctionAccess().getLiteralsAssignment_1_1()); }
3229 (rule__Conjunction__LiteralsAssignment_1_1)
3230 { after(grammarAccess.getConjunctionAccess().getLiteralsAssignment_1_1()); }
3231)
3232;
3233finally {
3234 restoreStackSize(stackSize);
3235}
3236
3237
3238rule__NegativeLiteral__Group__0
3239 @init {
3240 int stackSize = keepStackSize();
3241 }
3242:
3243 rule__NegativeLiteral__Group__0__Impl
3244 rule__NegativeLiteral__Group__1
3245;
3246finally {
3247 restoreStackSize(stackSize);
3248}
3249
3250rule__NegativeLiteral__Group__0__Impl
3251 @init {
3252 int stackSize = keepStackSize();
3253 }
3254:
3255(
3256 { before(grammarAccess.getNegativeLiteralAccess().getExclamationMarkKeyword_0()); }
3257 '!'
3258 { after(grammarAccess.getNegativeLiteralAccess().getExclamationMarkKeyword_0()); }
3259)
3260;
3261finally {
3262 restoreStackSize(stackSize);
3263}
3264
3265rule__NegativeLiteral__Group__1
3266 @init {
3267 int stackSize = keepStackSize();
3268 }
3269:
3270 rule__NegativeLiteral__Group__1__Impl
3271;
3272finally {
3273 restoreStackSize(stackSize);
3274}
3275
3276rule__NegativeLiteral__Group__1__Impl
3277 @init {
3278 int stackSize = keepStackSize();
3279 }
3280:
3281(
3282 { before(grammarAccess.getNegativeLiteralAccess().getAtomAssignment_1()); }
3283 (rule__NegativeLiteral__AtomAssignment_1)
3284 { after(grammarAccess.getNegativeLiteralAccess().getAtomAssignment_1()); }
3285)
3286;
3287finally {
3288 restoreStackSize(stackSize);
3289}
3290
3291
3292rule__Atom__Group__0
3293 @init {
3294 int stackSize = keepStackSize();
3295 }
3296:
3297 rule__Atom__Group__0__Impl
3298 rule__Atom__Group__1
3299;
3300finally {
3301 restoreStackSize(stackSize);
3302}
3303
3304rule__Atom__Group__0__Impl
3305 @init {
3306 int stackSize = keepStackSize();
3307 }
3308:
3309(
3310 { before(grammarAccess.getAtomAccess().getRelationAssignment_0()); }
3311 (rule__Atom__RelationAssignment_0)
3312 { after(grammarAccess.getAtomAccess().getRelationAssignment_0()); }
3313)
3314;
3315finally {
3316 restoreStackSize(stackSize);
3317}
3318
3319rule__Atom__Group__1
3320 @init {
3321 int stackSize = keepStackSize();
3322 }
3323:
3324 rule__Atom__Group__1__Impl
3325 rule__Atom__Group__2
3326;
3327finally {
3328 restoreStackSize(stackSize);
3329}
3330
3331rule__Atom__Group__1__Impl
3332 @init {
3333 int stackSize = keepStackSize();
3334 }
3335:
3336(
3337 { before(grammarAccess.getAtomAccess().getTransitiveClosureAssignment_1()); }
3338 (rule__Atom__TransitiveClosureAssignment_1)?
3339 { after(grammarAccess.getAtomAccess().getTransitiveClosureAssignment_1()); }
3340)
3341;
3342finally {
3343 restoreStackSize(stackSize);
3344}
3345
3346rule__Atom__Group__2
3347 @init {
3348 int stackSize = keepStackSize();
3349 }
3350:
3351 rule__Atom__Group__2__Impl
3352 rule__Atom__Group__3
3353;
3354finally {
3355 restoreStackSize(stackSize);
3356}
3357
3358rule__Atom__Group__2__Impl
3359 @init {
3360 int stackSize = keepStackSize();
3361 }
3362:
3363(
3364 { before(grammarAccess.getAtomAccess().getLeftParenthesisKeyword_2()); }
3365 '('
3366 { after(grammarAccess.getAtomAccess().getLeftParenthesisKeyword_2()); }
3367)
3368;
3369finally {
3370 restoreStackSize(stackSize);
3371}
3372
3373rule__Atom__Group__3
3374 @init {
3375 int stackSize = keepStackSize();
3376 }
3377:
3378 rule__Atom__Group__3__Impl
3379 rule__Atom__Group__4
3380;
3381finally {
3382 restoreStackSize(stackSize);
3383}
3384
3385rule__Atom__Group__3__Impl
3386 @init {
3387 int stackSize = keepStackSize();
3388 }
3389:
3390(
3391 { before(grammarAccess.getAtomAccess().getGroup_3()); }
3392 (rule__Atom__Group_3__0)?
3393 { after(grammarAccess.getAtomAccess().getGroup_3()); }
3394)
3395;
3396finally {
3397 restoreStackSize(stackSize);
3398}
3399
3400rule__Atom__Group__4
3401 @init {
3402 int stackSize = keepStackSize();
3403 }
3404:
3405 rule__Atom__Group__4__Impl
3406;
3407finally {
3408 restoreStackSize(stackSize);
3409}
3410
3411rule__Atom__Group__4__Impl
3412 @init {
3413 int stackSize = keepStackSize();
3414 }
3415:
3416(
3417 { before(grammarAccess.getAtomAccess().getRightParenthesisKeyword_4()); }
3418 ')'
3419 { after(grammarAccess.getAtomAccess().getRightParenthesisKeyword_4()); }
3420)
3421;
3422finally {
3423 restoreStackSize(stackSize);
3424}
3425
3426
3427rule__Atom__Group_3__0
3428 @init {
3429 int stackSize = keepStackSize();
3430 }
3431:
3432 rule__Atom__Group_3__0__Impl
3433 rule__Atom__Group_3__1
3434;
3435finally {
3436 restoreStackSize(stackSize);
3437}
3438
3439rule__Atom__Group_3__0__Impl
3440 @init {
3441 int stackSize = keepStackSize();
3442 }
3443:
3444(
3445 { before(grammarAccess.getAtomAccess().getArgumentsAssignment_3_0()); }
3446 (rule__Atom__ArgumentsAssignment_3_0)
3447 { after(grammarAccess.getAtomAccess().getArgumentsAssignment_3_0()); }
3448)
3449;
3450finally {
3451 restoreStackSize(stackSize);
3452}
3453
3454rule__Atom__Group_3__1
3455 @init {
3456 int stackSize = keepStackSize();
3457 }
3458:
3459 rule__Atom__Group_3__1__Impl
3460;
3461finally {
3462 restoreStackSize(stackSize);
3463}
3464
3465rule__Atom__Group_3__1__Impl
3466 @init {
3467 int stackSize = keepStackSize();
3468 }
3469:
3470(
3471 { before(grammarAccess.getAtomAccess().getGroup_3_1()); }
3472 (rule__Atom__Group_3_1__0)*
3473 { after(grammarAccess.getAtomAccess().getGroup_3_1()); }
3474)
3475;
3476finally {
3477 restoreStackSize(stackSize);
3478}
3479
3480
3481rule__Atom__Group_3_1__0
3482 @init {
3483 int stackSize = keepStackSize();
3484 }
3485:
3486 rule__Atom__Group_3_1__0__Impl
3487 rule__Atom__Group_3_1__1
3488;
3489finally {
3490 restoreStackSize(stackSize);
3491}
3492
3493rule__Atom__Group_3_1__0__Impl
3494 @init {
3495 int stackSize = keepStackSize();
3496 }
3497:
3498(
3499 { before(grammarAccess.getAtomAccess().getCommaKeyword_3_1_0()); }
3500 ','
3501 { after(grammarAccess.getAtomAccess().getCommaKeyword_3_1_0()); }
3502)
3503;
3504finally {
3505 restoreStackSize(stackSize);
3506}
3507
3508rule__Atom__Group_3_1__1
3509 @init {
3510 int stackSize = keepStackSize();
3511 }
3512:
3513 rule__Atom__Group_3_1__1__Impl
3514;
3515finally {
3516 restoreStackSize(stackSize);
3517}
3518
3519rule__Atom__Group_3_1__1__Impl
3520 @init {
3521 int stackSize = keepStackSize();
3522 }
3523:
3524(
3525 { before(grammarAccess.getAtomAccess().getArgumentsAssignment_3_1_1()); }
3526 (rule__Atom__ArgumentsAssignment_3_1_1)
3527 { after(grammarAccess.getAtomAccess().getArgumentsAssignment_3_1_1()); }
3528)
3529;
3530finally {
3531 restoreStackSize(stackSize);
3532}
3533
3534
3535rule__Assertion__Group__0
3536 @init {
3537 int stackSize = keepStackSize();
3538 }
3539:
3540 rule__Assertion__Group__0__Impl
3541 rule__Assertion__Group__1
3542;
3543finally {
3544 restoreStackSize(stackSize);
3545}
3546
3547rule__Assertion__Group__0__Impl
3548 @init {
3549 int stackSize = keepStackSize();
3550 }
3551:
3552(
3553 { before(grammarAccess.getAssertionAccess().getAlternatives_0()); }
3554 (rule__Assertion__Alternatives_0)
3555 { after(grammarAccess.getAssertionAccess().getAlternatives_0()); }
3556)
3557;
3558finally {
3559 restoreStackSize(stackSize);
3560}
3561
3562rule__Assertion__Group__1
3563 @init {
3564 int stackSize = keepStackSize();
3565 }
3566:
3567 rule__Assertion__Group__1__Impl
3568;
3569finally {
3570 restoreStackSize(stackSize);
3571}
3572
3573rule__Assertion__Group__1__Impl
3574 @init {
3575 int stackSize = keepStackSize();
3576 }
3577:
3578(
3579 { before(grammarAccess.getAssertionAccess().getFullStopKeyword_1()); }
3580 '.'
3581 { after(grammarAccess.getAssertionAccess().getFullStopKeyword_1()); }
3582)
3583;
3584finally {
3585 restoreStackSize(stackSize);
3586}
3587
3588
3589rule__Assertion__Group_0_0__0
3590 @init {
3591 int stackSize = keepStackSize();
3592 }
3593:
3594 rule__Assertion__Group_0_0__0__Impl
3595 rule__Assertion__Group_0_0__1
3596;
3597finally {
3598 restoreStackSize(stackSize);
3599}
3600
3601rule__Assertion__Group_0_0__0__Impl
3602 @init {
3603 int stackSize = keepStackSize();
3604 }
3605:
3606(
3607 { before(grammarAccess.getAssertionAccess().getRelationAssignment_0_0_0()); }
3608 (rule__Assertion__RelationAssignment_0_0_0)
3609 { after(grammarAccess.getAssertionAccess().getRelationAssignment_0_0_0()); }
3610)
3611;
3612finally {
3613 restoreStackSize(stackSize);
3614}
3615
3616rule__Assertion__Group_0_0__1
3617 @init {
3618 int stackSize = keepStackSize();
3619 }
3620:
3621 rule__Assertion__Group_0_0__1__Impl
3622 rule__Assertion__Group_0_0__2
3623;
3624finally {
3625 restoreStackSize(stackSize);
3626}
3627
3628rule__Assertion__Group_0_0__1__Impl
3629 @init {
3630 int stackSize = keepStackSize();
3631 }
3632:
3633(
3634 { before(grammarAccess.getAssertionAccess().getLeftParenthesisKeyword_0_0_1()); }
3635 '('
3636 { after(grammarAccess.getAssertionAccess().getLeftParenthesisKeyword_0_0_1()); }
3637)
3638;
3639finally {
3640 restoreStackSize(stackSize);
3641}
3642
3643rule__Assertion__Group_0_0__2
3644 @init {
3645 int stackSize = keepStackSize();
3646 }
3647:
3648 rule__Assertion__Group_0_0__2__Impl
3649 rule__Assertion__Group_0_0__3
3650;
3651finally {
3652 restoreStackSize(stackSize);
3653}
3654
3655rule__Assertion__Group_0_0__2__Impl
3656 @init {
3657 int stackSize = keepStackSize();
3658 }
3659:
3660(
3661 { before(grammarAccess.getAssertionAccess().getGroup_0_0_2()); }
3662 (rule__Assertion__Group_0_0_2__0)?
3663 { after(grammarAccess.getAssertionAccess().getGroup_0_0_2()); }
3664)
3665;
3666finally {
3667 restoreStackSize(stackSize);
3668}
3669
3670rule__Assertion__Group_0_0__3
3671 @init {
3672 int stackSize = keepStackSize();
3673 }
3674:
3675 rule__Assertion__Group_0_0__3__Impl
3676 rule__Assertion__Group_0_0__4
3677;
3678finally {
3679 restoreStackSize(stackSize);
3680}
3681
3682rule__Assertion__Group_0_0__3__Impl
3683 @init {
3684 int stackSize = keepStackSize();
3685 }
3686:
3687(
3688 { before(grammarAccess.getAssertionAccess().getRightParenthesisKeyword_0_0_3()); }
3689 ')'
3690 { after(grammarAccess.getAssertionAccess().getRightParenthesisKeyword_0_0_3()); }
3691)
3692;
3693finally {
3694 restoreStackSize(stackSize);
3695}
3696
3697rule__Assertion__Group_0_0__4
3698 @init {
3699 int stackSize = keepStackSize();
3700 }
3701:
3702 rule__Assertion__Group_0_0__4__Impl
3703 rule__Assertion__Group_0_0__5
3704;
3705finally {
3706 restoreStackSize(stackSize);
3707}
3708
3709rule__Assertion__Group_0_0__4__Impl
3710 @init {
3711 int stackSize = keepStackSize();
3712 }
3713:
3714(
3715 { before(grammarAccess.getAssertionAccess().getColonKeyword_0_0_4()); }
3716 ':'
3717 { after(grammarAccess.getAssertionAccess().getColonKeyword_0_0_4()); }
3718)
3719;
3720finally {
3721 restoreStackSize(stackSize);
3722}
3723
3724rule__Assertion__Group_0_0__5
3725 @init {
3726 int stackSize = keepStackSize();
3727 }
3728:
3729 rule__Assertion__Group_0_0__5__Impl
3730;
3731finally {
3732 restoreStackSize(stackSize);
3733}
3734
3735rule__Assertion__Group_0_0__5__Impl
3736 @init {
3737 int stackSize = keepStackSize();
3738 }
3739:
3740(
3741 { before(grammarAccess.getAssertionAccess().getValueAssignment_0_0_5()); }
3742 (rule__Assertion__ValueAssignment_0_0_5)
3743 { after(grammarAccess.getAssertionAccess().getValueAssignment_0_0_5()); }
3744)
3745;
3746finally {
3747 restoreStackSize(stackSize);
3748}
3749
3750
3751rule__Assertion__Group_0_0_2__0
3752 @init {
3753 int stackSize = keepStackSize();
3754 }
3755:
3756 rule__Assertion__Group_0_0_2__0__Impl
3757 rule__Assertion__Group_0_0_2__1
3758;
3759finally {
3760 restoreStackSize(stackSize);
3761}
3762
3763rule__Assertion__Group_0_0_2__0__Impl
3764 @init {
3765 int stackSize = keepStackSize();
3766 }
3767:
3768(
3769 { before(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_0_2_0()); }
3770 (rule__Assertion__ArgumentsAssignment_0_0_2_0)
3771 { after(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_0_2_0()); }
3772)
3773;
3774finally {
3775 restoreStackSize(stackSize);
3776}
3777
3778rule__Assertion__Group_0_0_2__1
3779 @init {
3780 int stackSize = keepStackSize();
3781 }
3782:
3783 rule__Assertion__Group_0_0_2__1__Impl
3784;
3785finally {
3786 restoreStackSize(stackSize);
3787}
3788
3789rule__Assertion__Group_0_0_2__1__Impl
3790 @init {
3791 int stackSize = keepStackSize();
3792 }
3793:
3794(
3795 { before(grammarAccess.getAssertionAccess().getGroup_0_0_2_1()); }
3796 (rule__Assertion__Group_0_0_2_1__0)*
3797 { after(grammarAccess.getAssertionAccess().getGroup_0_0_2_1()); }
3798)
3799;
3800finally {
3801 restoreStackSize(stackSize);
3802}
3803
3804
3805rule__Assertion__Group_0_0_2_1__0
3806 @init {
3807 int stackSize = keepStackSize();
3808 }
3809:
3810 rule__Assertion__Group_0_0_2_1__0__Impl
3811 rule__Assertion__Group_0_0_2_1__1
3812;
3813finally {
3814 restoreStackSize(stackSize);
3815}
3816
3817rule__Assertion__Group_0_0_2_1__0__Impl
3818 @init {
3819 int stackSize = keepStackSize();
3820 }
3821:
3822(
3823 { before(grammarAccess.getAssertionAccess().getCommaKeyword_0_0_2_1_0()); }
3824 ','
3825 { after(grammarAccess.getAssertionAccess().getCommaKeyword_0_0_2_1_0()); }
3826)
3827;
3828finally {
3829 restoreStackSize(stackSize);
3830}
3831
3832rule__Assertion__Group_0_0_2_1__1
3833 @init {
3834 int stackSize = keepStackSize();
3835 }
3836:
3837 rule__Assertion__Group_0_0_2_1__1__Impl
3838;
3839finally {
3840 restoreStackSize(stackSize);
3841}
3842
3843rule__Assertion__Group_0_0_2_1__1__Impl
3844 @init {
3845 int stackSize = keepStackSize();
3846 }
3847:
3848(
3849 { before(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_0_2_1_1()); }
3850 (rule__Assertion__ArgumentsAssignment_0_0_2_1_1)
3851 { after(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_0_2_1_1()); }
3852)
3853;
3854finally {
3855 restoreStackSize(stackSize);
3856}
3857
3858
3859rule__Assertion__Group_0_1__0
3860 @init {
3861 int stackSize = keepStackSize();
3862 }
3863:
3864 rule__Assertion__Group_0_1__0__Impl
3865 rule__Assertion__Group_0_1__1
3866;
3867finally {
3868 restoreStackSize(stackSize);
3869}
3870
3871rule__Assertion__Group_0_1__0__Impl
3872 @init {
3873 int stackSize = keepStackSize();
3874 }
3875:
3876(
3877 { before(grammarAccess.getAssertionAccess().getValueAssignment_0_1_0()); }
3878 (rule__Assertion__ValueAssignment_0_1_0)?
3879 { after(grammarAccess.getAssertionAccess().getValueAssignment_0_1_0()); }
3880)
3881;
3882finally {
3883 restoreStackSize(stackSize);
3884}
3885
3886rule__Assertion__Group_0_1__1
3887 @init {
3888 int stackSize = keepStackSize();
3889 }
3890:
3891 rule__Assertion__Group_0_1__1__Impl
3892 rule__Assertion__Group_0_1__2
3893;
3894finally {
3895 restoreStackSize(stackSize);
3896}
3897
3898rule__Assertion__Group_0_1__1__Impl
3899 @init {
3900 int stackSize = keepStackSize();
3901 }
3902:
3903(
3904 { before(grammarAccess.getAssertionAccess().getRelationAssignment_0_1_1()); }
3905 (rule__Assertion__RelationAssignment_0_1_1)
3906 { after(grammarAccess.getAssertionAccess().getRelationAssignment_0_1_1()); }
3907)
3908;
3909finally {
3910 restoreStackSize(stackSize);
3911}
3912
3913rule__Assertion__Group_0_1__2
3914 @init {
3915 int stackSize = keepStackSize();
3916 }
3917:
3918 rule__Assertion__Group_0_1__2__Impl
3919 rule__Assertion__Group_0_1__3
3920;
3921finally {
3922 restoreStackSize(stackSize);
3923}
3924
3925rule__Assertion__Group_0_1__2__Impl
3926 @init {
3927 int stackSize = keepStackSize();
3928 }
3929:
3930(
3931 { before(grammarAccess.getAssertionAccess().getLeftParenthesisKeyword_0_1_2()); }
3932 '('
3933 { after(grammarAccess.getAssertionAccess().getLeftParenthesisKeyword_0_1_2()); }
3934)
3935;
3936finally {
3937 restoreStackSize(stackSize);
3938}
3939
3940rule__Assertion__Group_0_1__3
3941 @init {
3942 int stackSize = keepStackSize();
3943 }
3944:
3945 rule__Assertion__Group_0_1__3__Impl
3946 rule__Assertion__Group_0_1__4
3947;
3948finally {
3949 restoreStackSize(stackSize);
3950}
3951
3952rule__Assertion__Group_0_1__3__Impl
3953 @init {
3954 int stackSize = keepStackSize();
3955 }
3956:
3957(
3958 { before(grammarAccess.getAssertionAccess().getGroup_0_1_3()); }
3959 (rule__Assertion__Group_0_1_3__0)?
3960 { after(grammarAccess.getAssertionAccess().getGroup_0_1_3()); }
3961)
3962;
3963finally {
3964 restoreStackSize(stackSize);
3965}
3966
3967rule__Assertion__Group_0_1__4
3968 @init {
3969 int stackSize = keepStackSize();
3970 }
3971:
3972 rule__Assertion__Group_0_1__4__Impl
3973;
3974finally {
3975 restoreStackSize(stackSize);
3976}
3977
3978rule__Assertion__Group_0_1__4__Impl
3979 @init {
3980 int stackSize = keepStackSize();
3981 }
3982:
3983(
3984 { before(grammarAccess.getAssertionAccess().getRightParenthesisKeyword_0_1_4()); }
3985 ')'
3986 { after(grammarAccess.getAssertionAccess().getRightParenthesisKeyword_0_1_4()); }
3987)
3988;
3989finally {
3990 restoreStackSize(stackSize);
3991}
3992
3993
3994rule__Assertion__Group_0_1_3__0
3995 @init {
3996 int stackSize = keepStackSize();
3997 }
3998:
3999 rule__Assertion__Group_0_1_3__0__Impl
4000 rule__Assertion__Group_0_1_3__1
4001;
4002finally {
4003 restoreStackSize(stackSize);
4004}
4005
4006rule__Assertion__Group_0_1_3__0__Impl
4007 @init {
4008 int stackSize = keepStackSize();
4009 }
4010:
4011(
4012 { before(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_1_3_0()); }
4013 (rule__Assertion__ArgumentsAssignment_0_1_3_0)
4014 { after(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_1_3_0()); }
4015)
4016;
4017finally {
4018 restoreStackSize(stackSize);
4019}
4020
4021rule__Assertion__Group_0_1_3__1
4022 @init {
4023 int stackSize = keepStackSize();
4024 }
4025:
4026 rule__Assertion__Group_0_1_3__1__Impl
4027;
4028finally {
4029 restoreStackSize(stackSize);
4030}
4031
4032rule__Assertion__Group_0_1_3__1__Impl
4033 @init {
4034 int stackSize = keepStackSize();
4035 }
4036:
4037(
4038 { before(grammarAccess.getAssertionAccess().getGroup_0_1_3_1()); }
4039 (rule__Assertion__Group_0_1_3_1__0)*
4040 { after(grammarAccess.getAssertionAccess().getGroup_0_1_3_1()); }
4041)
4042;
4043finally {
4044 restoreStackSize(stackSize);
4045}
4046
4047
4048rule__Assertion__Group_0_1_3_1__0
4049 @init {
4050 int stackSize = keepStackSize();
4051 }
4052:
4053 rule__Assertion__Group_0_1_3_1__0__Impl
4054 rule__Assertion__Group_0_1_3_1__1
4055;
4056finally {
4057 restoreStackSize(stackSize);
4058}
4059
4060rule__Assertion__Group_0_1_3_1__0__Impl
4061 @init {
4062 int stackSize = keepStackSize();
4063 }
4064:
4065(
4066 { before(grammarAccess.getAssertionAccess().getCommaKeyword_0_1_3_1_0()); }
4067 ','
4068 { after(grammarAccess.getAssertionAccess().getCommaKeyword_0_1_3_1_0()); }
4069)
4070;
4071finally {
4072 restoreStackSize(stackSize);
4073}
4074
4075rule__Assertion__Group_0_1_3_1__1
4076 @init {
4077 int stackSize = keepStackSize();
4078 }
4079:
4080 rule__Assertion__Group_0_1_3_1__1__Impl
4081;
4082finally {
4083 restoreStackSize(stackSize);
4084}
4085
4086rule__Assertion__Group_0_1_3_1__1__Impl
4087 @init {
4088 int stackSize = keepStackSize();
4089 }
4090:
4091(
4092 { before(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_1_3_1_1()); }
4093 (rule__Assertion__ArgumentsAssignment_0_1_3_1_1)
4094 { after(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_1_3_1_1()); }
4095)
4096;
4097finally {
4098 restoreStackSize(stackSize);
4099}
4100
4101
4102rule__NodeValueAssertion__Group__0
4103 @init {
4104 int stackSize = keepStackSize();
4105 }
4106:
4107 rule__NodeValueAssertion__Group__0__Impl
4108 rule__NodeValueAssertion__Group__1
4109;
4110finally {
4111 restoreStackSize(stackSize);
4112}
4113
4114rule__NodeValueAssertion__Group__0__Impl
4115 @init {
4116 int stackSize = keepStackSize();
4117 }
4118:
4119(
4120 { before(grammarAccess.getNodeValueAssertionAccess().getNodeAssignment_0()); }
4121 (rule__NodeValueAssertion__NodeAssignment_0)
4122 { after(grammarAccess.getNodeValueAssertionAccess().getNodeAssignment_0()); }
4123)
4124;
4125finally {
4126 restoreStackSize(stackSize);
4127}
4128
4129rule__NodeValueAssertion__Group__1
4130 @init {
4131 int stackSize = keepStackSize();
4132 }
4133:
4134 rule__NodeValueAssertion__Group__1__Impl
4135 rule__NodeValueAssertion__Group__2
4136;
4137finally {
4138 restoreStackSize(stackSize);
4139}
4140
4141rule__NodeValueAssertion__Group__1__Impl
4142 @init {
4143 int stackSize = keepStackSize();
4144 }
4145:
4146(
4147 { before(grammarAccess.getNodeValueAssertionAccess().getColonKeyword_1()); }
4148 ':'
4149 { after(grammarAccess.getNodeValueAssertionAccess().getColonKeyword_1()); }
4150)
4151;
4152finally {
4153 restoreStackSize(stackSize);
4154}
4155
4156rule__NodeValueAssertion__Group__2
4157 @init {
4158 int stackSize = keepStackSize();
4159 }
4160:
4161 rule__NodeValueAssertion__Group__2__Impl
4162 rule__NodeValueAssertion__Group__3
4163;
4164finally {
4165 restoreStackSize(stackSize);
4166}
4167
4168rule__NodeValueAssertion__Group__2__Impl
4169 @init {
4170 int stackSize = keepStackSize();
4171 }
4172:
4173(
4174 { before(grammarAccess.getNodeValueAssertionAccess().getValueAssignment_2()); }
4175 (rule__NodeValueAssertion__ValueAssignment_2)
4176 { after(grammarAccess.getNodeValueAssertionAccess().getValueAssignment_2()); }
4177)
4178;
4179finally {
4180 restoreStackSize(stackSize);
4181}
4182
4183rule__NodeValueAssertion__Group__3
4184 @init {
4185 int stackSize = keepStackSize();
4186 }
4187:
4188 rule__NodeValueAssertion__Group__3__Impl
4189;
4190finally {
4191 restoreStackSize(stackSize);
4192}
4193
4194rule__NodeValueAssertion__Group__3__Impl
4195 @init {
4196 int stackSize = keepStackSize();
4197 }
4198:
4199(
4200 { before(grammarAccess.getNodeValueAssertionAccess().getFullStopKeyword_3()); }
4201 '.'
4202 { after(grammarAccess.getNodeValueAssertionAccess().getFullStopKeyword_3()); }
4203)
4204;
4205finally {
4206 restoreStackSize(stackSize);
4207}
4208
4209
4210rule__ScopeDeclaration__Group__0
4211 @init {
4212 int stackSize = keepStackSize();
4213 }
4214:
4215 rule__ScopeDeclaration__Group__0__Impl
4216 rule__ScopeDeclaration__Group__1
4217;
4218finally {
4219 restoreStackSize(stackSize);
4220}
4221
4222rule__ScopeDeclaration__Group__0__Impl
4223 @init {
4224 int stackSize = keepStackSize();
4225 }
4226:
4227(
4228 { before(grammarAccess.getScopeDeclarationAccess().getScopeKeyword_0()); }
4229 'scope'
4230 { after(grammarAccess.getScopeDeclarationAccess().getScopeKeyword_0()); }
4231)
4232;
4233finally {
4234 restoreStackSize(stackSize);
4235}
4236
4237rule__ScopeDeclaration__Group__1
4238 @init {
4239 int stackSize = keepStackSize();
4240 }
4241:
4242 rule__ScopeDeclaration__Group__1__Impl
4243 rule__ScopeDeclaration__Group__2
4244;
4245finally {
4246 restoreStackSize(stackSize);
4247}
4248
4249rule__ScopeDeclaration__Group__1__Impl
4250 @init {
4251 int stackSize = keepStackSize();
4252 }
4253:
4254(
4255 { before(grammarAccess.getScopeDeclarationAccess().getTypeScopesAssignment_1()); }
4256 (rule__ScopeDeclaration__TypeScopesAssignment_1)
4257 { after(grammarAccess.getScopeDeclarationAccess().getTypeScopesAssignment_1()); }
4258)
4259;
4260finally {
4261 restoreStackSize(stackSize);
4262}
4263
4264rule__ScopeDeclaration__Group__2
4265 @init {
4266 int stackSize = keepStackSize();
4267 }
4268:
4269 rule__ScopeDeclaration__Group__2__Impl
4270 rule__ScopeDeclaration__Group__3
4271;
4272finally {
4273 restoreStackSize(stackSize);
4274}
4275
4276rule__ScopeDeclaration__Group__2__Impl
4277 @init {
4278 int stackSize = keepStackSize();
4279 }
4280:
4281(
4282 { before(grammarAccess.getScopeDeclarationAccess().getGroup_2()); }
4283 (rule__ScopeDeclaration__Group_2__0)*
4284 { after(grammarAccess.getScopeDeclarationAccess().getGroup_2()); }
4285)
4286;
4287finally {
4288 restoreStackSize(stackSize);
4289}
4290
4291rule__ScopeDeclaration__Group__3
4292 @init {
4293 int stackSize = keepStackSize();
4294 }
4295:
4296 rule__ScopeDeclaration__Group__3__Impl
4297;
4298finally {
4299 restoreStackSize(stackSize);
4300}
4301
4302rule__ScopeDeclaration__Group__3__Impl
4303 @init {
4304 int stackSize = keepStackSize();
4305 }
4306:
4307(
4308 { before(grammarAccess.getScopeDeclarationAccess().getFullStopKeyword_3()); }
4309 '.'
4310 { after(grammarAccess.getScopeDeclarationAccess().getFullStopKeyword_3()); }
4311)
4312;
4313finally {
4314 restoreStackSize(stackSize);
4315}
4316
4317
4318rule__ScopeDeclaration__Group_2__0
4319 @init {
4320 int stackSize = keepStackSize();
4321 }
4322:
4323 rule__ScopeDeclaration__Group_2__0__Impl
4324 rule__ScopeDeclaration__Group_2__1
4325;
4326finally {
4327 restoreStackSize(stackSize);
4328}
4329
4330rule__ScopeDeclaration__Group_2__0__Impl
4331 @init {
4332 int stackSize = keepStackSize();
4333 }
4334:
4335(
4336 { before(grammarAccess.getScopeDeclarationAccess().getCommaKeyword_2_0()); }
4337 ','
4338 { after(grammarAccess.getScopeDeclarationAccess().getCommaKeyword_2_0()); }
4339)
4340;
4341finally {
4342 restoreStackSize(stackSize);
4343}
4344
4345rule__ScopeDeclaration__Group_2__1
4346 @init {
4347 int stackSize = keepStackSize();
4348 }
4349:
4350 rule__ScopeDeclaration__Group_2__1__Impl
4351;
4352finally {
4353 restoreStackSize(stackSize);
4354}
4355
4356rule__ScopeDeclaration__Group_2__1__Impl
4357 @init {
4358 int stackSize = keepStackSize();
4359 }
4360:
4361(
4362 { before(grammarAccess.getScopeDeclarationAccess().getTypeScopesAssignment_2_1()); }
4363 (rule__ScopeDeclaration__TypeScopesAssignment_2_1)
4364 { after(grammarAccess.getScopeDeclarationAccess().getTypeScopesAssignment_2_1()); }
4365)
4366;
4367finally {
4368 restoreStackSize(stackSize);
4369}
4370
4371
4372rule__TypeScope__Group__0
4373 @init {
4374 int stackSize = keepStackSize();
4375 }
4376:
4377 rule__TypeScope__Group__0__Impl
4378 rule__TypeScope__Group__1
4379;
4380finally {
4381 restoreStackSize(stackSize);
4382}
4383
4384rule__TypeScope__Group__0__Impl
4385 @init {
4386 int stackSize = keepStackSize();
4387 }
4388:
4389(
4390 { before(grammarAccess.getTypeScopeAccess().getTargetTypeAssignment_0()); }
4391 (rule__TypeScope__TargetTypeAssignment_0)
4392 { after(grammarAccess.getTypeScopeAccess().getTargetTypeAssignment_0()); }
4393)
4394;
4395finally {
4396 restoreStackSize(stackSize);
4397}
4398
4399rule__TypeScope__Group__1
4400 @init {
4401 int stackSize = keepStackSize();
4402 }
4403:
4404 rule__TypeScope__Group__1__Impl
4405 rule__TypeScope__Group__2
4406;
4407finally {
4408 restoreStackSize(stackSize);
4409}
4410
4411rule__TypeScope__Group__1__Impl
4412 @init {
4413 int stackSize = keepStackSize();
4414 }
4415:
4416(
4417 { before(grammarAccess.getTypeScopeAccess().getAlternatives_1()); }
4418 (rule__TypeScope__Alternatives_1)
4419 { after(grammarAccess.getTypeScopeAccess().getAlternatives_1()); }
4420)
4421;
4422finally {
4423 restoreStackSize(stackSize);
4424}
4425
4426rule__TypeScope__Group__2
4427 @init {
4428 int stackSize = keepStackSize();
4429 }
4430:
4431 rule__TypeScope__Group__2__Impl
4432;
4433finally {
4434 restoreStackSize(stackSize);
4435}
4436
4437rule__TypeScope__Group__2__Impl
4438 @init {
4439 int stackSize = keepStackSize();
4440 }
4441:
4442(
4443 { before(grammarAccess.getTypeScopeAccess().getMultiplicityAssignment_2()); }
4444 (rule__TypeScope__MultiplicityAssignment_2)
4445 { after(grammarAccess.getTypeScopeAccess().getMultiplicityAssignment_2()); }
4446)
4447;
4448finally {
4449 restoreStackSize(stackSize);
4450}
4451
4452
4453rule__RangeMultiplicity__Group__0
4454 @init {
4455 int stackSize = keepStackSize();
4456 }
4457:
4458 rule__RangeMultiplicity__Group__0__Impl
4459 rule__RangeMultiplicity__Group__1
4460;
4461finally {
4462 restoreStackSize(stackSize);
4463}
4464
4465rule__RangeMultiplicity__Group__0__Impl
4466 @init {
4467 int stackSize = keepStackSize();
4468 }
4469:
4470(
4471 { before(grammarAccess.getRangeMultiplicityAccess().getLowerBoundAssignment_0()); }
4472 (rule__RangeMultiplicity__LowerBoundAssignment_0)
4473 { after(grammarAccess.getRangeMultiplicityAccess().getLowerBoundAssignment_0()); }
4474)
4475;
4476finally {
4477 restoreStackSize(stackSize);
4478}
4479
4480rule__RangeMultiplicity__Group__1
4481 @init {
4482 int stackSize = keepStackSize();
4483 }
4484:
4485 rule__RangeMultiplicity__Group__1__Impl
4486 rule__RangeMultiplicity__Group__2
4487;
4488finally {
4489 restoreStackSize(stackSize);
4490}
4491
4492rule__RangeMultiplicity__Group__1__Impl
4493 @init {
4494 int stackSize = keepStackSize();
4495 }
4496:
4497(
4498 { before(grammarAccess.getRangeMultiplicityAccess().getFullStopFullStopKeyword_1()); }
4499 '..'
4500 { after(grammarAccess.getRangeMultiplicityAccess().getFullStopFullStopKeyword_1()); }
4501)
4502;
4503finally {
4504 restoreStackSize(stackSize);
4505}
4506
4507rule__RangeMultiplicity__Group__2
4508 @init {
4509 int stackSize = keepStackSize();
4510 }
4511:
4512 rule__RangeMultiplicity__Group__2__Impl
4513;
4514finally {
4515 restoreStackSize(stackSize);
4516}
4517
4518rule__RangeMultiplicity__Group__2__Impl
4519 @init {
4520 int stackSize = keepStackSize();
4521 }
4522:
4523(
4524 { before(grammarAccess.getRangeMultiplicityAccess().getUpperBoundAssignment_2()); }
4525 (rule__RangeMultiplicity__UpperBoundAssignment_2)
4526 { after(grammarAccess.getRangeMultiplicityAccess().getUpperBoundAssignment_2()); }
4527)
4528;
4529finally {
4530 restoreStackSize(stackSize);
4531}
4532
4533
4534rule__QualifiedName__Group_1__0
4535 @init {
4536 int stackSize = keepStackSize();
4537 }
4538:
4539 rule__QualifiedName__Group_1__0__Impl
4540 rule__QualifiedName__Group_1__1
4541;
4542finally {
4543 restoreStackSize(stackSize);
4544}
4545
4546rule__QualifiedName__Group_1__0__Impl
4547 @init {
4548 int stackSize = keepStackSize();
4549 }
4550:
4551(
4552 { before(grammarAccess.getQualifiedNameAccess().getIdentifierParserRuleCall_1_0()); }
4553 ruleIdentifier
4554 { after(grammarAccess.getQualifiedNameAccess().getIdentifierParserRuleCall_1_0()); }
4555)
4556;
4557finally {
4558 restoreStackSize(stackSize);
4559}
4560
4561rule__QualifiedName__Group_1__1
4562 @init {
4563 int stackSize = keepStackSize();
4564 }
4565:
4566 rule__QualifiedName__Group_1__1__Impl
4567;
4568finally {
4569 restoreStackSize(stackSize);
4570}
4571
4572rule__QualifiedName__Group_1__1__Impl
4573 @init {
4574 int stackSize = keepStackSize();
4575 }
4576:
4577(
4578 { before(grammarAccess.getQualifiedNameAccess().getGroup_1_1()); }
4579 (rule__QualifiedName__Group_1_1__0)*
4580 { after(grammarAccess.getQualifiedNameAccess().getGroup_1_1()); }
4581)
4582;
4583finally {
4584 restoreStackSize(stackSize);
4585}
4586
4587
4588rule__QualifiedName__Group_1_1__0
4589 @init {
4590 int stackSize = keepStackSize();
4591 }
4592:
4593 rule__QualifiedName__Group_1_1__0__Impl
4594 rule__QualifiedName__Group_1_1__1
4595;
4596finally {
4597 restoreStackSize(stackSize);
4598}
4599
4600rule__QualifiedName__Group_1_1__0__Impl
4601 @init {
4602 int stackSize = keepStackSize();
4603 }
4604:
4605(
4606 { before(grammarAccess.getQualifiedNameAccess().getColonColonKeyword_1_1_0()); }
4607 '::'
4608 { after(grammarAccess.getQualifiedNameAccess().getColonColonKeyword_1_1_0()); }
4609)
4610;
4611finally {
4612 restoreStackSize(stackSize);
4613}
4614
4615rule__QualifiedName__Group_1_1__1
4616 @init {
4617 int stackSize = keepStackSize();
4618 }
4619:
4620 rule__QualifiedName__Group_1_1__1__Impl
4621;
4622finally {
4623 restoreStackSize(stackSize);
4624}
4625
4626rule__QualifiedName__Group_1_1__1__Impl
4627 @init {
4628 int stackSize = keepStackSize();
4629 }
4630:
4631(
4632 { before(grammarAccess.getQualifiedNameAccess().getIdentifierParserRuleCall_1_1_1()); }
4633 ruleIdentifier
4634 { after(grammarAccess.getQualifiedNameAccess().getIdentifierParserRuleCall_1_1_1()); }
4635)
4636;
4637finally {
4638 restoreStackSize(stackSize);
4639}
4640
4641
4642rule__Integer__Group__0
4643 @init {
4644 int stackSize = keepStackSize();
4645 }
4646:
4647 rule__Integer__Group__0__Impl
4648 rule__Integer__Group__1
4649;
4650finally {
4651 restoreStackSize(stackSize);
4652}
4653
4654rule__Integer__Group__0__Impl
4655 @init {
4656 int stackSize = keepStackSize();
4657 }
4658:
4659(
4660 { before(grammarAccess.getIntegerAccess().getHyphenMinusKeyword_0()); }
4661 ('-')?
4662 { after(grammarAccess.getIntegerAccess().getHyphenMinusKeyword_0()); }
4663)
4664;
4665finally {
4666 restoreStackSize(stackSize);
4667}
4668
4669rule__Integer__Group__1
4670 @init {
4671 int stackSize = keepStackSize();
4672 }
4673:
4674 rule__Integer__Group__1__Impl
4675;
4676finally {
4677 restoreStackSize(stackSize);
4678}
4679
4680rule__Integer__Group__1__Impl
4681 @init {
4682 int stackSize = keepStackSize();
4683 }
4684:
4685(
4686 { before(grammarAccess.getIntegerAccess().getINTTerminalRuleCall_1()); }
4687 RULE_INT
4688 { after(grammarAccess.getIntegerAccess().getINTTerminalRuleCall_1()); }
4689)
4690;
4691finally {
4692 restoreStackSize(stackSize);
4693}
4694
4695
4696rule__Real__Group__0
4697 @init {
4698 int stackSize = keepStackSize();
4699 }
4700:
4701 rule__Real__Group__0__Impl
4702 rule__Real__Group__1
4703;
4704finally {
4705 restoreStackSize(stackSize);
4706}
4707
4708rule__Real__Group__0__Impl
4709 @init {
4710 int stackSize = keepStackSize();
4711 }
4712:
4713(
4714 { before(grammarAccess.getRealAccess().getHyphenMinusKeyword_0()); }
4715 ('-')?
4716 { after(grammarAccess.getRealAccess().getHyphenMinusKeyword_0()); }
4717)
4718;
4719finally {
4720 restoreStackSize(stackSize);
4721}
4722
4723rule__Real__Group__1
4724 @init {
4725 int stackSize = keepStackSize();
4726 }
4727:
4728 rule__Real__Group__1__Impl
4729;
4730finally {
4731 restoreStackSize(stackSize);
4732}
4733
4734rule__Real__Group__1__Impl
4735 @init {
4736 int stackSize = keepStackSize();
4737 }
4738:
4739(
4740 { before(grammarAccess.getRealAccess().getAlternatives_1()); }
4741 (rule__Real__Alternatives_1)
4742 { after(grammarAccess.getRealAccess().getAlternatives_1()); }
4743)
4744;
4745finally {
4746 restoreStackSize(stackSize);
4747}
4748
4749
4750rule__Real__Group_1_1__0
4751 @init {
4752 int stackSize = keepStackSize();
4753 }
4754:
4755 rule__Real__Group_1_1__0__Impl
4756 rule__Real__Group_1_1__1
4757;
4758finally {
4759 restoreStackSize(stackSize);
4760}
4761
4762rule__Real__Group_1_1__0__Impl
4763 @init {
4764 int stackSize = keepStackSize();
4765 }
4766:
4767(
4768 { before(grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1_0()); }
4769 RULE_INT
4770 { after(grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1_0()); }
4771)
4772;
4773finally {
4774 restoreStackSize(stackSize);
4775}
4776
4777rule__Real__Group_1_1__1
4778 @init {
4779 int stackSize = keepStackSize();
4780 }
4781:
4782 rule__Real__Group_1_1__1__Impl
4783 rule__Real__Group_1_1__2
4784;
4785finally {
4786 restoreStackSize(stackSize);
4787}
4788
4789rule__Real__Group_1_1__1__Impl
4790 @init {
4791 int stackSize = keepStackSize();
4792 }
4793:
4794(
4795 { before(grammarAccess.getRealAccess().getFullStopKeyword_1_1_1()); }
4796 '.'
4797 { after(grammarAccess.getRealAccess().getFullStopKeyword_1_1_1()); }
4798)
4799;
4800finally {
4801 restoreStackSize(stackSize);
4802}
4803
4804rule__Real__Group_1_1__2
4805 @init {
4806 int stackSize = keepStackSize();
4807 }
4808:
4809 rule__Real__Group_1_1__2__Impl
4810;
4811finally {
4812 restoreStackSize(stackSize);
4813}
4814
4815rule__Real__Group_1_1__2__Impl
4816 @init {
4817 int stackSize = keepStackSize();
4818 }
4819:
4820(
4821 { before(grammarAccess.getRealAccess().getAlternatives_1_1_2()); }
4822 (rule__Real__Alternatives_1_1_2)
4823 { after(grammarAccess.getRealAccess().getAlternatives_1_1_2()); }
4824)
4825;
4826finally {
4827 restoreStackSize(stackSize);
4828}
4829
4830
4831rule__Problem__NameAssignment_0_1
4832 @init {
4833 int stackSize = keepStackSize();
4834 }
4835:
4836 (
4837 { before(grammarAccess.getProblemAccess().getNameIdentifierParserRuleCall_0_1_0()); }
4838 ruleIdentifier
4839 { after(grammarAccess.getProblemAccess().getNameIdentifierParserRuleCall_0_1_0()); }
4840 )
4841;
4842finally {
4843 restoreStackSize(stackSize);
4844}
4845
4846rule__Problem__StatementsAssignment_1
4847 @init {
4848 int stackSize = keepStackSize();
4849 }
4850:
4851 (
4852 { before(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_1_0()); }
4853 ruleStatement
4854 { after(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_1_0()); }
4855 )
4856;
4857finally {
4858 restoreStackSize(stackSize);
4859}
4860
4861rule__ClassDeclaration__AbstractAssignment_0
4862 @init {
4863 int stackSize = keepStackSize();
4864 }
4865:
4866 (
4867 { before(grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0()); }
4868 (
4869 { before(grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0()); }
4870 'abstract'
4871 { after(grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0()); }
4872 )
4873 { after(grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0()); }
4874 )
4875;
4876finally {
4877 restoreStackSize(stackSize);
4878}
4879
4880rule__ClassDeclaration__NameAssignment_2
4881 @init {
4882 int stackSize = keepStackSize();
4883 }
4884:
4885 (
4886 { before(grammarAccess.getClassDeclarationAccess().getNameIdentifierParserRuleCall_2_0()); }
4887 ruleIdentifier
4888 { after(grammarAccess.getClassDeclarationAccess().getNameIdentifierParserRuleCall_2_0()); }
4889 )
4890;
4891finally {
4892 restoreStackSize(stackSize);
4893}
4894
4895rule__ClassDeclaration__SuperTypesAssignment_3_1
4896 @init {
4897 int stackSize = keepStackSize();
4898 }
4899:
4900 (
4901 { before(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationCrossReference_3_1_0()); }
4902 (
4903 { before(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationQualifiedNameParserRuleCall_3_1_0_1()); }
4904 ruleQualifiedName
4905 { after(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationQualifiedNameParserRuleCall_3_1_0_1()); }
4906 )
4907 { after(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationCrossReference_3_1_0()); }
4908 )
4909;
4910finally {
4911 restoreStackSize(stackSize);
4912}
4913
4914rule__ClassDeclaration__SuperTypesAssignment_3_2_1
4915 @init {
4916 int stackSize = keepStackSize();
4917 }
4918:
4919 (
4920 { before(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationCrossReference_3_2_1_0()); }
4921 (
4922 { before(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationQualifiedNameParserRuleCall_3_2_1_0_1()); }
4923 ruleQualifiedName
4924 { after(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationQualifiedNameParserRuleCall_3_2_1_0_1()); }
4925 )
4926 { after(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationCrossReference_3_2_1_0()); }
4927 )
4928;
4929finally {
4930 restoreStackSize(stackSize);
4931}
4932
4933rule__ClassDeclaration__ReferenceDeclarationsAssignment_4_0_1_0
4934 @init {
4935 int stackSize = keepStackSize();
4936 }
4937:
4938 (
4939 { before(grammarAccess.getClassDeclarationAccess().getReferenceDeclarationsReferenceDeclarationParserRuleCall_4_0_1_0_0()); }
4940 ruleReferenceDeclaration
4941 { after(grammarAccess.getClassDeclarationAccess().getReferenceDeclarationsReferenceDeclarationParserRuleCall_4_0_1_0_0()); }
4942 )
4943;
4944finally {
4945 restoreStackSize(stackSize);
4946}
4947
4948rule__EnumDeclaration__NameAssignment_1
4949 @init {
4950 int stackSize = keepStackSize();
4951 }
4952:
4953 (
4954 { before(grammarAccess.getEnumDeclarationAccess().getNameIdentifierParserRuleCall_1_0()); }
4955 ruleIdentifier
4956 { after(grammarAccess.getEnumDeclarationAccess().getNameIdentifierParserRuleCall_1_0()); }
4957 )
4958;
4959finally {
4960 restoreStackSize(stackSize);
4961}
4962
4963rule__EnumDeclaration__LiteralsAssignment_2_0_1_0
4964 @init {
4965 int stackSize = keepStackSize();
4966 }
4967:
4968 (
4969 { before(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_0_0()); }
4970 ruleEnumLiteral
4971 { after(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_0_0()); }
4972 )
4973;
4974finally {
4975 restoreStackSize(stackSize);
4976}
4977
4978rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1
4979 @init {
4980 int stackSize = keepStackSize();
4981 }
4982:
4983 (
4984 { before(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0()); }
4985 ruleEnumLiteral
4986 { after(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0()); }
4987 )
4988;
4989finally {
4990 restoreStackSize(stackSize);
4991}
4992
4993rule__EnumLiteral__NameAssignment
4994 @init {
4995 int stackSize = keepStackSize();
4996 }
4997:
4998 (
4999 { before(grammarAccess.getEnumLiteralAccess().getNameIdentifierParserRuleCall_0()); }
5000 ruleIdentifier
5001 { after(grammarAccess.getEnumLiteralAccess().getNameIdentifierParserRuleCall_0()); }
5002 )
5003;
5004finally {
5005 restoreStackSize(stackSize);
5006}
5007
5008rule__ReferenceDeclaration__ContainmentAssignment_0_0
5009 @init {
5010 int stackSize = keepStackSize();
5011 }
5012:
5013 (
5014 { before(grammarAccess.getReferenceDeclarationAccess().getContainmentContainsKeyword_0_0_0()); }
5015 (
5016 { before(grammarAccess.getReferenceDeclarationAccess().getContainmentContainsKeyword_0_0_0()); }
5017 'contains'
5018 { after(grammarAccess.getReferenceDeclarationAccess().getContainmentContainsKeyword_0_0_0()); }
5019 )
5020 { after(grammarAccess.getReferenceDeclarationAccess().getContainmentContainsKeyword_0_0_0()); }
5021 )
5022;
5023finally {
5024 restoreStackSize(stackSize);
5025}
5026
5027rule__ReferenceDeclaration__ReferenceTypeAssignment_1
5028 @init {
5029 int stackSize = keepStackSize();
5030 }
5031:
5032 (
5033 { before(grammarAccess.getReferenceDeclarationAccess().getReferenceTypeRelationCrossReference_1_0()); }
5034 (
5035 { before(grammarAccess.getReferenceDeclarationAccess().getReferenceTypeRelationQualifiedNameParserRuleCall_1_0_1()); }
5036 ruleQualifiedName
5037 { after(grammarAccess.getReferenceDeclarationAccess().getReferenceTypeRelationQualifiedNameParserRuleCall_1_0_1()); }
5038 )
5039 { after(grammarAccess.getReferenceDeclarationAccess().getReferenceTypeRelationCrossReference_1_0()); }
5040 )
5041;
5042finally {
5043 restoreStackSize(stackSize);
5044}
5045
5046rule__ReferenceDeclaration__MultiplicityAssignment_2_1
5047 @init {
5048 int stackSize = keepStackSize();
5049 }
5050:
5051 (
5052 { before(grammarAccess.getReferenceDeclarationAccess().getMultiplicityMultiplicityParserRuleCall_2_1_0()); }
5053 ruleMultiplicity
5054 { after(grammarAccess.getReferenceDeclarationAccess().getMultiplicityMultiplicityParserRuleCall_2_1_0()); }
5055 )
5056;
5057finally {
5058 restoreStackSize(stackSize);
5059}
5060
5061rule__ReferenceDeclaration__NameAssignment_3
5062 @init {
5063 int stackSize = keepStackSize();
5064 }
5065:
5066 (
5067 { before(grammarAccess.getReferenceDeclarationAccess().getNameIdentifierParserRuleCall_3_0()); }
5068 ruleIdentifier
5069 { after(grammarAccess.getReferenceDeclarationAccess().getNameIdentifierParserRuleCall_3_0()); }
5070 )
5071;
5072finally {
5073 restoreStackSize(stackSize);
5074}
5075
5076rule__ReferenceDeclaration__OppositeAssignment_4_1
5077 @init {
5078 int stackSize = keepStackSize();
5079 }
5080:
5081 (
5082 { before(grammarAccess.getReferenceDeclarationAccess().getOppositeReferenceDeclarationCrossReference_4_1_0()); }
5083 (
5084 { before(grammarAccess.getReferenceDeclarationAccess().getOppositeReferenceDeclarationQualifiedNameParserRuleCall_4_1_0_1()); }
5085 ruleQualifiedName
5086 { after(grammarAccess.getReferenceDeclarationAccess().getOppositeReferenceDeclarationQualifiedNameParserRuleCall_4_1_0_1()); }
5087 )
5088 { after(grammarAccess.getReferenceDeclarationAccess().getOppositeReferenceDeclarationCrossReference_4_1_0()); }
5089 )
5090;
5091finally {
5092 restoreStackSize(stackSize);
5093}
5094
5095rule__PredicateDefinition__ErrorAssignment_0_0_0
5096 @init {
5097 int stackSize = keepStackSize();
5098 }
5099:
5100 (
5101 { before(grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_0_0_0()); }
5102 (
5103 { before(grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_0_0_0()); }
5104 'error'
5105 { after(grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_0_0_0()); }
5106 )
5107 { after(grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_0_0_0()); }
5108 )
5109;
5110finally {
5111 restoreStackSize(stackSize);
5112}
5113
5114rule__PredicateDefinition__NameAssignment_1
5115 @init {
5116 int stackSize = keepStackSize();
5117 }
5118:
5119 (
5120 { before(grammarAccess.getPredicateDefinitionAccess().getNameIdentifierParserRuleCall_1_0()); }
5121 ruleIdentifier
5122 { after(grammarAccess.getPredicateDefinitionAccess().getNameIdentifierParserRuleCall_1_0()); }
5123 )
5124;
5125finally {
5126 restoreStackSize(stackSize);
5127}
5128
5129rule__PredicateDefinition__ParametersAssignment_3_0
5130 @init {
5131 int stackSize = keepStackSize();
5132 }
5133:
5134 (
5135 { before(grammarAccess.getPredicateDefinitionAccess().getParametersParameterParserRuleCall_3_0_0()); }
5136 ruleParameter
5137 { after(grammarAccess.getPredicateDefinitionAccess().getParametersParameterParserRuleCall_3_0_0()); }
5138 )
5139;
5140finally {
5141 restoreStackSize(stackSize);
5142}
5143
5144rule__PredicateDefinition__ParametersAssignment_3_1_1
5145 @init {
5146 int stackSize = keepStackSize();
5147 }
5148:
5149 (
5150 { before(grammarAccess.getPredicateDefinitionAccess().getParametersParameterParserRuleCall_3_1_1_0()); }
5151 ruleParameter
5152 { after(grammarAccess.getPredicateDefinitionAccess().getParametersParameterParserRuleCall_3_1_1_0()); }
5153 )
5154;
5155finally {
5156 restoreStackSize(stackSize);
5157}
5158
5159rule__PredicateDefinition__BodiesAssignment_5_1
5160 @init {
5161 int stackSize = keepStackSize();
5162 }
5163:
5164 (
5165 { before(grammarAccess.getPredicateDefinitionAccess().getBodiesConjunctionParserRuleCall_5_1_0()); }
5166 ruleConjunction
5167 { after(grammarAccess.getPredicateDefinitionAccess().getBodiesConjunctionParserRuleCall_5_1_0()); }
5168 )
5169;
5170finally {
5171 restoreStackSize(stackSize);
5172}
5173
5174rule__PredicateDefinition__BodiesAssignment_5_2_1
5175 @init {
5176 int stackSize = keepStackSize();
5177 }
5178:
5179 (
5180 { before(grammarAccess.getPredicateDefinitionAccess().getBodiesConjunctionParserRuleCall_5_2_1_0()); }
5181 ruleConjunction
5182 { after(grammarAccess.getPredicateDefinitionAccess().getBodiesConjunctionParserRuleCall_5_2_1_0()); }
5183 )
5184;
5185finally {
5186 restoreStackSize(stackSize);
5187}
5188
5189rule__Parameter__ParameterTypeAssignment_0
5190 @init {
5191 int stackSize = keepStackSize();
5192 }
5193:
5194 (
5195 { before(grammarAccess.getParameterAccess().getParameterTypeRelationCrossReference_0_0()); }
5196 (
5197 { before(grammarAccess.getParameterAccess().getParameterTypeRelationQualifiedNameParserRuleCall_0_0_1()); }
5198 ruleQualifiedName
5199 { after(grammarAccess.getParameterAccess().getParameterTypeRelationQualifiedNameParserRuleCall_0_0_1()); }
5200 )
5201 { after(grammarAccess.getParameterAccess().getParameterTypeRelationCrossReference_0_0()); }
5202 )
5203;
5204finally {
5205 restoreStackSize(stackSize);
5206}
5207
5208rule__Parameter__NameAssignment_1
5209 @init {
5210 int stackSize = keepStackSize();
5211 }
5212:
5213 (
5214 { before(grammarAccess.getParameterAccess().getNameIdentifierParserRuleCall_1_0()); }
5215 ruleIdentifier
5216 { after(grammarAccess.getParameterAccess().getNameIdentifierParserRuleCall_1_0()); }
5217 )
5218;
5219finally {
5220 restoreStackSize(stackSize);
5221}
5222
5223rule__Conjunction__LiteralsAssignment_0
5224 @init {
5225 int stackSize = keepStackSize();
5226 }
5227:
5228 (
5229 { before(grammarAccess.getConjunctionAccess().getLiteralsLiteralParserRuleCall_0_0()); }
5230 ruleLiteral
5231 { after(grammarAccess.getConjunctionAccess().getLiteralsLiteralParserRuleCall_0_0()); }
5232 )
5233;
5234finally {
5235 restoreStackSize(stackSize);
5236}
5237
5238rule__Conjunction__LiteralsAssignment_1_1
5239 @init {
5240 int stackSize = keepStackSize();
5241 }
5242:
5243 (
5244 { before(grammarAccess.getConjunctionAccess().getLiteralsLiteralParserRuleCall_1_1_0()); }
5245 ruleLiteral
5246 { after(grammarAccess.getConjunctionAccess().getLiteralsLiteralParserRuleCall_1_1_0()); }
5247 )
5248;
5249finally {
5250 restoreStackSize(stackSize);
5251}
5252
5253rule__NegativeLiteral__AtomAssignment_1
5254 @init {
5255 int stackSize = keepStackSize();
5256 }
5257:
5258 (
5259 { before(grammarAccess.getNegativeLiteralAccess().getAtomAtomParserRuleCall_1_0()); }
5260 ruleAtom
5261 { after(grammarAccess.getNegativeLiteralAccess().getAtomAtomParserRuleCall_1_0()); }
5262 )
5263;
5264finally {
5265 restoreStackSize(stackSize);
5266}
5267
5268rule__Atom__RelationAssignment_0
5269 @init {
5270 int stackSize = keepStackSize();
5271 }
5272:
5273 (
5274 { before(grammarAccess.getAtomAccess().getRelationRelationCrossReference_0_0()); }
5275 (
5276 { before(grammarAccess.getAtomAccess().getRelationRelationQualifiedNameParserRuleCall_0_0_1()); }
5277 ruleQualifiedName
5278 { after(grammarAccess.getAtomAccess().getRelationRelationQualifiedNameParserRuleCall_0_0_1()); }
5279 )
5280 { after(grammarAccess.getAtomAccess().getRelationRelationCrossReference_0_0()); }
5281 )
5282;
5283finally {
5284 restoreStackSize(stackSize);
5285}
5286
5287rule__Atom__TransitiveClosureAssignment_1
5288 @init {
5289 int stackSize = keepStackSize();
5290 }
5291:
5292 (
5293 { before(grammarAccess.getAtomAccess().getTransitiveClosurePlusSignKeyword_1_0()); }
5294 (
5295 { before(grammarAccess.getAtomAccess().getTransitiveClosurePlusSignKeyword_1_0()); }
5296 '+'
5297 { after(grammarAccess.getAtomAccess().getTransitiveClosurePlusSignKeyword_1_0()); }
5298 )
5299 { after(grammarAccess.getAtomAccess().getTransitiveClosurePlusSignKeyword_1_0()); }
5300 )
5301;
5302finally {
5303 restoreStackSize(stackSize);
5304}
5305
5306rule__Atom__ArgumentsAssignment_3_0
5307 @init {
5308 int stackSize = keepStackSize();
5309 }
5310:
5311 (
5312 { before(grammarAccess.getAtomAccess().getArgumentsArgumentParserRuleCall_3_0_0()); }
5313 ruleArgument
5314 { after(grammarAccess.getAtomAccess().getArgumentsArgumentParserRuleCall_3_0_0()); }
5315 )
5316;
5317finally {
5318 restoreStackSize(stackSize);
5319}
5320
5321rule__Atom__ArgumentsAssignment_3_1_1
5322 @init {
5323 int stackSize = keepStackSize();
5324 }
5325:
5326 (
5327 { before(grammarAccess.getAtomAccess().getArgumentsArgumentParserRuleCall_3_1_1_0()); }
5328 ruleArgument
5329 { after(grammarAccess.getAtomAccess().getArgumentsArgumentParserRuleCall_3_1_1_0()); }
5330 )
5331;
5332finally {
5333 restoreStackSize(stackSize);
5334}
5335
5336rule__VariableOrNodeArgument__VariableOrNodeAssignment
5337 @init {
5338 int stackSize = keepStackSize();
5339 }
5340:
5341 (
5342 { before(grammarAccess.getVariableOrNodeArgumentAccess().getVariableOrNodeVariableOrNodeCrossReference_0()); }
5343 (
5344 { before(grammarAccess.getVariableOrNodeArgumentAccess().getVariableOrNodeVariableOrNodeQualifiedNameParserRuleCall_0_1()); }
5345 ruleQualifiedName
5346 { after(grammarAccess.getVariableOrNodeArgumentAccess().getVariableOrNodeVariableOrNodeQualifiedNameParserRuleCall_0_1()); }
5347 )
5348 { after(grammarAccess.getVariableOrNodeArgumentAccess().getVariableOrNodeVariableOrNodeCrossReference_0()); }
5349 )
5350;
5351finally {
5352 restoreStackSize(stackSize);
5353}
5354
5355rule__ConstantArgument__ConstantAssignment
5356 @init {
5357 int stackSize = keepStackSize();
5358 }
5359:
5360 (
5361 { before(grammarAccess.getConstantArgumentAccess().getConstantConstantParserRuleCall_0()); }
5362 ruleConstant
5363 { after(grammarAccess.getConstantArgumentAccess().getConstantConstantParserRuleCall_0()); }
5364 )
5365;
5366finally {
5367 restoreStackSize(stackSize);
5368}
5369
5370rule__Assertion__RelationAssignment_0_0_0
5371 @init {
5372 int stackSize = keepStackSize();
5373 }
5374:
5375 (
5376 { before(grammarAccess.getAssertionAccess().getRelationRelationCrossReference_0_0_0_0()); }
5377 (
5378 { before(grammarAccess.getAssertionAccess().getRelationRelationQualifiedNameParserRuleCall_0_0_0_0_1()); }
5379 ruleQualifiedName
5380 { after(grammarAccess.getAssertionAccess().getRelationRelationQualifiedNameParserRuleCall_0_0_0_0_1()); }
5381 )
5382 { after(grammarAccess.getAssertionAccess().getRelationRelationCrossReference_0_0_0_0()); }
5383 )
5384;
5385finally {
5386 restoreStackSize(stackSize);
5387}
5388
5389rule__Assertion__ArgumentsAssignment_0_0_2_0
5390 @init {
5391 int stackSize = keepStackSize();
5392 }
5393:
5394 (
5395 { before(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_0_2_0_0()); }
5396 ruleAssertionArgument
5397 { after(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_0_2_0_0()); }
5398 )
5399;
5400finally {
5401 restoreStackSize(stackSize);
5402}
5403
5404rule__Assertion__ArgumentsAssignment_0_0_2_1_1
5405 @init {
5406 int stackSize = keepStackSize();
5407 }
5408:
5409 (
5410 { before(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_0_2_1_1_0()); }
5411 ruleAssertionArgument
5412 { after(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_0_2_1_1_0()); }
5413 )
5414;
5415finally {
5416 restoreStackSize(stackSize);
5417}
5418
5419rule__Assertion__ValueAssignment_0_0_5
5420 @init {
5421 int stackSize = keepStackSize();
5422 }
5423:
5424 (
5425 { before(grammarAccess.getAssertionAccess().getValueLogicValueEnumRuleCall_0_0_5_0()); }
5426 ruleLogicValue
5427 { after(grammarAccess.getAssertionAccess().getValueLogicValueEnumRuleCall_0_0_5_0()); }
5428 )
5429;
5430finally {
5431 restoreStackSize(stackSize);
5432}
5433
5434rule__Assertion__ValueAssignment_0_1_0
5435 @init {
5436 int stackSize = keepStackSize();
5437 }
5438:
5439 (
5440 { before(grammarAccess.getAssertionAccess().getValueShortLogicValueEnumRuleCall_0_1_0_0()); }
5441 ruleShortLogicValue
5442 { after(grammarAccess.getAssertionAccess().getValueShortLogicValueEnumRuleCall_0_1_0_0()); }
5443 )
5444;
5445finally {
5446 restoreStackSize(stackSize);
5447}
5448
5449rule__Assertion__RelationAssignment_0_1_1
5450 @init {
5451 int stackSize = keepStackSize();
5452 }
5453:
5454 (
5455 { before(grammarAccess.getAssertionAccess().getRelationRelationCrossReference_0_1_1_0()); }
5456 (
5457 { before(grammarAccess.getAssertionAccess().getRelationRelationQualifiedNameParserRuleCall_0_1_1_0_1()); }
5458 ruleQualifiedName
5459 { after(grammarAccess.getAssertionAccess().getRelationRelationQualifiedNameParserRuleCall_0_1_1_0_1()); }
5460 )
5461 { after(grammarAccess.getAssertionAccess().getRelationRelationCrossReference_0_1_1_0()); }
5462 )
5463;
5464finally {
5465 restoreStackSize(stackSize);
5466}
5467
5468rule__Assertion__ArgumentsAssignment_0_1_3_0
5469 @init {
5470 int stackSize = keepStackSize();
5471 }
5472:
5473 (
5474 { before(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_1_3_0_0()); }
5475 ruleAssertionArgument
5476 { after(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_1_3_0_0()); }
5477 )
5478;
5479finally {
5480 restoreStackSize(stackSize);
5481}
5482
5483rule__Assertion__ArgumentsAssignment_0_1_3_1_1
5484 @init {
5485 int stackSize = keepStackSize();
5486 }
5487:
5488 (
5489 { before(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_1_3_1_1_0()); }
5490 ruleAssertionArgument
5491 { after(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_1_3_1_1_0()); }
5492 )
5493;
5494finally {
5495 restoreStackSize(stackSize);
5496}
5497
5498rule__NodeAssertionArgument__NodeAssignment
5499 @init {
5500 int stackSize = keepStackSize();
5501 }
5502:
5503 (
5504 { before(grammarAccess.getNodeAssertionArgumentAccess().getNodeNodeCrossReference_0()); }
5505 (
5506 { before(grammarAccess.getNodeAssertionArgumentAccess().getNodeNodeQualifiedNameParserRuleCall_0_1()); }
5507 ruleQualifiedName
5508 { after(grammarAccess.getNodeAssertionArgumentAccess().getNodeNodeQualifiedNameParserRuleCall_0_1()); }
5509 )
5510 { after(grammarAccess.getNodeAssertionArgumentAccess().getNodeNodeCrossReference_0()); }
5511 )
5512;
5513finally {
5514 restoreStackSize(stackSize);
5515}
5516
5517rule__ConstantAssertionArgument__ConstantAssignment
5518 @init {
5519 int stackSize = keepStackSize();
5520 }
5521:
5522 (
5523 { before(grammarAccess.getConstantAssertionArgumentAccess().getConstantConstantParserRuleCall_0()); }
5524 ruleConstant
5525 { after(grammarAccess.getConstantAssertionArgumentAccess().getConstantConstantParserRuleCall_0()); }
5526 )
5527;
5528finally {
5529 restoreStackSize(stackSize);
5530}
5531
5532rule__NodeValueAssertion__NodeAssignment_0
5533 @init {
5534 int stackSize = keepStackSize();
5535 }
5536:
5537 (
5538 { before(grammarAccess.getNodeValueAssertionAccess().getNodeNodeCrossReference_0_0()); }
5539 (
5540 { before(grammarAccess.getNodeValueAssertionAccess().getNodeNodeQualifiedNameParserRuleCall_0_0_1()); }
5541 ruleQualifiedName
5542 { after(grammarAccess.getNodeValueAssertionAccess().getNodeNodeQualifiedNameParserRuleCall_0_0_1()); }
5543 )
5544 { after(grammarAccess.getNodeValueAssertionAccess().getNodeNodeCrossReference_0_0()); }
5545 )
5546;
5547finally {
5548 restoreStackSize(stackSize);
5549}
5550
5551rule__NodeValueAssertion__ValueAssignment_2
5552 @init {
5553 int stackSize = keepStackSize();
5554 }
5555:
5556 (
5557 { before(grammarAccess.getNodeValueAssertionAccess().getValueConstantParserRuleCall_2_0()); }
5558 ruleConstant
5559 { after(grammarAccess.getNodeValueAssertionAccess().getValueConstantParserRuleCall_2_0()); }
5560 )
5561;
5562finally {
5563 restoreStackSize(stackSize);
5564}
5565
5566rule__IntConstant__IntValueAssignment
5567 @init {
5568 int stackSize = keepStackSize();
5569 }
5570:
5571 (
5572 { before(grammarAccess.getIntConstantAccess().getIntValueIntegerParserRuleCall_0()); }
5573 ruleInteger
5574 { after(grammarAccess.getIntConstantAccess().getIntValueIntegerParserRuleCall_0()); }
5575 )
5576;
5577finally {
5578 restoreStackSize(stackSize);
5579}
5580
5581rule__RealConstant__RealValueAssignment
5582 @init {
5583 int stackSize = keepStackSize();
5584 }
5585:
5586 (
5587 { before(grammarAccess.getRealConstantAccess().getRealValueRealParserRuleCall_0()); }
5588 ruleReal
5589 { after(grammarAccess.getRealConstantAccess().getRealValueRealParserRuleCall_0()); }
5590 )
5591;
5592finally {
5593 restoreStackSize(stackSize);
5594}
5595
5596rule__StringConstant__StringValueAssignment
5597 @init {
5598 int stackSize = keepStackSize();
5599 }
5600:
5601 (
5602 { before(grammarAccess.getStringConstantAccess().getStringValueSTRINGTerminalRuleCall_0()); }
5603 RULE_STRING
5604 { after(grammarAccess.getStringConstantAccess().getStringValueSTRINGTerminalRuleCall_0()); }
5605 )
5606;
5607finally {
5608 restoreStackSize(stackSize);
5609}
5610
5611rule__ScopeDeclaration__TypeScopesAssignment_1
5612 @init {
5613 int stackSize = keepStackSize();
5614 }
5615:
5616 (
5617 { before(grammarAccess.getScopeDeclarationAccess().getTypeScopesTypeScopeParserRuleCall_1_0()); }
5618 ruleTypeScope
5619 { after(grammarAccess.getScopeDeclarationAccess().getTypeScopesTypeScopeParserRuleCall_1_0()); }
5620 )
5621;
5622finally {
5623 restoreStackSize(stackSize);
5624}
5625
5626rule__ScopeDeclaration__TypeScopesAssignment_2_1
5627 @init {
5628 int stackSize = keepStackSize();
5629 }
5630:
5631 (
5632 { before(grammarAccess.getScopeDeclarationAccess().getTypeScopesTypeScopeParserRuleCall_2_1_0()); }
5633 ruleTypeScope
5634 { after(grammarAccess.getScopeDeclarationAccess().getTypeScopesTypeScopeParserRuleCall_2_1_0()); }
5635 )
5636;
5637finally {
5638 restoreStackSize(stackSize);
5639}
5640
5641rule__TypeScope__TargetTypeAssignment_0
5642 @init {
5643 int stackSize = keepStackSize();
5644 }
5645:
5646 (
5647 { before(grammarAccess.getTypeScopeAccess().getTargetTypeClassDeclarationCrossReference_0_0()); }
5648 (
5649 { before(grammarAccess.getTypeScopeAccess().getTargetTypeClassDeclarationIDTerminalRuleCall_0_0_1()); }
5650 RULE_ID
5651 { after(grammarAccess.getTypeScopeAccess().getTargetTypeClassDeclarationIDTerminalRuleCall_0_0_1()); }
5652 )
5653 { after(grammarAccess.getTypeScopeAccess().getTargetTypeClassDeclarationCrossReference_0_0()); }
5654 )
5655;
5656finally {
5657 restoreStackSize(stackSize);
5658}
5659
5660rule__TypeScope__IncrementAssignment_1_0
5661 @init {
5662 int stackSize = keepStackSize();
5663 }
5664:
5665 (
5666 { before(grammarAccess.getTypeScopeAccess().getIncrementPlusSignEqualsSignKeyword_1_0_0()); }
5667 (
5668 { before(grammarAccess.getTypeScopeAccess().getIncrementPlusSignEqualsSignKeyword_1_0_0()); }
5669 '+='
5670 { after(grammarAccess.getTypeScopeAccess().getIncrementPlusSignEqualsSignKeyword_1_0_0()); }
5671 )
5672 { after(grammarAccess.getTypeScopeAccess().getIncrementPlusSignEqualsSignKeyword_1_0_0()); }
5673 )
5674;
5675finally {
5676 restoreStackSize(stackSize);
5677}
5678
5679rule__TypeScope__MultiplicityAssignment_2
5680 @init {
5681 int stackSize = keepStackSize();
5682 }
5683:
5684 (
5685 { before(grammarAccess.getTypeScopeAccess().getMultiplicityDefiniteMultiplicityParserRuleCall_2_0()); }
5686 ruleDefiniteMultiplicity
5687 { after(grammarAccess.getTypeScopeAccess().getMultiplicityDefiniteMultiplicityParserRuleCall_2_0()); }
5688 )
5689;
5690finally {
5691 restoreStackSize(stackSize);
5692}
5693
5694rule__RangeMultiplicity__LowerBoundAssignment_0
5695 @init {
5696 int stackSize = keepStackSize();
5697 }
5698:
5699 (
5700 { before(grammarAccess.getRangeMultiplicityAccess().getLowerBoundINTTerminalRuleCall_0_0()); }
5701 RULE_INT
5702 { after(grammarAccess.getRangeMultiplicityAccess().getLowerBoundINTTerminalRuleCall_0_0()); }
5703 )
5704;
5705finally {
5706 restoreStackSize(stackSize);
5707}
5708
5709rule__RangeMultiplicity__UpperBoundAssignment_2
5710 @init {
5711 int stackSize = keepStackSize();
5712 }
5713:
5714 (
5715 { before(grammarAccess.getRangeMultiplicityAccess().getUpperBoundUpperBoundParserRuleCall_2_0()); }
5716 ruleUpperBound
5717 { after(grammarAccess.getRangeMultiplicityAccess().getUpperBoundUpperBoundParserRuleCall_2_0()); }
5718 )
5719;
5720finally {
5721 restoreStackSize(stackSize);
5722}
5723
5724rule__ExactMultiplicity__ExactValueAssignment
5725 @init {
5726 int stackSize = keepStackSize();
5727 }
5728:
5729 (
5730 { before(grammarAccess.getExactMultiplicityAccess().getExactValueINTTerminalRuleCall_0()); }
5731 RULE_INT
5732 { after(grammarAccess.getExactMultiplicityAccess().getExactValueINTTerminalRuleCall_0()); }
5733 )
5734;
5735finally {
5736 restoreStackSize(stackSize);
5737}
5738
5739RULE_ID : ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
5740
5741RULE_EXPONENTIAL : RULE_INT ('e'|'E') ('+'|'-')? RULE_INT;
5742
5743RULE_STRING : '"' ('\\' .|~(('\\'|'"')))* '"';
5744
5745RULE_QUOTED_ID : '\'' ('\\' .|~(('\\'|'\'')))* '\'';
5746
5747RULE_SL_COMMENT : ('%'|'//') ~(('\n'|'\r'))* ('\r'? '\n')?;
5748
5749RULE_INT : ('0'..'9')+;
5750
5751RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/';
5752
5753RULE_WS : (' '|'\t'|'\r'|'\n')+;
5754
5755RULE_ANY_OTHER : .;
diff --git a/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalProblem.tokens b/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalProblem.tokens
deleted file mode 100644
index d18d6d05..00000000
--- a/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalProblem.tokens
+++ /dev/null
@@ -1,77 +0,0 @@
1'!'=23
2'('=34
3')'=35
4'*'=19
5'+'=45
6'+='=46
7','=14
8'-'=41
9'.'=13
10'..'=39
11':'=37
12':-'=36
13'::'=40
14';'=15
15'='=18
16'?'=24
17'['=31
18']'=32
19'abstract'=42
20'class'=26
21'contains'=43
22'enum'=30
23'error'=44
24'extends'=27
25'false'=21
26'opposite'=33
27'pred'=17
28'problem'=25
29'refers'=16
30'scope'=38
31'true'=20
32'unknown'=22
33'{'=28
34'}'=29
35RULE_ANY_OTHER=12
36RULE_EXPONENTIAL=7
37RULE_ID=6
38RULE_INT=4
39RULE_ML_COMMENT=10
40RULE_QUOTED_ID=5
41RULE_SL_COMMENT=9
42RULE_STRING=8
43RULE_WS=11
44T__13=13
45T__14=14
46T__15=15
47T__16=16
48T__17=17
49T__18=18
50T__19=19
51T__20=20
52T__21=21
53T__22=22
54T__23=23
55T__24=24
56T__25=25
57T__26=26
58T__27=27
59T__28=28
60T__29=29
61T__30=30
62T__31=31
63T__32=32
64T__33=33
65T__34=34
66T__35=35
67T__36=36
68T__37=37
69T__38=38
70T__39=39
71T__40=40
72T__41=41
73T__42=42
74T__43=43
75T__44=44
76T__45=45
77T__46=46
diff --git a/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalProblemLexer.java b/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalProblemLexer.java
deleted file mode 100644
index c6044e0c..00000000
--- a/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalProblemLexer.java
+++ /dev/null
@@ -1,1940 +0,0 @@
1package org.eclipse.viatra.solver.language.ide.contentassist.antlr.internal;
2
3// Hack: Use our own Lexer superclass by means of import.
4// Currently there is no other way to specify the superclass for the lexer.
5import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.Lexer;
6
7
8import org.antlr.runtime.*;
9import java.util.Stack;
10import java.util.List;
11import java.util.ArrayList;
12
13@SuppressWarnings("all")
14public class InternalProblemLexer extends Lexer {
15 public static final int T__19=19;
16 public static final int T__15=15;
17 public static final int T__16=16;
18 public static final int T__17=17;
19 public static final int T__18=18;
20 public static final int T__13=13;
21 public static final int T__14=14;
22 public static final int RULE_EXPONENTIAL=7;
23 public static final int RULE_ID=6;
24 public static final int RULE_QUOTED_ID=5;
25 public static final int T__26=26;
26 public static final int T__27=27;
27 public static final int T__28=28;
28 public static final int RULE_INT=4;
29 public static final int T__29=29;
30 public static final int T__22=22;
31 public static final int RULE_ML_COMMENT=10;
32 public static final int T__23=23;
33 public static final int T__24=24;
34 public static final int T__25=25;
35 public static final int T__20=20;
36 public static final int T__21=21;
37 public static final int RULE_STRING=8;
38 public static final int RULE_SL_COMMENT=9;
39 public static final int T__37=37;
40 public static final int T__38=38;
41 public static final int T__39=39;
42 public static final int T__33=33;
43 public static final int T__34=34;
44 public static final int T__35=35;
45 public static final int T__36=36;
46 public static final int EOF=-1;
47 public static final int T__30=30;
48 public static final int T__31=31;
49 public static final int T__32=32;
50 public static final int RULE_WS=11;
51 public static final int RULE_ANY_OTHER=12;
52 public static final int T__44=44;
53 public static final int T__45=45;
54 public static final int T__46=46;
55 public static final int T__40=40;
56 public static final int T__41=41;
57 public static final int T__42=42;
58 public static final int T__43=43;
59
60 // delegates
61 // delegators
62
63 public InternalProblemLexer() {;}
64 public InternalProblemLexer(CharStream input) {
65 this(input, new RecognizerSharedState());
66 }
67 public InternalProblemLexer(CharStream input, RecognizerSharedState state) {
68 super(input,state);
69
70 }
71 public String getGrammarFileName() { return "InternalProblem.g"; }
72
73 // $ANTLR start "T__13"
74 public final void mT__13() throws RecognitionException {
75 try {
76 int _type = T__13;
77 int _channel = DEFAULT_TOKEN_CHANNEL;
78 // InternalProblem.g:11:7: ( '.' )
79 // InternalProblem.g:11:9: '.'
80 {
81 match('.');
82
83 }
84
85 state.type = _type;
86 state.channel = _channel;
87 }
88 finally {
89 }
90 }
91 // $ANTLR end "T__13"
92
93 // $ANTLR start "T__14"
94 public final void mT__14() throws RecognitionException {
95 try {
96 int _type = T__14;
97 int _channel = DEFAULT_TOKEN_CHANNEL;
98 // InternalProblem.g:12:7: ( ',' )
99 // InternalProblem.g:12:9: ','
100 {
101 match(',');
102
103 }
104
105 state.type = _type;
106 state.channel = _channel;
107 }
108 finally {
109 }
110 }
111 // $ANTLR end "T__14"
112
113 // $ANTLR start "T__15"
114 public final void mT__15() throws RecognitionException {
115 try {
116 int _type = T__15;
117 int _channel = DEFAULT_TOKEN_CHANNEL;
118 // InternalProblem.g:13:7: ( ';' )
119 // InternalProblem.g:13:9: ';'
120 {
121 match(';');
122
123 }
124
125 state.type = _type;
126 state.channel = _channel;
127 }
128 finally {
129 }
130 }
131 // $ANTLR end "T__15"
132
133 // $ANTLR start "T__16"
134 public final void mT__16() throws RecognitionException {
135 try {
136 int _type = T__16;
137 int _channel = DEFAULT_TOKEN_CHANNEL;
138 // InternalProblem.g:14:7: ( 'refers' )
139 // InternalProblem.g:14:9: 'refers'
140 {
141 match("refers");
142
143
144 }
145
146 state.type = _type;
147 state.channel = _channel;
148 }
149 finally {
150 }
151 }
152 // $ANTLR end "T__16"
153
154 // $ANTLR start "T__17"
155 public final void mT__17() throws RecognitionException {
156 try {
157 int _type = T__17;
158 int _channel = DEFAULT_TOKEN_CHANNEL;
159 // InternalProblem.g:15:7: ( 'pred' )
160 // InternalProblem.g:15:9: 'pred'
161 {
162 match("pred");
163
164
165 }
166
167 state.type = _type;
168 state.channel = _channel;
169 }
170 finally {
171 }
172 }
173 // $ANTLR end "T__17"
174
175 // $ANTLR start "T__18"
176 public final void mT__18() throws RecognitionException {
177 try {
178 int _type = T__18;
179 int _channel = DEFAULT_TOKEN_CHANNEL;
180 // InternalProblem.g:16:7: ( '=' )
181 // InternalProblem.g:16:9: '='
182 {
183 match('=');
184
185 }
186
187 state.type = _type;
188 state.channel = _channel;
189 }
190 finally {
191 }
192 }
193 // $ANTLR end "T__18"
194
195 // $ANTLR start "T__19"
196 public final void mT__19() throws RecognitionException {
197 try {
198 int _type = T__19;
199 int _channel = DEFAULT_TOKEN_CHANNEL;
200 // InternalProblem.g:17:7: ( '*' )
201 // InternalProblem.g:17:9: '*'
202 {
203 match('*');
204
205 }
206
207 state.type = _type;
208 state.channel = _channel;
209 }
210 finally {
211 }
212 }
213 // $ANTLR end "T__19"
214
215 // $ANTLR start "T__20"
216 public final void mT__20() throws RecognitionException {
217 try {
218 int _type = T__20;
219 int _channel = DEFAULT_TOKEN_CHANNEL;
220 // InternalProblem.g:18:7: ( 'true' )
221 // InternalProblem.g:18:9: 'true'
222 {
223 match("true");
224
225
226 }
227
228 state.type = _type;
229 state.channel = _channel;
230 }
231 finally {
232 }
233 }
234 // $ANTLR end "T__20"
235
236 // $ANTLR start "T__21"
237 public final void mT__21() throws RecognitionException {
238 try {
239 int _type = T__21;
240 int _channel = DEFAULT_TOKEN_CHANNEL;
241 // InternalProblem.g:19:7: ( 'false' )
242 // InternalProblem.g:19:9: 'false'
243 {
244 match("false");
245
246
247 }
248
249 state.type = _type;
250 state.channel = _channel;
251 }
252 finally {
253 }
254 }
255 // $ANTLR end "T__21"
256
257 // $ANTLR start "T__22"
258 public final void mT__22() throws RecognitionException {
259 try {
260 int _type = T__22;
261 int _channel = DEFAULT_TOKEN_CHANNEL;
262 // InternalProblem.g:20:7: ( 'unknown' )
263 // InternalProblem.g:20:9: 'unknown'
264 {
265 match("unknown");
266
267
268 }
269
270 state.type = _type;
271 state.channel = _channel;
272 }
273 finally {
274 }
275 }
276 // $ANTLR end "T__22"
277
278 // $ANTLR start "T__23"
279 public final void mT__23() throws RecognitionException {
280 try {
281 int _type = T__23;
282 int _channel = DEFAULT_TOKEN_CHANNEL;
283 // InternalProblem.g:21:7: ( '!' )
284 // InternalProblem.g:21:9: '!'
285 {
286 match('!');
287
288 }
289
290 state.type = _type;
291 state.channel = _channel;
292 }
293 finally {
294 }
295 }
296 // $ANTLR end "T__23"
297
298 // $ANTLR start "T__24"
299 public final void mT__24() throws RecognitionException {
300 try {
301 int _type = T__24;
302 int _channel = DEFAULT_TOKEN_CHANNEL;
303 // InternalProblem.g:22:7: ( '?' )
304 // InternalProblem.g:22:9: '?'
305 {
306 match('?');
307
308 }
309
310 state.type = _type;
311 state.channel = _channel;
312 }
313 finally {
314 }
315 }
316 // $ANTLR end "T__24"
317
318 // $ANTLR start "T__25"
319 public final void mT__25() throws RecognitionException {
320 try {
321 int _type = T__25;
322 int _channel = DEFAULT_TOKEN_CHANNEL;
323 // InternalProblem.g:23:7: ( 'problem' )
324 // InternalProblem.g:23:9: 'problem'
325 {
326 match("problem");
327
328
329 }
330
331 state.type = _type;
332 state.channel = _channel;
333 }
334 finally {
335 }
336 }
337 // $ANTLR end "T__25"
338
339 // $ANTLR start "T__26"
340 public final void mT__26() throws RecognitionException {
341 try {
342 int _type = T__26;
343 int _channel = DEFAULT_TOKEN_CHANNEL;
344 // InternalProblem.g:24:7: ( 'class' )
345 // InternalProblem.g:24:9: 'class'
346 {
347 match("class");
348
349
350 }
351
352 state.type = _type;
353 state.channel = _channel;
354 }
355 finally {
356 }
357 }
358 // $ANTLR end "T__26"
359
360 // $ANTLR start "T__27"
361 public final void mT__27() throws RecognitionException {
362 try {
363 int _type = T__27;
364 int _channel = DEFAULT_TOKEN_CHANNEL;
365 // InternalProblem.g:25:7: ( 'extends' )
366 // InternalProblem.g:25:9: 'extends'
367 {
368 match("extends");
369
370
371 }
372
373 state.type = _type;
374 state.channel = _channel;
375 }
376 finally {
377 }
378 }
379 // $ANTLR end "T__27"
380
381 // $ANTLR start "T__28"
382 public final void mT__28() throws RecognitionException {
383 try {
384 int _type = T__28;
385 int _channel = DEFAULT_TOKEN_CHANNEL;
386 // InternalProblem.g:26:7: ( '{' )
387 // InternalProblem.g:26:9: '{'
388 {
389 match('{');
390
391 }
392
393 state.type = _type;
394 state.channel = _channel;
395 }
396 finally {
397 }
398 }
399 // $ANTLR end "T__28"
400
401 // $ANTLR start "T__29"
402 public final void mT__29() throws RecognitionException {
403 try {
404 int _type = T__29;
405 int _channel = DEFAULT_TOKEN_CHANNEL;
406 // InternalProblem.g:27:7: ( '}' )
407 // InternalProblem.g:27:9: '}'
408 {
409 match('}');
410
411 }
412
413 state.type = _type;
414 state.channel = _channel;
415 }
416 finally {
417 }
418 }
419 // $ANTLR end "T__29"
420
421 // $ANTLR start "T__30"
422 public final void mT__30() throws RecognitionException {
423 try {
424 int _type = T__30;
425 int _channel = DEFAULT_TOKEN_CHANNEL;
426 // InternalProblem.g:28:7: ( 'enum' )
427 // InternalProblem.g:28:9: 'enum'
428 {
429 match("enum");
430
431
432 }
433
434 state.type = _type;
435 state.channel = _channel;
436 }
437 finally {
438 }
439 }
440 // $ANTLR end "T__30"
441
442 // $ANTLR start "T__31"
443 public final void mT__31() throws RecognitionException {
444 try {
445 int _type = T__31;
446 int _channel = DEFAULT_TOKEN_CHANNEL;
447 // InternalProblem.g:29:7: ( '[' )
448 // InternalProblem.g:29:9: '['
449 {
450 match('[');
451
452 }
453
454 state.type = _type;
455 state.channel = _channel;
456 }
457 finally {
458 }
459 }
460 // $ANTLR end "T__31"
461
462 // $ANTLR start "T__32"
463 public final void mT__32() throws RecognitionException {
464 try {
465 int _type = T__32;
466 int _channel = DEFAULT_TOKEN_CHANNEL;
467 // InternalProblem.g:30:7: ( ']' )
468 // InternalProblem.g:30:9: ']'
469 {
470 match(']');
471
472 }
473
474 state.type = _type;
475 state.channel = _channel;
476 }
477 finally {
478 }
479 }
480 // $ANTLR end "T__32"
481
482 // $ANTLR start "T__33"
483 public final void mT__33() throws RecognitionException {
484 try {
485 int _type = T__33;
486 int _channel = DEFAULT_TOKEN_CHANNEL;
487 // InternalProblem.g:31:7: ( 'opposite' )
488 // InternalProblem.g:31:9: 'opposite'
489 {
490 match("opposite");
491
492
493 }
494
495 state.type = _type;
496 state.channel = _channel;
497 }
498 finally {
499 }
500 }
501 // $ANTLR end "T__33"
502
503 // $ANTLR start "T__34"
504 public final void mT__34() throws RecognitionException {
505 try {
506 int _type = T__34;
507 int _channel = DEFAULT_TOKEN_CHANNEL;
508 // InternalProblem.g:32:7: ( '(' )
509 // InternalProblem.g:32:9: '('
510 {
511 match('(');
512
513 }
514
515 state.type = _type;
516 state.channel = _channel;
517 }
518 finally {
519 }
520 }
521 // $ANTLR end "T__34"
522
523 // $ANTLR start "T__35"
524 public final void mT__35() throws RecognitionException {
525 try {
526 int _type = T__35;
527 int _channel = DEFAULT_TOKEN_CHANNEL;
528 // InternalProblem.g:33:7: ( ')' )
529 // InternalProblem.g:33:9: ')'
530 {
531 match(')');
532
533 }
534
535 state.type = _type;
536 state.channel = _channel;
537 }
538 finally {
539 }
540 }
541 // $ANTLR end "T__35"
542
543 // $ANTLR start "T__36"
544 public final void mT__36() throws RecognitionException {
545 try {
546 int _type = T__36;
547 int _channel = DEFAULT_TOKEN_CHANNEL;
548 // InternalProblem.g:34:7: ( ':-' )
549 // InternalProblem.g:34:9: ':-'
550 {
551 match(":-");
552
553
554 }
555
556 state.type = _type;
557 state.channel = _channel;
558 }
559 finally {
560 }
561 }
562 // $ANTLR end "T__36"
563
564 // $ANTLR start "T__37"
565 public final void mT__37() throws RecognitionException {
566 try {
567 int _type = T__37;
568 int _channel = DEFAULT_TOKEN_CHANNEL;
569 // InternalProblem.g:35:7: ( ':' )
570 // InternalProblem.g:35:9: ':'
571 {
572 match(':');
573
574 }
575
576 state.type = _type;
577 state.channel = _channel;
578 }
579 finally {
580 }
581 }
582 // $ANTLR end "T__37"
583
584 // $ANTLR start "T__38"
585 public final void mT__38() throws RecognitionException {
586 try {
587 int _type = T__38;
588 int _channel = DEFAULT_TOKEN_CHANNEL;
589 // InternalProblem.g:36:7: ( 'scope' )
590 // InternalProblem.g:36:9: 'scope'
591 {
592 match("scope");
593
594
595 }
596
597 state.type = _type;
598 state.channel = _channel;
599 }
600 finally {
601 }
602 }
603 // $ANTLR end "T__38"
604
605 // $ANTLR start "T__39"
606 public final void mT__39() throws RecognitionException {
607 try {
608 int _type = T__39;
609 int _channel = DEFAULT_TOKEN_CHANNEL;
610 // InternalProblem.g:37:7: ( '..' )
611 // InternalProblem.g:37:9: '..'
612 {
613 match("..");
614
615
616 }
617
618 state.type = _type;
619 state.channel = _channel;
620 }
621 finally {
622 }
623 }
624 // $ANTLR end "T__39"
625
626 // $ANTLR start "T__40"
627 public final void mT__40() throws RecognitionException {
628 try {
629 int _type = T__40;
630 int _channel = DEFAULT_TOKEN_CHANNEL;
631 // InternalProblem.g:38:7: ( '::' )
632 // InternalProblem.g:38:9: '::'
633 {
634 match("::");
635
636
637 }
638
639 state.type = _type;
640 state.channel = _channel;
641 }
642 finally {
643 }
644 }
645 // $ANTLR end "T__40"
646
647 // $ANTLR start "T__41"
648 public final void mT__41() throws RecognitionException {
649 try {
650 int _type = T__41;
651 int _channel = DEFAULT_TOKEN_CHANNEL;
652 // InternalProblem.g:39:7: ( '-' )
653 // InternalProblem.g:39:9: '-'
654 {
655 match('-');
656
657 }
658
659 state.type = _type;
660 state.channel = _channel;
661 }
662 finally {
663 }
664 }
665 // $ANTLR end "T__41"
666
667 // $ANTLR start "T__42"
668 public final void mT__42() throws RecognitionException {
669 try {
670 int _type = T__42;
671 int _channel = DEFAULT_TOKEN_CHANNEL;
672 // InternalProblem.g:40:7: ( 'abstract' )
673 // InternalProblem.g:40:9: 'abstract'
674 {
675 match("abstract");
676
677
678 }
679
680 state.type = _type;
681 state.channel = _channel;
682 }
683 finally {
684 }
685 }
686 // $ANTLR end "T__42"
687
688 // $ANTLR start "T__43"
689 public final void mT__43() throws RecognitionException {
690 try {
691 int _type = T__43;
692 int _channel = DEFAULT_TOKEN_CHANNEL;
693 // InternalProblem.g:41:7: ( 'contains' )
694 // InternalProblem.g:41:9: 'contains'
695 {
696 match("contains");
697
698
699 }
700
701 state.type = _type;
702 state.channel = _channel;
703 }
704 finally {
705 }
706 }
707 // $ANTLR end "T__43"
708
709 // $ANTLR start "T__44"
710 public final void mT__44() throws RecognitionException {
711 try {
712 int _type = T__44;
713 int _channel = DEFAULT_TOKEN_CHANNEL;
714 // InternalProblem.g:42:7: ( 'error' )
715 // InternalProblem.g:42:9: 'error'
716 {
717 match("error");
718
719
720 }
721
722 state.type = _type;
723 state.channel = _channel;
724 }
725 finally {
726 }
727 }
728 // $ANTLR end "T__44"
729
730 // $ANTLR start "T__45"
731 public final void mT__45() throws RecognitionException {
732 try {
733 int _type = T__45;
734 int _channel = DEFAULT_TOKEN_CHANNEL;
735 // InternalProblem.g:43:7: ( '+' )
736 // InternalProblem.g:43:9: '+'
737 {
738 match('+');
739
740 }
741
742 state.type = _type;
743 state.channel = _channel;
744 }
745 finally {
746 }
747 }
748 // $ANTLR end "T__45"
749
750 // $ANTLR start "T__46"
751 public final void mT__46() throws RecognitionException {
752 try {
753 int _type = T__46;
754 int _channel = DEFAULT_TOKEN_CHANNEL;
755 // InternalProblem.g:44:7: ( '+=' )
756 // InternalProblem.g:44:9: '+='
757 {
758 match("+=");
759
760
761 }
762
763 state.type = _type;
764 state.channel = _channel;
765 }
766 finally {
767 }
768 }
769 // $ANTLR end "T__46"
770
771 // $ANTLR start "RULE_ID"
772 public final void mRULE_ID() throws RecognitionException {
773 try {
774 int _type = RULE_ID;
775 int _channel = DEFAULT_TOKEN_CHANNEL;
776 // InternalProblem.g:5739:9: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
777 // InternalProblem.g:5739:11: ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
778 {
779 if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
780 input.consume();
781
782 }
783 else {
784 MismatchedSetException mse = new MismatchedSetException(null,input);
785 recover(mse);
786 throw mse;}
787
788 // InternalProblem.g:5739:35: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
789 loop1:
790 do {
791 int alt1=2;
792 int LA1_0 = input.LA(1);
793
794 if ( ((LA1_0>='0' && LA1_0<='9')||(LA1_0>='A' && LA1_0<='Z')||LA1_0=='_'||(LA1_0>='a' && LA1_0<='z')) ) {
795 alt1=1;
796 }
797
798
799 switch (alt1) {
800 case 1 :
801 // InternalProblem.g:
802 {
803 if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
804 input.consume();
805
806 }
807 else {
808 MismatchedSetException mse = new MismatchedSetException(null,input);
809 recover(mse);
810 throw mse;}
811
812
813 }
814 break;
815
816 default :
817 break loop1;
818 }
819 } while (true);
820
821
822 }
823
824 state.type = _type;
825 state.channel = _channel;
826 }
827 finally {
828 }
829 }
830 // $ANTLR end "RULE_ID"
831
832 // $ANTLR start "RULE_EXPONENTIAL"
833 public final void mRULE_EXPONENTIAL() throws RecognitionException {
834 try {
835 int _type = RULE_EXPONENTIAL;
836 int _channel = DEFAULT_TOKEN_CHANNEL;
837 // InternalProblem.g:5741:18: ( RULE_INT ( 'e' | 'E' ) ( '+' | '-' )? RULE_INT )
838 // InternalProblem.g:5741:20: RULE_INT ( 'e' | 'E' ) ( '+' | '-' )? RULE_INT
839 {
840 mRULE_INT();
841 if ( input.LA(1)=='E'||input.LA(1)=='e' ) {
842 input.consume();
843
844 }
845 else {
846 MismatchedSetException mse = new MismatchedSetException(null,input);
847 recover(mse);
848 throw mse;}
849
850 // InternalProblem.g:5741:39: ( '+' | '-' )?
851 int alt2=2;
852 int LA2_0 = input.LA(1);
853
854 if ( (LA2_0=='+'||LA2_0=='-') ) {
855 alt2=1;
856 }
857 switch (alt2) {
858 case 1 :
859 // InternalProblem.g:
860 {
861 if ( input.LA(1)=='+'||input.LA(1)=='-' ) {
862 input.consume();
863
864 }
865 else {
866 MismatchedSetException mse = new MismatchedSetException(null,input);
867 recover(mse);
868 throw mse;}
869
870
871 }
872 break;
873
874 }
875
876 mRULE_INT();
877
878 }
879
880 state.type = _type;
881 state.channel = _channel;
882 }
883 finally {
884 }
885 }
886 // $ANTLR end "RULE_EXPONENTIAL"
887
888 // $ANTLR start "RULE_STRING"
889 public final void mRULE_STRING() throws RecognitionException {
890 try {
891 int _type = RULE_STRING;
892 int _channel = DEFAULT_TOKEN_CHANNEL;
893 // InternalProblem.g:5743:13: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
894 // InternalProblem.g:5743:15: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
895 {
896 match('\"');
897 // InternalProblem.g:5743:19: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )*
898 loop3:
899 do {
900 int alt3=3;
901 int LA3_0 = input.LA(1);
902
903 if ( (LA3_0=='\\') ) {
904 alt3=1;
905 }
906 else if ( ((LA3_0>='\u0000' && LA3_0<='!')||(LA3_0>='#' && LA3_0<='[')||(LA3_0>=']' && LA3_0<='\uFFFF')) ) {
907 alt3=2;
908 }
909
910
911 switch (alt3) {
912 case 1 :
913 // InternalProblem.g:5743:20: '\\\\' .
914 {
915 match('\\');
916 matchAny();
917
918 }
919 break;
920 case 2 :
921 // InternalProblem.g:5743:27: ~ ( ( '\\\\' | '\"' ) )
922 {
923 if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
924 input.consume();
925
926 }
927 else {
928 MismatchedSetException mse = new MismatchedSetException(null,input);
929 recover(mse);
930 throw mse;}
931
932
933 }
934 break;
935
936 default :
937 break loop3;
938 }
939 } while (true);
940
941 match('\"');
942
943 }
944
945 state.type = _type;
946 state.channel = _channel;
947 }
948 finally {
949 }
950 }
951 // $ANTLR end "RULE_STRING"
952
953 // $ANTLR start "RULE_QUOTED_ID"
954 public final void mRULE_QUOTED_ID() throws RecognitionException {
955 try {
956 int _type = RULE_QUOTED_ID;
957 int _channel = DEFAULT_TOKEN_CHANNEL;
958 // InternalProblem.g:5745:16: ( '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
959 // InternalProblem.g:5745:18: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
960 {
961 match('\'');
962 // InternalProblem.g:5745:23: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )*
963 loop4:
964 do {
965 int alt4=3;
966 int LA4_0 = input.LA(1);
967
968 if ( (LA4_0=='\\') ) {
969 alt4=1;
970 }
971 else if ( ((LA4_0>='\u0000' && LA4_0<='&')||(LA4_0>='(' && LA4_0<='[')||(LA4_0>=']' && LA4_0<='\uFFFF')) ) {
972 alt4=2;
973 }
974
975
976 switch (alt4) {
977 case 1 :
978 // InternalProblem.g:5745:24: '\\\\' .
979 {
980 match('\\');
981 matchAny();
982
983 }
984 break;
985 case 2 :
986 // InternalProblem.g:5745:31: ~ ( ( '\\\\' | '\\'' ) )
987 {
988 if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
989 input.consume();
990
991 }
992 else {
993 MismatchedSetException mse = new MismatchedSetException(null,input);
994 recover(mse);
995 throw mse;}
996
997
998 }
999 break;
1000
1001 default :
1002 break loop4;
1003 }
1004 } while (true);
1005
1006 match('\'');
1007
1008 }
1009
1010 state.type = _type;
1011 state.channel = _channel;
1012 }
1013 finally {
1014 }
1015 }
1016 // $ANTLR end "RULE_QUOTED_ID"
1017
1018 // $ANTLR start "RULE_SL_COMMENT"
1019 public final void mRULE_SL_COMMENT() throws RecognitionException {
1020 try {
1021 int _type = RULE_SL_COMMENT;
1022 int _channel = DEFAULT_TOKEN_CHANNEL;
1023 // InternalProblem.g:5747:17: ( ( '%' | '//' ) (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
1024 // InternalProblem.g:5747:19: ( '%' | '//' ) (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
1025 {
1026 // InternalProblem.g:5747:19: ( '%' | '//' )
1027 int alt5=2;
1028 int LA5_0 = input.LA(1);
1029
1030 if ( (LA5_0=='%') ) {
1031 alt5=1;
1032 }
1033 else if ( (LA5_0=='/') ) {
1034 alt5=2;
1035 }
1036 else {
1037 NoViableAltException nvae =
1038 new NoViableAltException("", 5, 0, input);
1039
1040 throw nvae;
1041 }
1042 switch (alt5) {
1043 case 1 :
1044 // InternalProblem.g:5747:20: '%'
1045 {
1046 match('%');
1047
1048 }
1049 break;
1050 case 2 :
1051 // InternalProblem.g:5747:24: '//'
1052 {
1053 match("//");
1054
1055
1056 }
1057 break;
1058
1059 }
1060
1061 // InternalProblem.g:5747:30: (~ ( ( '\\n' | '\\r' ) ) )*
1062 loop6:
1063 do {
1064 int alt6=2;
1065 int LA6_0 = input.LA(1);
1066
1067 if ( ((LA6_0>='\u0000' && LA6_0<='\t')||(LA6_0>='\u000B' && LA6_0<='\f')||(LA6_0>='\u000E' && LA6_0<='\uFFFF')) ) {
1068 alt6=1;
1069 }
1070
1071
1072 switch (alt6) {
1073 case 1 :
1074 // InternalProblem.g:5747:30: ~ ( ( '\\n' | '\\r' ) )
1075 {
1076 if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
1077 input.consume();
1078
1079 }
1080 else {
1081 MismatchedSetException mse = new MismatchedSetException(null,input);
1082 recover(mse);
1083 throw mse;}
1084
1085
1086 }
1087 break;
1088
1089 default :
1090 break loop6;
1091 }
1092 } while (true);
1093
1094 // InternalProblem.g:5747:46: ( ( '\\r' )? '\\n' )?
1095 int alt8=2;
1096 int LA8_0 = input.LA(1);
1097
1098 if ( (LA8_0=='\n'||LA8_0=='\r') ) {
1099 alt8=1;
1100 }
1101 switch (alt8) {
1102 case 1 :
1103 // InternalProblem.g:5747:47: ( '\\r' )? '\\n'
1104 {
1105 // InternalProblem.g:5747:47: ( '\\r' )?
1106 int alt7=2;
1107 int LA7_0 = input.LA(1);
1108
1109 if ( (LA7_0=='\r') ) {
1110 alt7=1;
1111 }
1112 switch (alt7) {
1113 case 1 :
1114 // InternalProblem.g:5747:47: '\\r'
1115 {
1116 match('\r');
1117
1118 }
1119 break;
1120
1121 }
1122
1123 match('\n');
1124
1125 }
1126 break;
1127
1128 }
1129
1130
1131 }
1132
1133 state.type = _type;
1134 state.channel = _channel;
1135 }
1136 finally {
1137 }
1138 }
1139 // $ANTLR end "RULE_SL_COMMENT"
1140
1141 // $ANTLR start "RULE_INT"
1142 public final void mRULE_INT() throws RecognitionException {
1143 try {
1144 int _type = RULE_INT;
1145 int _channel = DEFAULT_TOKEN_CHANNEL;
1146 // InternalProblem.g:5749:10: ( ( '0' .. '9' )+ )
1147 // InternalProblem.g:5749:12: ( '0' .. '9' )+
1148 {
1149 // InternalProblem.g:5749:12: ( '0' .. '9' )+
1150 int cnt9=0;
1151 loop9:
1152 do {
1153 int alt9=2;
1154 int LA9_0 = input.LA(1);
1155
1156 if ( ((LA9_0>='0' && LA9_0<='9')) ) {
1157 alt9=1;
1158 }
1159
1160
1161 switch (alt9) {
1162 case 1 :
1163 // InternalProblem.g:5749:13: '0' .. '9'
1164 {
1165 matchRange('0','9');
1166
1167 }
1168 break;
1169
1170 default :
1171 if ( cnt9 >= 1 ) break loop9;
1172 EarlyExitException eee =
1173 new EarlyExitException(9, input);
1174 throw eee;
1175 }
1176 cnt9++;
1177 } while (true);
1178
1179
1180 }
1181
1182 state.type = _type;
1183 state.channel = _channel;
1184 }
1185 finally {
1186 }
1187 }
1188 // $ANTLR end "RULE_INT"
1189
1190 // $ANTLR start "RULE_ML_COMMENT"
1191 public final void mRULE_ML_COMMENT() throws RecognitionException {
1192 try {
1193 int _type = RULE_ML_COMMENT;
1194 int _channel = DEFAULT_TOKEN_CHANNEL;
1195 // InternalProblem.g:5751:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
1196 // InternalProblem.g:5751:19: '/*' ( options {greedy=false; } : . )* '*/'
1197 {
1198 match("/*");
1199
1200 // InternalProblem.g:5751:24: ( options {greedy=false; } : . )*
1201 loop10:
1202 do {
1203 int alt10=2;
1204 int LA10_0 = input.LA(1);
1205
1206 if ( (LA10_0=='*') ) {
1207 int LA10_1 = input.LA(2);
1208
1209 if ( (LA10_1=='/') ) {
1210 alt10=2;
1211 }
1212 else if ( ((LA10_1>='\u0000' && LA10_1<='.')||(LA10_1>='0' && LA10_1<='\uFFFF')) ) {
1213 alt10=1;
1214 }
1215
1216
1217 }
1218 else if ( ((LA10_0>='\u0000' && LA10_0<=')')||(LA10_0>='+' && LA10_0<='\uFFFF')) ) {
1219 alt10=1;
1220 }
1221
1222
1223 switch (alt10) {
1224 case 1 :
1225 // InternalProblem.g:5751:52: .
1226 {
1227 matchAny();
1228
1229 }
1230 break;
1231
1232 default :
1233 break loop10;
1234 }
1235 } while (true);
1236
1237 match("*/");
1238
1239
1240 }
1241
1242 state.type = _type;
1243 state.channel = _channel;
1244 }
1245 finally {
1246 }
1247 }
1248 // $ANTLR end "RULE_ML_COMMENT"
1249
1250 // $ANTLR start "RULE_WS"
1251 public final void mRULE_WS() throws RecognitionException {
1252 try {
1253 int _type = RULE_WS;
1254 int _channel = DEFAULT_TOKEN_CHANNEL;
1255 // InternalProblem.g:5753:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
1256 // InternalProblem.g:5753:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
1257 {
1258 // InternalProblem.g:5753:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
1259 int cnt11=0;
1260 loop11:
1261 do {
1262 int alt11=2;
1263 int LA11_0 = input.LA(1);
1264
1265 if ( ((LA11_0>='\t' && LA11_0<='\n')||LA11_0=='\r'||LA11_0==' ') ) {
1266 alt11=1;
1267 }
1268
1269
1270 switch (alt11) {
1271 case 1 :
1272 // InternalProblem.g:
1273 {
1274 if ( (input.LA(1)>='\t' && input.LA(1)<='\n')||input.LA(1)=='\r'||input.LA(1)==' ' ) {
1275 input.consume();
1276
1277 }
1278 else {
1279 MismatchedSetException mse = new MismatchedSetException(null,input);
1280 recover(mse);
1281 throw mse;}
1282
1283
1284 }
1285 break;
1286
1287 default :
1288 if ( cnt11 >= 1 ) break loop11;
1289 EarlyExitException eee =
1290 new EarlyExitException(11, input);
1291 throw eee;
1292 }
1293 cnt11++;
1294 } while (true);
1295
1296
1297 }
1298
1299 state.type = _type;
1300 state.channel = _channel;
1301 }
1302 finally {
1303 }
1304 }
1305 // $ANTLR end "RULE_WS"
1306
1307 // $ANTLR start "RULE_ANY_OTHER"
1308 public final void mRULE_ANY_OTHER() throws RecognitionException {
1309 try {
1310 int _type = RULE_ANY_OTHER;
1311 int _channel = DEFAULT_TOKEN_CHANNEL;
1312 // InternalProblem.g:5755:16: ( . )
1313 // InternalProblem.g:5755:18: .
1314 {
1315 matchAny();
1316
1317 }
1318
1319 state.type = _type;
1320 state.channel = _channel;
1321 }
1322 finally {
1323 }
1324 }
1325 // $ANTLR end "RULE_ANY_OTHER"
1326
1327 public void mTokens() throws RecognitionException {
1328 // InternalProblem.g:1:8: ( T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | RULE_ID | RULE_EXPONENTIAL | RULE_STRING | RULE_QUOTED_ID | RULE_SL_COMMENT | RULE_INT | RULE_ML_COMMENT | RULE_WS | RULE_ANY_OTHER )
1329 int alt12=43;
1330 alt12 = dfa12.predict(input);
1331 switch (alt12) {
1332 case 1 :
1333 // InternalProblem.g:1:10: T__13
1334 {
1335 mT__13();
1336
1337 }
1338 break;
1339 case 2 :
1340 // InternalProblem.g:1:16: T__14
1341 {
1342 mT__14();
1343
1344 }
1345 break;
1346 case 3 :
1347 // InternalProblem.g:1:22: T__15
1348 {
1349 mT__15();
1350
1351 }
1352 break;
1353 case 4 :
1354 // InternalProblem.g:1:28: T__16
1355 {
1356 mT__16();
1357
1358 }
1359 break;
1360 case 5 :
1361 // InternalProblem.g:1:34: T__17
1362 {
1363 mT__17();
1364
1365 }
1366 break;
1367 case 6 :
1368 // InternalProblem.g:1:40: T__18
1369 {
1370 mT__18();
1371
1372 }
1373 break;
1374 case 7 :
1375 // InternalProblem.g:1:46: T__19
1376 {
1377 mT__19();
1378
1379 }
1380 break;
1381 case 8 :
1382 // InternalProblem.g:1:52: T__20
1383 {
1384 mT__20();
1385
1386 }
1387 break;
1388 case 9 :
1389 // InternalProblem.g:1:58: T__21
1390 {
1391 mT__21();
1392
1393 }
1394 break;
1395 case 10 :
1396 // InternalProblem.g:1:64: T__22
1397 {
1398 mT__22();
1399
1400 }
1401 break;
1402 case 11 :
1403 // InternalProblem.g:1:70: T__23
1404 {
1405 mT__23();
1406
1407 }
1408 break;
1409 case 12 :
1410 // InternalProblem.g:1:76: T__24
1411 {
1412 mT__24();
1413
1414 }
1415 break;
1416 case 13 :
1417 // InternalProblem.g:1:82: T__25
1418 {
1419 mT__25();
1420
1421 }
1422 break;
1423 case 14 :
1424 // InternalProblem.g:1:88: T__26
1425 {
1426 mT__26();
1427
1428 }
1429 break;
1430 case 15 :
1431 // InternalProblem.g:1:94: T__27
1432 {
1433 mT__27();
1434
1435 }
1436 break;
1437 case 16 :
1438 // InternalProblem.g:1:100: T__28
1439 {
1440 mT__28();
1441
1442 }
1443 break;
1444 case 17 :
1445 // InternalProblem.g:1:106: T__29
1446 {
1447 mT__29();
1448
1449 }
1450 break;
1451 case 18 :
1452 // InternalProblem.g:1:112: T__30
1453 {
1454 mT__30();
1455
1456 }
1457 break;
1458 case 19 :
1459 // InternalProblem.g:1:118: T__31
1460 {
1461 mT__31();
1462
1463 }
1464 break;
1465 case 20 :
1466 // InternalProblem.g:1:124: T__32
1467 {
1468 mT__32();
1469
1470 }
1471 break;
1472 case 21 :
1473 // InternalProblem.g:1:130: T__33
1474 {
1475 mT__33();
1476
1477 }
1478 break;
1479 case 22 :
1480 // InternalProblem.g:1:136: T__34
1481 {
1482 mT__34();
1483
1484 }
1485 break;
1486 case 23 :
1487 // InternalProblem.g:1:142: T__35
1488 {
1489 mT__35();
1490
1491 }
1492 break;
1493 case 24 :
1494 // InternalProblem.g:1:148: T__36
1495 {
1496 mT__36();
1497
1498 }
1499 break;
1500 case 25 :
1501 // InternalProblem.g:1:154: T__37
1502 {
1503 mT__37();
1504
1505 }
1506 break;
1507 case 26 :
1508 // InternalProblem.g:1:160: T__38
1509 {
1510 mT__38();
1511
1512 }
1513 break;
1514 case 27 :
1515 // InternalProblem.g:1:166: T__39
1516 {
1517 mT__39();
1518
1519 }
1520 break;
1521 case 28 :
1522 // InternalProblem.g:1:172: T__40
1523 {
1524 mT__40();
1525
1526 }
1527 break;
1528 case 29 :
1529 // InternalProblem.g:1:178: T__41
1530 {
1531 mT__41();
1532
1533 }
1534 break;
1535 case 30 :
1536 // InternalProblem.g:1:184: T__42
1537 {
1538 mT__42();
1539
1540 }
1541 break;
1542 case 31 :
1543 // InternalProblem.g:1:190: T__43
1544 {
1545 mT__43();
1546
1547 }
1548 break;
1549 case 32 :
1550 // InternalProblem.g:1:196: T__44
1551 {
1552 mT__44();
1553
1554 }
1555 break;
1556 case 33 :
1557 // InternalProblem.g:1:202: T__45
1558 {
1559 mT__45();
1560
1561 }
1562 break;
1563 case 34 :
1564 // InternalProblem.g:1:208: T__46
1565 {
1566 mT__46();
1567
1568 }
1569 break;
1570 case 35 :
1571 // InternalProblem.g:1:214: RULE_ID
1572 {
1573 mRULE_ID();
1574
1575 }
1576 break;
1577 case 36 :
1578 // InternalProblem.g:1:222: RULE_EXPONENTIAL
1579 {
1580 mRULE_EXPONENTIAL();
1581
1582 }
1583 break;
1584 case 37 :
1585 // InternalProblem.g:1:239: RULE_STRING
1586 {
1587 mRULE_STRING();
1588
1589 }
1590 break;
1591 case 38 :
1592 // InternalProblem.g:1:251: RULE_QUOTED_ID
1593 {
1594 mRULE_QUOTED_ID();
1595
1596 }
1597 break;
1598 case 39 :
1599 // InternalProblem.g:1:266: RULE_SL_COMMENT
1600 {
1601 mRULE_SL_COMMENT();
1602
1603 }
1604 break;
1605 case 40 :
1606 // InternalProblem.g:1:282: RULE_INT
1607 {
1608 mRULE_INT();
1609
1610 }
1611 break;
1612 case 41 :
1613 // InternalProblem.g:1:291: RULE_ML_COMMENT
1614 {
1615 mRULE_ML_COMMENT();
1616
1617 }
1618 break;
1619 case 42 :
1620 // InternalProblem.g:1:307: RULE_WS
1621 {
1622 mRULE_WS();
1623
1624 }
1625 break;
1626 case 43 :
1627 // InternalProblem.g:1:315: RULE_ANY_OTHER
1628 {
1629 mRULE_ANY_OTHER();
1630
1631 }
1632 break;
1633
1634 }
1635
1636 }
1637
1638
1639 protected DFA12 dfa12 = new DFA12(this);
1640 static final String DFA12_eotS =
1641 "\1\uffff\1\44\2\uffff\2\50\2\uffff\3\50\2\uffff\2\50\4\uffff\1\50\2\uffff\1\77\1\50\1\uffff\1\50\1\104\1\uffff\1\105\2\42\1\uffff\1\42\6\uffff\1\50\1\uffff\1\50\2\uffff\3\50\2\uffff\5\50\4\uffff\1\50\5\uffff\1\50\1\uffff\1\50\3\uffff\1\105\6\uffff\17\50\1\152\1\50\1\154\5\50\1\162\5\50\1\uffff\1\50\1\uffff\1\171\1\50\1\173\2\50\1\uffff\1\176\1\50\1\u0080\1\50\1\u0082\1\50\1\uffff\1\50\1\uffff\2\50\1\uffff\1\50\1\uffff\1\50\1\uffff\1\u0089\1\u008a\1\50\1\u008c\2\50\2\uffff\1\u008f\1\uffff\1\u0090\1\u0091\3\uffff";
1642 static final String DFA12_eofS =
1643 "\u0092\uffff";
1644 static final String DFA12_minS =
1645 "\1\0\1\56\2\uffff\1\145\1\162\2\uffff\1\162\1\141\1\156\2\uffff\1\154\1\156\4\uffff\1\160\2\uffff\1\55\1\143\1\uffff\1\142\1\75\1\uffff\1\60\2\0\1\uffff\1\52\6\uffff\1\146\1\uffff\1\145\2\uffff\1\165\1\154\1\153\2\uffff\1\141\1\156\1\164\1\165\1\162\4\uffff\1\160\5\uffff\1\157\1\uffff\1\163\3\uffff\1\60\6\uffff\1\145\1\144\1\142\1\145\1\163\1\156\1\163\1\164\1\145\1\155\2\157\1\160\1\164\1\162\1\60\1\154\1\60\1\145\1\157\1\163\1\141\1\156\1\60\1\162\1\163\1\145\1\162\1\163\1\uffff\1\145\1\uffff\1\60\1\167\1\60\1\151\1\144\1\uffff\1\60\1\151\1\60\1\141\1\60\1\155\1\uffff\1\156\1\uffff\1\156\1\163\1\uffff\1\164\1\uffff\1\143\1\uffff\2\60\1\163\1\60\1\145\1\164\2\uffff\1\60\1\uffff\2\60\3\uffff";
1646 static final String DFA12_maxS =
1647 "\1\uffff\1\56\2\uffff\1\145\1\162\2\uffff\1\162\1\141\1\156\2\uffff\1\157\1\170\4\uffff\1\160\2\uffff\1\72\1\143\1\uffff\1\142\1\75\1\uffff\1\145\2\uffff\1\uffff\1\57\6\uffff\1\146\1\uffff\1\157\2\uffff\1\165\1\154\1\153\2\uffff\1\141\1\156\1\164\1\165\1\162\4\uffff\1\160\5\uffff\1\157\1\uffff\1\163\3\uffff\1\145\6\uffff\1\145\1\144\1\142\1\145\1\163\1\156\1\163\1\164\1\145\1\155\2\157\1\160\1\164\1\162\1\172\1\154\1\172\1\145\1\157\1\163\1\141\1\156\1\172\1\162\1\163\1\145\1\162\1\163\1\uffff\1\145\1\uffff\1\172\1\167\1\172\1\151\1\144\1\uffff\1\172\1\151\1\172\1\141\1\172\1\155\1\uffff\1\156\1\uffff\1\156\1\163\1\uffff\1\164\1\uffff\1\143\1\uffff\2\172\1\163\1\172\1\145\1\164\2\uffff\1\172\1\uffff\2\172\3\uffff";
1648 static final String DFA12_acceptS =
1649 "\2\uffff\1\2\1\3\2\uffff\1\6\1\7\3\uffff\1\13\1\14\2\uffff\1\20\1\21\1\23\1\24\1\uffff\1\26\1\27\2\uffff\1\35\2\uffff\1\43\3\uffff\1\47\1\uffff\1\52\1\53\1\33\1\1\1\2\1\3\1\uffff\1\43\1\uffff\1\6\1\7\3\uffff\1\13\1\14\5\uffff\1\20\1\21\1\23\1\24\1\uffff\1\26\1\27\1\30\1\34\1\31\1\uffff\1\35\1\uffff\1\42\1\41\1\50\1\uffff\1\44\1\45\1\46\1\47\1\51\1\52\35\uffff\1\5\1\uffff\1\10\5\uffff\1\22\6\uffff\1\11\1\uffff\1\16\2\uffff\1\40\1\uffff\1\32\1\uffff\1\4\6\uffff\1\15\1\12\1\uffff\1\17\2\uffff\1\37\1\25\1\36";
1650 static final String DFA12_specialS =
1651 "\1\1\34\uffff\1\0\1\2\163\uffff}>";
1652 static final String[] DFA12_transitionS = {
1653 "\11\42\2\41\2\42\1\41\22\42\1\41\1\13\1\35\2\42\1\37\1\42\1\36\1\24\1\25\1\7\1\32\1\2\1\30\1\1\1\40\12\34\1\26\1\3\1\42\1\6\1\42\1\14\1\42\32\33\1\21\1\42\1\22\1\42\1\33\1\42\1\31\1\33\1\15\1\33\1\16\1\11\10\33\1\23\1\5\1\33\1\4\1\27\1\10\1\12\5\33\1\17\1\42\1\20\uff82\42",
1654 "\1\43",
1655 "",
1656 "",
1657 "\1\47",
1658 "\1\51",
1659 "",
1660 "",
1661 "\1\54",
1662 "\1\55",
1663 "\1\56",
1664 "",
1665 "",
1666 "\1\61\2\uffff\1\62",
1667 "\1\64\3\uffff\1\65\5\uffff\1\63",
1668 "",
1669 "",
1670 "",
1671 "",
1672 "\1\72",
1673 "",
1674 "",
1675 "\1\75\14\uffff\1\76",
1676 "\1\100",
1677 "",
1678 "\1\102",
1679 "\1\103",
1680 "",
1681 "\12\106\13\uffff\1\107\37\uffff\1\107",
1682 "\0\110",
1683 "\0\111",
1684 "",
1685 "\1\113\4\uffff\1\112",
1686 "",
1687 "",
1688 "",
1689 "",
1690 "",
1691 "",
1692 "\1\115",
1693 "",
1694 "\1\116\11\uffff\1\117",
1695 "",
1696 "",
1697 "\1\120",
1698 "\1\121",
1699 "\1\122",
1700 "",
1701 "",
1702 "\1\123",
1703 "\1\124",
1704 "\1\125",
1705 "\1\126",
1706 "\1\127",
1707 "",
1708 "",
1709 "",
1710 "",
1711 "\1\130",
1712 "",
1713 "",
1714 "",
1715 "",
1716 "",
1717 "\1\131",
1718 "",
1719 "\1\132",
1720 "",
1721 "",
1722 "",
1723 "\12\106\13\uffff\1\107\37\uffff\1\107",
1724 "",
1725 "",
1726 "",
1727 "",
1728 "",
1729 "",
1730 "\1\133",
1731 "\1\134",
1732 "\1\135",
1733 "\1\136",
1734 "\1\137",
1735 "\1\140",
1736 "\1\141",
1737 "\1\142",
1738 "\1\143",
1739 "\1\144",
1740 "\1\145",
1741 "\1\146",
1742 "\1\147",
1743 "\1\150",
1744 "\1\151",
1745 "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50",
1746 "\1\153",
1747 "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50",
1748 "\1\155",
1749 "\1\156",
1750 "\1\157",
1751 "\1\160",
1752 "\1\161",
1753 "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50",
1754 "\1\163",
1755 "\1\164",
1756 "\1\165",
1757 "\1\166",
1758 "\1\167",
1759 "",
1760 "\1\170",
1761 "",
1762 "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50",
1763 "\1\172",
1764 "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50",
1765 "\1\174",
1766 "\1\175",
1767 "",
1768 "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50",
1769 "\1\177",
1770 "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50",
1771 "\1\u0081",
1772 "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50",
1773 "\1\u0083",
1774 "",
1775 "\1\u0084",
1776 "",
1777 "\1\u0085",
1778 "\1\u0086",
1779 "",
1780 "\1\u0087",
1781 "",
1782 "\1\u0088",
1783 "",
1784 "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50",
1785 "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50",
1786 "\1\u008b",
1787 "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50",
1788 "\1\u008d",
1789 "\1\u008e",
1790 "",
1791 "",
1792 "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50",
1793 "",
1794 "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50",
1795 "\12\50\7\uffff\32\50\4\uffff\1\50\1\uffff\32\50",
1796 "",
1797 "",
1798 ""
1799 };
1800
1801 static final short[] DFA12_eot = DFA.unpackEncodedString(DFA12_eotS);
1802 static final short[] DFA12_eof = DFA.unpackEncodedString(DFA12_eofS);
1803 static final char[] DFA12_min = DFA.unpackEncodedStringToUnsignedChars(DFA12_minS);
1804 static final char[] DFA12_max = DFA.unpackEncodedStringToUnsignedChars(DFA12_maxS);
1805 static final short[] DFA12_accept = DFA.unpackEncodedString(DFA12_acceptS);
1806 static final short[] DFA12_special = DFA.unpackEncodedString(DFA12_specialS);
1807 static final short[][] DFA12_transition;
1808
1809 static {
1810 int numStates = DFA12_transitionS.length;
1811 DFA12_transition = new short[numStates][];
1812 for (int i=0; i<numStates; i++) {
1813 DFA12_transition[i] = DFA.unpackEncodedString(DFA12_transitionS[i]);
1814 }
1815 }
1816
1817 class DFA12 extends DFA {
1818
1819 public DFA12(BaseRecognizer recognizer) {
1820 this.recognizer = recognizer;
1821 this.decisionNumber = 12;
1822 this.eot = DFA12_eot;
1823 this.eof = DFA12_eof;
1824 this.min = DFA12_min;
1825 this.max = DFA12_max;
1826 this.accept = DFA12_accept;
1827 this.special = DFA12_special;
1828 this.transition = DFA12_transition;
1829 }
1830 public String getDescription() {
1831 return "1:1: Tokens : ( T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | RULE_ID | RULE_EXPONENTIAL | RULE_STRING | RULE_QUOTED_ID | RULE_SL_COMMENT | RULE_INT | RULE_ML_COMMENT | RULE_WS | RULE_ANY_OTHER );";
1832 }
1833 public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
1834 IntStream input = _input;
1835 int _s = s;
1836 switch ( s ) {
1837 case 0 :
1838 int LA12_29 = input.LA(1);
1839
1840 s = -1;
1841 if ( ((LA12_29>='\u0000' && LA12_29<='\uFFFF')) ) {s = 72;}
1842
1843 else s = 34;
1844
1845 if ( s>=0 ) return s;
1846 break;
1847 case 1 :
1848 int LA12_0 = input.LA(1);
1849
1850 s = -1;
1851 if ( (LA12_0=='.') ) {s = 1;}
1852
1853 else if ( (LA12_0==',') ) {s = 2;}
1854
1855 else if ( (LA12_0==';') ) {s = 3;}
1856
1857 else if ( (LA12_0=='r') ) {s = 4;}
1858
1859 else if ( (LA12_0=='p') ) {s = 5;}
1860
1861 else if ( (LA12_0=='=') ) {s = 6;}
1862
1863 else if ( (LA12_0=='*') ) {s = 7;}
1864
1865 else if ( (LA12_0=='t') ) {s = 8;}
1866
1867 else if ( (LA12_0=='f') ) {s = 9;}
1868
1869 else if ( (LA12_0=='u') ) {s = 10;}
1870
1871 else if ( (LA12_0=='!') ) {s = 11;}
1872
1873 else if ( (LA12_0=='?') ) {s = 12;}
1874
1875 else if ( (LA12_0=='c') ) {s = 13;}
1876
1877 else if ( (LA12_0=='e') ) {s = 14;}
1878
1879 else if ( (LA12_0=='{') ) {s = 15;}
1880
1881 else if ( (LA12_0=='}') ) {s = 16;}
1882
1883 else if ( (LA12_0=='[') ) {s = 17;}
1884
1885 else if ( (LA12_0==']') ) {s = 18;}
1886
1887 else if ( (LA12_0=='o') ) {s = 19;}
1888
1889 else if ( (LA12_0=='(') ) {s = 20;}
1890
1891 else if ( (LA12_0==')') ) {s = 21;}
1892
1893 else if ( (LA12_0==':') ) {s = 22;}
1894
1895 else if ( (LA12_0=='s') ) {s = 23;}
1896
1897 else if ( (LA12_0=='-') ) {s = 24;}
1898
1899 else if ( (LA12_0=='a') ) {s = 25;}
1900
1901 else if ( (LA12_0=='+') ) {s = 26;}
1902
1903 else if ( ((LA12_0>='A' && LA12_0<='Z')||LA12_0=='_'||LA12_0=='b'||LA12_0=='d'||(LA12_0>='g' && LA12_0<='n')||LA12_0=='q'||(LA12_0>='v' && LA12_0<='z')) ) {s = 27;}
1904
1905 else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 28;}
1906
1907 else if ( (LA12_0=='\"') ) {s = 29;}
1908
1909 else if ( (LA12_0=='\'') ) {s = 30;}
1910
1911 else if ( (LA12_0=='%') ) {s = 31;}
1912
1913 else if ( (LA12_0=='/') ) {s = 32;}
1914
1915 else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 33;}
1916
1917 else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||(LA12_0>='#' && LA12_0<='$')||LA12_0=='&'||LA12_0=='<'||LA12_0=='>'||LA12_0=='@'||LA12_0=='\\'||LA12_0=='^'||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 34;}
1918
1919 if ( s>=0 ) return s;
1920 break;
1921 case 2 :
1922 int LA12_30 = input.LA(1);
1923
1924 s = -1;
1925 if ( ((LA12_30>='\u0000' && LA12_30<='\uFFFF')) ) {s = 73;}
1926
1927 else s = 34;
1928
1929 if ( s>=0 ) return s;
1930 break;
1931 }
1932 NoViableAltException nvae =
1933 new NoViableAltException(getDescription(), 12, _s, input);
1934 error(nvae);
1935 throw nvae;
1936 }
1937 }
1938
1939
1940} \ No newline at end of file
diff --git a/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalProblemParser.java b/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalProblemParser.java
deleted file mode 100644
index 20a2d8f7..00000000
--- a/language-ide/src/main/xtext-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalProblemParser.java
+++ /dev/null
@@ -1,17755 +0,0 @@
1package org.eclipse.viatra.solver.language.ide.contentassist.antlr.internal;
2
3import java.io.InputStream;
4import org.eclipse.xtext.*;
5import org.eclipse.xtext.parser.*;
6import org.eclipse.xtext.parser.impl.*;
7import org.eclipse.emf.ecore.util.EcoreUtil;
8import org.eclipse.emf.ecore.EObject;
9import org.eclipse.xtext.parser.antlr.XtextTokenStream;
10import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
11import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
12import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.DFA;
13import org.eclipse.viatra.solver.language.services.ProblemGrammarAccess;
14
15
16
17import org.antlr.runtime.*;
18import java.util.Stack;
19import java.util.List;
20import java.util.ArrayList;
21
22@SuppressWarnings("all")
23public class InternalProblemParser extends AbstractInternalContentAssistParser {
24 public static final String[] tokenNames = new String[] {
25 "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_INT", "RULE_QUOTED_ID", "RULE_ID", "RULE_EXPONENTIAL", "RULE_STRING", "RULE_SL_COMMENT", "RULE_ML_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'.'", "','", "';'", "'refers'", "'pred'", "'='", "'*'", "'true'", "'false'", "'unknown'", "'!'", "'?'", "'problem'", "'class'", "'extends'", "'{'", "'}'", "'enum'", "'['", "']'", "'opposite'", "'('", "')'", "':-'", "':'", "'scope'", "'..'", "'::'", "'-'", "'abstract'", "'contains'", "'error'", "'+'", "'+='"
26 };
27 public static final int T__19=19;
28 public static final int T__15=15;
29 public static final int T__16=16;
30 public static final int T__17=17;
31 public static final int T__18=18;
32 public static final int T__13=13;
33 public static final int T__14=14;
34 public static final int RULE_EXPONENTIAL=7;
35 public static final int RULE_ID=6;
36 public static final int RULE_QUOTED_ID=5;
37 public static final int T__26=26;
38 public static final int T__27=27;
39 public static final int T__28=28;
40 public static final int RULE_INT=4;
41 public static final int T__29=29;
42 public static final int T__22=22;
43 public static final int RULE_ML_COMMENT=10;
44 public static final int T__23=23;
45 public static final int T__24=24;
46 public static final int T__25=25;
47 public static final int T__20=20;
48 public static final int T__21=21;
49 public static final int RULE_STRING=8;
50 public static final int RULE_SL_COMMENT=9;
51 public static final int T__37=37;
52 public static final int T__38=38;
53 public static final int T__39=39;
54 public static final int T__33=33;
55 public static final int T__34=34;
56 public static final int T__35=35;
57 public static final int T__36=36;
58 public static final int EOF=-1;
59 public static final int T__30=30;
60 public static final int T__31=31;
61 public static final int T__32=32;
62 public static final int RULE_WS=11;
63 public static final int RULE_ANY_OTHER=12;
64 public static final int T__44=44;
65 public static final int T__45=45;
66 public static final int T__46=46;
67 public static final int T__40=40;
68 public static final int T__41=41;
69 public static final int T__42=42;
70 public static final int T__43=43;
71
72 // delegates
73 // delegators
74
75
76 public InternalProblemParser(TokenStream input) {
77 this(input, new RecognizerSharedState());
78 }
79 public InternalProblemParser(TokenStream input, RecognizerSharedState state) {
80 super(input, state);
81
82 }
83
84
85 public String[] getTokenNames() { return InternalProblemParser.tokenNames; }
86 public String getGrammarFileName() { return "InternalProblem.g"; }
87
88
89 private ProblemGrammarAccess grammarAccess;
90
91 public void setGrammarAccess(ProblemGrammarAccess grammarAccess) {
92 this.grammarAccess = grammarAccess;
93 }
94
95 @Override
96 protected Grammar getGrammar() {
97 return grammarAccess.getGrammar();
98 }
99
100 @Override
101 protected String getValueForTokenName(String tokenName) {
102 return tokenName;
103 }
104
105
106
107 // $ANTLR start "entryRuleProblem"
108 // InternalProblem.g:53:1: entryRuleProblem : ruleProblem EOF ;
109 public final void entryRuleProblem() throws RecognitionException {
110 try {
111 // InternalProblem.g:54:1: ( ruleProblem EOF )
112 // InternalProblem.g:55:1: ruleProblem EOF
113 {
114 before(grammarAccess.getProblemRule());
115 pushFollow(FOLLOW_1);
116 ruleProblem();
117
118 state._fsp--;
119
120 after(grammarAccess.getProblemRule());
121 match(input,EOF,FOLLOW_2);
122
123 }
124
125 }
126 catch (RecognitionException re) {
127 reportError(re);
128 recover(input,re);
129 }
130 finally {
131 }
132 return ;
133 }
134 // $ANTLR end "entryRuleProblem"
135
136
137 // $ANTLR start "ruleProblem"
138 // InternalProblem.g:62:1: ruleProblem : ( ( rule__Problem__Group__0 ) ) ;
139 public final void ruleProblem() throws RecognitionException {
140
141 int stackSize = keepStackSize();
142
143 try {
144 // InternalProblem.g:66:2: ( ( ( rule__Problem__Group__0 ) ) )
145 // InternalProblem.g:67:2: ( ( rule__Problem__Group__0 ) )
146 {
147 // InternalProblem.g:67:2: ( ( rule__Problem__Group__0 ) )
148 // InternalProblem.g:68:3: ( rule__Problem__Group__0 )
149 {
150 before(grammarAccess.getProblemAccess().getGroup());
151 // InternalProblem.g:69:3: ( rule__Problem__Group__0 )
152 // InternalProblem.g:69:4: rule__Problem__Group__0
153 {
154 pushFollow(FOLLOW_2);
155 rule__Problem__Group__0();
156
157 state._fsp--;
158
159
160 }
161
162 after(grammarAccess.getProblemAccess().getGroup());
163
164 }
165
166
167 }
168
169 }
170 catch (RecognitionException re) {
171 reportError(re);
172 recover(input,re);
173 }
174 finally {
175
176 restoreStackSize(stackSize);
177
178 }
179 return ;
180 }
181 // $ANTLR end "ruleProblem"
182
183
184 // $ANTLR start "entryRuleStatement"
185 // InternalProblem.g:78:1: entryRuleStatement : ruleStatement EOF ;
186 public final void entryRuleStatement() throws RecognitionException {
187 try {
188 // InternalProblem.g:79:1: ( ruleStatement EOF )
189 // InternalProblem.g:80:1: ruleStatement EOF
190 {
191 before(grammarAccess.getStatementRule());
192 pushFollow(FOLLOW_1);
193 ruleStatement();
194
195 state._fsp--;
196
197 after(grammarAccess.getStatementRule());
198 match(input,EOF,FOLLOW_2);
199
200 }
201
202 }
203 catch (RecognitionException re) {
204 reportError(re);
205 recover(input,re);
206 }
207 finally {
208 }
209 return ;
210 }
211 // $ANTLR end "entryRuleStatement"
212
213
214 // $ANTLR start "ruleStatement"
215 // InternalProblem.g:87:1: ruleStatement : ( ( rule__Statement__Alternatives ) ) ;
216 public final void ruleStatement() throws RecognitionException {
217
218 int stackSize = keepStackSize();
219
220 try {
221 // InternalProblem.g:91:2: ( ( ( rule__Statement__Alternatives ) ) )
222 // InternalProblem.g:92:2: ( ( rule__Statement__Alternatives ) )
223 {
224 // InternalProblem.g:92:2: ( ( rule__Statement__Alternatives ) )
225 // InternalProblem.g:93:3: ( rule__Statement__Alternatives )
226 {
227 before(grammarAccess.getStatementAccess().getAlternatives());
228 // InternalProblem.g:94:3: ( rule__Statement__Alternatives )
229 // InternalProblem.g:94:4: rule__Statement__Alternatives
230 {
231 pushFollow(FOLLOW_2);
232 rule__Statement__Alternatives();
233
234 state._fsp--;
235
236
237 }
238
239 after(grammarAccess.getStatementAccess().getAlternatives());
240
241 }
242
243
244 }
245
246 }
247 catch (RecognitionException re) {
248 reportError(re);
249 recover(input,re);
250 }
251 finally {
252
253 restoreStackSize(stackSize);
254
255 }
256 return ;
257 }
258 // $ANTLR end "ruleStatement"
259
260
261 // $ANTLR start "entryRuleClassDeclaration"
262 // InternalProblem.g:103:1: entryRuleClassDeclaration : ruleClassDeclaration EOF ;
263 public final void entryRuleClassDeclaration() throws RecognitionException {
264 try {
265 // InternalProblem.g:104:1: ( ruleClassDeclaration EOF )
266 // InternalProblem.g:105:1: ruleClassDeclaration EOF
267 {
268 before(grammarAccess.getClassDeclarationRule());
269 pushFollow(FOLLOW_1);
270 ruleClassDeclaration();
271
272 state._fsp--;
273
274 after(grammarAccess.getClassDeclarationRule());
275 match(input,EOF,FOLLOW_2);
276
277 }
278
279 }
280 catch (RecognitionException re) {
281 reportError(re);
282 recover(input,re);
283 }
284 finally {
285 }
286 return ;
287 }
288 // $ANTLR end "entryRuleClassDeclaration"
289
290
291 // $ANTLR start "ruleClassDeclaration"
292 // InternalProblem.g:112:1: ruleClassDeclaration : ( ( rule__ClassDeclaration__Group__0 ) ) ;
293 public final void ruleClassDeclaration() throws RecognitionException {
294
295 int stackSize = keepStackSize();
296
297 try {
298 // InternalProblem.g:116:2: ( ( ( rule__ClassDeclaration__Group__0 ) ) )
299 // InternalProblem.g:117:2: ( ( rule__ClassDeclaration__Group__0 ) )
300 {
301 // InternalProblem.g:117:2: ( ( rule__ClassDeclaration__Group__0 ) )
302 // InternalProblem.g:118:3: ( rule__ClassDeclaration__Group__0 )
303 {
304 before(grammarAccess.getClassDeclarationAccess().getGroup());
305 // InternalProblem.g:119:3: ( rule__ClassDeclaration__Group__0 )
306 // InternalProblem.g:119:4: rule__ClassDeclaration__Group__0
307 {
308 pushFollow(FOLLOW_2);
309 rule__ClassDeclaration__Group__0();
310
311 state._fsp--;
312
313
314 }
315
316 after(grammarAccess.getClassDeclarationAccess().getGroup());
317
318 }
319
320
321 }
322
323 }
324 catch (RecognitionException re) {
325 reportError(re);
326 recover(input,re);
327 }
328 finally {
329
330 restoreStackSize(stackSize);
331
332 }
333 return ;
334 }
335 // $ANTLR end "ruleClassDeclaration"
336
337
338 // $ANTLR start "entryRuleEnumDeclaration"
339 // InternalProblem.g:128:1: entryRuleEnumDeclaration : ruleEnumDeclaration EOF ;
340 public final void entryRuleEnumDeclaration() throws RecognitionException {
341 try {
342 // InternalProblem.g:129:1: ( ruleEnumDeclaration EOF )
343 // InternalProblem.g:130:1: ruleEnumDeclaration EOF
344 {
345 before(grammarAccess.getEnumDeclarationRule());
346 pushFollow(FOLLOW_1);
347 ruleEnumDeclaration();
348
349 state._fsp--;
350
351 after(grammarAccess.getEnumDeclarationRule());
352 match(input,EOF,FOLLOW_2);
353
354 }
355
356 }
357 catch (RecognitionException re) {
358 reportError(re);
359 recover(input,re);
360 }
361 finally {
362 }
363 return ;
364 }
365 // $ANTLR end "entryRuleEnumDeclaration"
366
367
368 // $ANTLR start "ruleEnumDeclaration"
369 // InternalProblem.g:137:1: ruleEnumDeclaration : ( ( rule__EnumDeclaration__Group__0 ) ) ;
370 public final void ruleEnumDeclaration() throws RecognitionException {
371
372 int stackSize = keepStackSize();
373
374 try {
375 // InternalProblem.g:141:2: ( ( ( rule__EnumDeclaration__Group__0 ) ) )
376 // InternalProblem.g:142:2: ( ( rule__EnumDeclaration__Group__0 ) )
377 {
378 // InternalProblem.g:142:2: ( ( rule__EnumDeclaration__Group__0 ) )
379 // InternalProblem.g:143:3: ( rule__EnumDeclaration__Group__0 )
380 {
381 before(grammarAccess.getEnumDeclarationAccess().getGroup());
382 // InternalProblem.g:144:3: ( rule__EnumDeclaration__Group__0 )
383 // InternalProblem.g:144:4: rule__EnumDeclaration__Group__0
384 {
385 pushFollow(FOLLOW_2);
386 rule__EnumDeclaration__Group__0();
387
388 state._fsp--;
389
390
391 }
392
393 after(grammarAccess.getEnumDeclarationAccess().getGroup());
394
395 }
396
397
398 }
399
400 }
401 catch (RecognitionException re) {
402 reportError(re);
403 recover(input,re);
404 }
405 finally {
406
407 restoreStackSize(stackSize);
408
409 }
410 return ;
411 }
412 // $ANTLR end "ruleEnumDeclaration"
413
414
415 // $ANTLR start "entryRuleEnumLiteral"
416 // InternalProblem.g:153:1: entryRuleEnumLiteral : ruleEnumLiteral EOF ;
417 public final void entryRuleEnumLiteral() throws RecognitionException {
418 try {
419 // InternalProblem.g:154:1: ( ruleEnumLiteral EOF )
420 // InternalProblem.g:155:1: ruleEnumLiteral EOF
421 {
422 before(grammarAccess.getEnumLiteralRule());
423 pushFollow(FOLLOW_1);
424 ruleEnumLiteral();
425
426 state._fsp--;
427
428 after(grammarAccess.getEnumLiteralRule());
429 match(input,EOF,FOLLOW_2);
430
431 }
432
433 }
434 catch (RecognitionException re) {
435 reportError(re);
436 recover(input,re);
437 }
438 finally {
439 }
440 return ;
441 }
442 // $ANTLR end "entryRuleEnumLiteral"
443
444
445 // $ANTLR start "ruleEnumLiteral"
446 // InternalProblem.g:162:1: ruleEnumLiteral : ( ( rule__EnumLiteral__NameAssignment ) ) ;
447 public final void ruleEnumLiteral() throws RecognitionException {
448
449 int stackSize = keepStackSize();
450
451 try {
452 // InternalProblem.g:166:2: ( ( ( rule__EnumLiteral__NameAssignment ) ) )
453 // InternalProblem.g:167:2: ( ( rule__EnumLiteral__NameAssignment ) )
454 {
455 // InternalProblem.g:167:2: ( ( rule__EnumLiteral__NameAssignment ) )
456 // InternalProblem.g:168:3: ( rule__EnumLiteral__NameAssignment )
457 {
458 before(grammarAccess.getEnumLiteralAccess().getNameAssignment());
459 // InternalProblem.g:169:3: ( rule__EnumLiteral__NameAssignment )
460 // InternalProblem.g:169:4: rule__EnumLiteral__NameAssignment
461 {
462 pushFollow(FOLLOW_2);
463 rule__EnumLiteral__NameAssignment();
464
465 state._fsp--;
466
467
468 }
469
470 after(grammarAccess.getEnumLiteralAccess().getNameAssignment());
471
472 }
473
474
475 }
476
477 }
478 catch (RecognitionException re) {
479 reportError(re);
480 recover(input,re);
481 }
482 finally {
483
484 restoreStackSize(stackSize);
485
486 }
487 return ;
488 }
489 // $ANTLR end "ruleEnumLiteral"
490
491
492 // $ANTLR start "entryRuleReferenceDeclaration"
493 // InternalProblem.g:178:1: entryRuleReferenceDeclaration : ruleReferenceDeclaration EOF ;
494 public final void entryRuleReferenceDeclaration() throws RecognitionException {
495 try {
496 // InternalProblem.g:179:1: ( ruleReferenceDeclaration EOF )
497 // InternalProblem.g:180:1: ruleReferenceDeclaration EOF
498 {
499 before(grammarAccess.getReferenceDeclarationRule());
500 pushFollow(FOLLOW_1);
501 ruleReferenceDeclaration();
502
503 state._fsp--;
504
505 after(grammarAccess.getReferenceDeclarationRule());
506 match(input,EOF,FOLLOW_2);
507
508 }
509
510 }
511 catch (RecognitionException re) {
512 reportError(re);
513 recover(input,re);
514 }
515 finally {
516 }
517 return ;
518 }
519 // $ANTLR end "entryRuleReferenceDeclaration"
520
521
522 // $ANTLR start "ruleReferenceDeclaration"
523 // InternalProblem.g:187:1: ruleReferenceDeclaration : ( ( rule__ReferenceDeclaration__Group__0 ) ) ;
524 public final void ruleReferenceDeclaration() throws RecognitionException {
525
526 int stackSize = keepStackSize();
527
528 try {
529 // InternalProblem.g:191:2: ( ( ( rule__ReferenceDeclaration__Group__0 ) ) )
530 // InternalProblem.g:192:2: ( ( rule__ReferenceDeclaration__Group__0 ) )
531 {
532 // InternalProblem.g:192:2: ( ( rule__ReferenceDeclaration__Group__0 ) )
533 // InternalProblem.g:193:3: ( rule__ReferenceDeclaration__Group__0 )
534 {
535 before(grammarAccess.getReferenceDeclarationAccess().getGroup());
536 // InternalProblem.g:194:3: ( rule__ReferenceDeclaration__Group__0 )
537 // InternalProblem.g:194:4: rule__ReferenceDeclaration__Group__0
538 {
539 pushFollow(FOLLOW_2);
540 rule__ReferenceDeclaration__Group__0();
541
542 state._fsp--;
543
544
545 }
546
547 after(grammarAccess.getReferenceDeclarationAccess().getGroup());
548
549 }
550
551
552 }
553
554 }
555 catch (RecognitionException re) {
556 reportError(re);
557 recover(input,re);
558 }
559 finally {
560
561 restoreStackSize(stackSize);
562
563 }
564 return ;
565 }
566 // $ANTLR end "ruleReferenceDeclaration"
567
568
569 // $ANTLR start "entryRulePredicateDefinition"
570 // InternalProblem.g:203:1: entryRulePredicateDefinition : rulePredicateDefinition EOF ;
571 public final void entryRulePredicateDefinition() throws RecognitionException {
572 try {
573 // InternalProblem.g:204:1: ( rulePredicateDefinition EOF )
574 // InternalProblem.g:205:1: rulePredicateDefinition EOF
575 {
576 before(grammarAccess.getPredicateDefinitionRule());
577 pushFollow(FOLLOW_1);
578 rulePredicateDefinition();
579
580 state._fsp--;
581
582 after(grammarAccess.getPredicateDefinitionRule());
583 match(input,EOF,FOLLOW_2);
584
585 }
586
587 }
588 catch (RecognitionException re) {
589 reportError(re);
590 recover(input,re);
591 }
592 finally {
593 }
594 return ;
595 }
596 // $ANTLR end "entryRulePredicateDefinition"
597
598
599 // $ANTLR start "rulePredicateDefinition"
600 // InternalProblem.g:212:1: rulePredicateDefinition : ( ( rule__PredicateDefinition__Group__0 ) ) ;
601 public final void rulePredicateDefinition() throws RecognitionException {
602
603 int stackSize = keepStackSize();
604
605 try {
606 // InternalProblem.g:216:2: ( ( ( rule__PredicateDefinition__Group__0 ) ) )
607 // InternalProblem.g:217:2: ( ( rule__PredicateDefinition__Group__0 ) )
608 {
609 // InternalProblem.g:217:2: ( ( rule__PredicateDefinition__Group__0 ) )
610 // InternalProblem.g:218:3: ( rule__PredicateDefinition__Group__0 )
611 {
612 before(grammarAccess.getPredicateDefinitionAccess().getGroup());
613 // InternalProblem.g:219:3: ( rule__PredicateDefinition__Group__0 )
614 // InternalProblem.g:219:4: rule__PredicateDefinition__Group__0
615 {
616 pushFollow(FOLLOW_2);
617 rule__PredicateDefinition__Group__0();
618
619 state._fsp--;
620
621
622 }
623
624 after(grammarAccess.getPredicateDefinitionAccess().getGroup());
625
626 }
627
628
629 }
630
631 }
632 catch (RecognitionException re) {
633 reportError(re);
634 recover(input,re);
635 }
636 finally {
637
638 restoreStackSize(stackSize);
639
640 }
641 return ;
642 }
643 // $ANTLR end "rulePredicateDefinition"
644
645
646 // $ANTLR start "entryRuleParameter"
647 // InternalProblem.g:228:1: entryRuleParameter : ruleParameter EOF ;
648 public final void entryRuleParameter() throws RecognitionException {
649 try {
650 // InternalProblem.g:229:1: ( ruleParameter EOF )
651 // InternalProblem.g:230:1: ruleParameter EOF
652 {
653 before(grammarAccess.getParameterRule());
654 pushFollow(FOLLOW_1);
655 ruleParameter();
656
657 state._fsp--;
658
659 after(grammarAccess.getParameterRule());
660 match(input,EOF,FOLLOW_2);
661
662 }
663
664 }
665 catch (RecognitionException re) {
666 reportError(re);
667 recover(input,re);
668 }
669 finally {
670 }
671 return ;
672 }
673 // $ANTLR end "entryRuleParameter"
674
675
676 // $ANTLR start "ruleParameter"
677 // InternalProblem.g:237:1: ruleParameter : ( ( rule__Parameter__Group__0 ) ) ;
678 public final void ruleParameter() throws RecognitionException {
679
680 int stackSize = keepStackSize();
681
682 try {
683 // InternalProblem.g:241:2: ( ( ( rule__Parameter__Group__0 ) ) )
684 // InternalProblem.g:242:2: ( ( rule__Parameter__Group__0 ) )
685 {
686 // InternalProblem.g:242:2: ( ( rule__Parameter__Group__0 ) )
687 // InternalProblem.g:243:3: ( rule__Parameter__Group__0 )
688 {
689 before(grammarAccess.getParameterAccess().getGroup());
690 // InternalProblem.g:244:3: ( rule__Parameter__Group__0 )
691 // InternalProblem.g:244:4: rule__Parameter__Group__0
692 {
693 pushFollow(FOLLOW_2);
694 rule__Parameter__Group__0();
695
696 state._fsp--;
697
698
699 }
700
701 after(grammarAccess.getParameterAccess().getGroup());
702
703 }
704
705
706 }
707
708 }
709 catch (RecognitionException re) {
710 reportError(re);
711 recover(input,re);
712 }
713 finally {
714
715 restoreStackSize(stackSize);
716
717 }
718 return ;
719 }
720 // $ANTLR end "ruleParameter"
721
722
723 // $ANTLR start "entryRuleConjunction"
724 // InternalProblem.g:253:1: entryRuleConjunction : ruleConjunction EOF ;
725 public final void entryRuleConjunction() throws RecognitionException {
726 try {
727 // InternalProblem.g:254:1: ( ruleConjunction EOF )
728 // InternalProblem.g:255:1: ruleConjunction EOF
729 {
730 before(grammarAccess.getConjunctionRule());
731 pushFollow(FOLLOW_1);
732 ruleConjunction();
733
734 state._fsp--;
735
736 after(grammarAccess.getConjunctionRule());
737 match(input,EOF,FOLLOW_2);
738
739 }
740
741 }
742 catch (RecognitionException re) {
743 reportError(re);
744 recover(input,re);
745 }
746 finally {
747 }
748 return ;
749 }
750 // $ANTLR end "entryRuleConjunction"
751
752
753 // $ANTLR start "ruleConjunction"
754 // InternalProblem.g:262:1: ruleConjunction : ( ( rule__Conjunction__Group__0 ) ) ;
755 public final void ruleConjunction() throws RecognitionException {
756
757 int stackSize = keepStackSize();
758
759 try {
760 // InternalProblem.g:266:2: ( ( ( rule__Conjunction__Group__0 ) ) )
761 // InternalProblem.g:267:2: ( ( rule__Conjunction__Group__0 ) )
762 {
763 // InternalProblem.g:267:2: ( ( rule__Conjunction__Group__0 ) )
764 // InternalProblem.g:268:3: ( rule__Conjunction__Group__0 )
765 {
766 before(grammarAccess.getConjunctionAccess().getGroup());
767 // InternalProblem.g:269:3: ( rule__Conjunction__Group__0 )
768 // InternalProblem.g:269:4: rule__Conjunction__Group__0
769 {
770 pushFollow(FOLLOW_2);
771 rule__Conjunction__Group__0();
772
773 state._fsp--;
774
775
776 }
777
778 after(grammarAccess.getConjunctionAccess().getGroup());
779
780 }
781
782
783 }
784
785 }
786 catch (RecognitionException re) {
787 reportError(re);
788 recover(input,re);
789 }
790 finally {
791
792 restoreStackSize(stackSize);
793
794 }
795 return ;
796 }
797 // $ANTLR end "ruleConjunction"
798
799
800 // $ANTLR start "entryRuleLiteral"
801 // InternalProblem.g:278:1: entryRuleLiteral : ruleLiteral EOF ;
802 public final void entryRuleLiteral() throws RecognitionException {
803 try {
804 // InternalProblem.g:279:1: ( ruleLiteral EOF )
805 // InternalProblem.g:280:1: ruleLiteral EOF
806 {
807 before(grammarAccess.getLiteralRule());
808 pushFollow(FOLLOW_1);
809 ruleLiteral();
810
811 state._fsp--;
812
813 after(grammarAccess.getLiteralRule());
814 match(input,EOF,FOLLOW_2);
815
816 }
817
818 }
819 catch (RecognitionException re) {
820 reportError(re);
821 recover(input,re);
822 }
823 finally {
824 }
825 return ;
826 }
827 // $ANTLR end "entryRuleLiteral"
828
829
830 // $ANTLR start "ruleLiteral"
831 // InternalProblem.g:287:1: ruleLiteral : ( ( rule__Literal__Alternatives ) ) ;
832 public final void ruleLiteral() throws RecognitionException {
833
834 int stackSize = keepStackSize();
835
836 try {
837 // InternalProblem.g:291:2: ( ( ( rule__Literal__Alternatives ) ) )
838 // InternalProblem.g:292:2: ( ( rule__Literal__Alternatives ) )
839 {
840 // InternalProblem.g:292:2: ( ( rule__Literal__Alternatives ) )
841 // InternalProblem.g:293:3: ( rule__Literal__Alternatives )
842 {
843 before(grammarAccess.getLiteralAccess().getAlternatives());
844 // InternalProblem.g:294:3: ( rule__Literal__Alternatives )
845 // InternalProblem.g:294:4: rule__Literal__Alternatives
846 {
847 pushFollow(FOLLOW_2);
848 rule__Literal__Alternatives();
849
850 state._fsp--;
851
852
853 }
854
855 after(grammarAccess.getLiteralAccess().getAlternatives());
856
857 }
858
859
860 }
861
862 }
863 catch (RecognitionException re) {
864 reportError(re);
865 recover(input,re);
866 }
867 finally {
868
869 restoreStackSize(stackSize);
870
871 }
872 return ;
873 }
874 // $ANTLR end "ruleLiteral"
875
876
877 // $ANTLR start "entryRuleNegativeLiteral"
878 // InternalProblem.g:303:1: entryRuleNegativeLiteral : ruleNegativeLiteral EOF ;
879 public final void entryRuleNegativeLiteral() throws RecognitionException {
880 try {
881 // InternalProblem.g:304:1: ( ruleNegativeLiteral EOF )
882 // InternalProblem.g:305:1: ruleNegativeLiteral EOF
883 {
884 before(grammarAccess.getNegativeLiteralRule());
885 pushFollow(FOLLOW_1);
886 ruleNegativeLiteral();
887
888 state._fsp--;
889
890 after(grammarAccess.getNegativeLiteralRule());
891 match(input,EOF,FOLLOW_2);
892
893 }
894
895 }
896 catch (RecognitionException re) {
897 reportError(re);
898 recover(input,re);
899 }
900 finally {
901 }
902 return ;
903 }
904 // $ANTLR end "entryRuleNegativeLiteral"
905
906
907 // $ANTLR start "ruleNegativeLiteral"
908 // InternalProblem.g:312:1: ruleNegativeLiteral : ( ( rule__NegativeLiteral__Group__0 ) ) ;
909 public final void ruleNegativeLiteral() throws RecognitionException {
910
911 int stackSize = keepStackSize();
912
913 try {
914 // InternalProblem.g:316:2: ( ( ( rule__NegativeLiteral__Group__0 ) ) )
915 // InternalProblem.g:317:2: ( ( rule__NegativeLiteral__Group__0 ) )
916 {
917 // InternalProblem.g:317:2: ( ( rule__NegativeLiteral__Group__0 ) )
918 // InternalProblem.g:318:3: ( rule__NegativeLiteral__Group__0 )
919 {
920 before(grammarAccess.getNegativeLiteralAccess().getGroup());
921 // InternalProblem.g:319:3: ( rule__NegativeLiteral__Group__0 )
922 // InternalProblem.g:319:4: rule__NegativeLiteral__Group__0
923 {
924 pushFollow(FOLLOW_2);
925 rule__NegativeLiteral__Group__0();
926
927 state._fsp--;
928
929
930 }
931
932 after(grammarAccess.getNegativeLiteralAccess().getGroup());
933
934 }
935
936
937 }
938
939 }
940 catch (RecognitionException re) {
941 reportError(re);
942 recover(input,re);
943 }
944 finally {
945
946 restoreStackSize(stackSize);
947
948 }
949 return ;
950 }
951 // $ANTLR end "ruleNegativeLiteral"
952
953
954 // $ANTLR start "entryRuleAtom"
955 // InternalProblem.g:328:1: entryRuleAtom : ruleAtom EOF ;
956 public final void entryRuleAtom() throws RecognitionException {
957 try {
958 // InternalProblem.g:329:1: ( ruleAtom EOF )
959 // InternalProblem.g:330:1: ruleAtom EOF
960 {
961 before(grammarAccess.getAtomRule());
962 pushFollow(FOLLOW_1);
963 ruleAtom();
964
965 state._fsp--;
966
967 after(grammarAccess.getAtomRule());
968 match(input,EOF,FOLLOW_2);
969
970 }
971
972 }
973 catch (RecognitionException re) {
974 reportError(re);
975 recover(input,re);
976 }
977 finally {
978 }
979 return ;
980 }
981 // $ANTLR end "entryRuleAtom"
982
983
984 // $ANTLR start "ruleAtom"
985 // InternalProblem.g:337:1: ruleAtom : ( ( rule__Atom__Group__0 ) ) ;
986 public final void ruleAtom() throws RecognitionException {
987
988 int stackSize = keepStackSize();
989
990 try {
991 // InternalProblem.g:341:2: ( ( ( rule__Atom__Group__0 ) ) )
992 // InternalProblem.g:342:2: ( ( rule__Atom__Group__0 ) )
993 {
994 // InternalProblem.g:342:2: ( ( rule__Atom__Group__0 ) )
995 // InternalProblem.g:343:3: ( rule__Atom__Group__0 )
996 {
997 before(grammarAccess.getAtomAccess().getGroup());
998 // InternalProblem.g:344:3: ( rule__Atom__Group__0 )
999 // InternalProblem.g:344:4: rule__Atom__Group__0
1000 {
1001 pushFollow(FOLLOW_2);
1002 rule__Atom__Group__0();
1003
1004 state._fsp--;
1005
1006
1007 }
1008
1009 after(grammarAccess.getAtomAccess().getGroup());
1010
1011 }
1012
1013
1014 }
1015
1016 }
1017 catch (RecognitionException re) {
1018 reportError(re);
1019 recover(input,re);
1020 }
1021 finally {
1022
1023 restoreStackSize(stackSize);
1024
1025 }
1026 return ;
1027 }
1028 // $ANTLR end "ruleAtom"
1029
1030
1031 // $ANTLR start "entryRuleArgument"
1032 // InternalProblem.g:353:1: entryRuleArgument : ruleArgument EOF ;
1033 public final void entryRuleArgument() throws RecognitionException {
1034 try {
1035 // InternalProblem.g:354:1: ( ruleArgument EOF )
1036 // InternalProblem.g:355:1: ruleArgument EOF
1037 {
1038 before(grammarAccess.getArgumentRule());
1039 pushFollow(FOLLOW_1);
1040 ruleArgument();
1041
1042 state._fsp--;
1043
1044 after(grammarAccess.getArgumentRule());
1045 match(input,EOF,FOLLOW_2);
1046
1047 }
1048
1049 }
1050 catch (RecognitionException re) {
1051 reportError(re);
1052 recover(input,re);
1053 }
1054 finally {
1055 }
1056 return ;
1057 }
1058 // $ANTLR end "entryRuleArgument"
1059
1060
1061 // $ANTLR start "ruleArgument"
1062 // InternalProblem.g:362:1: ruleArgument : ( ( rule__Argument__Alternatives ) ) ;
1063 public final void ruleArgument() throws RecognitionException {
1064
1065 int stackSize = keepStackSize();
1066
1067 try {
1068 // InternalProblem.g:366:2: ( ( ( rule__Argument__Alternatives ) ) )
1069 // InternalProblem.g:367:2: ( ( rule__Argument__Alternatives ) )
1070 {
1071 // InternalProblem.g:367:2: ( ( rule__Argument__Alternatives ) )
1072 // InternalProblem.g:368:3: ( rule__Argument__Alternatives )
1073 {
1074 before(grammarAccess.getArgumentAccess().getAlternatives());
1075 // InternalProblem.g:369:3: ( rule__Argument__Alternatives )
1076 // InternalProblem.g:369:4: rule__Argument__Alternatives
1077 {
1078 pushFollow(FOLLOW_2);
1079 rule__Argument__Alternatives();
1080
1081 state._fsp--;
1082
1083
1084 }
1085
1086 after(grammarAccess.getArgumentAccess().getAlternatives());
1087
1088 }
1089
1090
1091 }
1092
1093 }
1094 catch (RecognitionException re) {
1095 reportError(re);
1096 recover(input,re);
1097 }
1098 finally {
1099
1100 restoreStackSize(stackSize);
1101
1102 }
1103 return ;
1104 }
1105 // $ANTLR end "ruleArgument"
1106
1107
1108 // $ANTLR start "entryRuleVariableOrNodeArgument"
1109 // InternalProblem.g:378:1: entryRuleVariableOrNodeArgument : ruleVariableOrNodeArgument EOF ;
1110 public final void entryRuleVariableOrNodeArgument() throws RecognitionException {
1111 try {
1112 // InternalProblem.g:379:1: ( ruleVariableOrNodeArgument EOF )
1113 // InternalProblem.g:380:1: ruleVariableOrNodeArgument EOF
1114 {
1115 before(grammarAccess.getVariableOrNodeArgumentRule());
1116 pushFollow(FOLLOW_1);
1117 ruleVariableOrNodeArgument();
1118
1119 state._fsp--;
1120
1121 after(grammarAccess.getVariableOrNodeArgumentRule());
1122 match(input,EOF,FOLLOW_2);
1123
1124 }
1125
1126 }
1127 catch (RecognitionException re) {
1128 reportError(re);
1129 recover(input,re);
1130 }
1131 finally {
1132 }
1133 return ;
1134 }
1135 // $ANTLR end "entryRuleVariableOrNodeArgument"
1136
1137
1138 // $ANTLR start "ruleVariableOrNodeArgument"
1139 // InternalProblem.g:387:1: ruleVariableOrNodeArgument : ( ( rule__VariableOrNodeArgument__VariableOrNodeAssignment ) ) ;
1140 public final void ruleVariableOrNodeArgument() throws RecognitionException {
1141
1142 int stackSize = keepStackSize();
1143
1144 try {
1145 // InternalProblem.g:391:2: ( ( ( rule__VariableOrNodeArgument__VariableOrNodeAssignment ) ) )
1146 // InternalProblem.g:392:2: ( ( rule__VariableOrNodeArgument__VariableOrNodeAssignment ) )
1147 {
1148 // InternalProblem.g:392:2: ( ( rule__VariableOrNodeArgument__VariableOrNodeAssignment ) )
1149 // InternalProblem.g:393:3: ( rule__VariableOrNodeArgument__VariableOrNodeAssignment )
1150 {
1151 before(grammarAccess.getVariableOrNodeArgumentAccess().getVariableOrNodeAssignment());
1152 // InternalProblem.g:394:3: ( rule__VariableOrNodeArgument__VariableOrNodeAssignment )
1153 // InternalProblem.g:394:4: rule__VariableOrNodeArgument__VariableOrNodeAssignment
1154 {
1155 pushFollow(FOLLOW_2);
1156 rule__VariableOrNodeArgument__VariableOrNodeAssignment();
1157
1158 state._fsp--;
1159
1160
1161 }
1162
1163 after(grammarAccess.getVariableOrNodeArgumentAccess().getVariableOrNodeAssignment());
1164
1165 }
1166
1167
1168 }
1169
1170 }
1171 catch (RecognitionException re) {
1172 reportError(re);
1173 recover(input,re);
1174 }
1175 finally {
1176
1177 restoreStackSize(stackSize);
1178
1179 }
1180 return ;
1181 }
1182 // $ANTLR end "ruleVariableOrNodeArgument"
1183
1184
1185 // $ANTLR start "entryRuleConstantArgument"
1186 // InternalProblem.g:403:1: entryRuleConstantArgument : ruleConstantArgument EOF ;
1187 public final void entryRuleConstantArgument() throws RecognitionException {
1188 try {
1189 // InternalProblem.g:404:1: ( ruleConstantArgument EOF )
1190 // InternalProblem.g:405:1: ruleConstantArgument EOF
1191 {
1192 before(grammarAccess.getConstantArgumentRule());
1193 pushFollow(FOLLOW_1);
1194 ruleConstantArgument();
1195
1196 state._fsp--;
1197
1198 after(grammarAccess.getConstantArgumentRule());
1199 match(input,EOF,FOLLOW_2);
1200
1201 }
1202
1203 }
1204 catch (RecognitionException re) {
1205 reportError(re);
1206 recover(input,re);
1207 }
1208 finally {
1209 }
1210 return ;
1211 }
1212 // $ANTLR end "entryRuleConstantArgument"
1213
1214
1215 // $ANTLR start "ruleConstantArgument"
1216 // InternalProblem.g:412:1: ruleConstantArgument : ( ( rule__ConstantArgument__ConstantAssignment ) ) ;
1217 public final void ruleConstantArgument() throws RecognitionException {
1218
1219 int stackSize = keepStackSize();
1220
1221 try {
1222 // InternalProblem.g:416:2: ( ( ( rule__ConstantArgument__ConstantAssignment ) ) )
1223 // InternalProblem.g:417:2: ( ( rule__ConstantArgument__ConstantAssignment ) )
1224 {
1225 // InternalProblem.g:417:2: ( ( rule__ConstantArgument__ConstantAssignment ) )
1226 // InternalProblem.g:418:3: ( rule__ConstantArgument__ConstantAssignment )
1227 {
1228 before(grammarAccess.getConstantArgumentAccess().getConstantAssignment());
1229 // InternalProblem.g:419:3: ( rule__ConstantArgument__ConstantAssignment )
1230 // InternalProblem.g:419:4: rule__ConstantArgument__ConstantAssignment
1231 {
1232 pushFollow(FOLLOW_2);
1233 rule__ConstantArgument__ConstantAssignment();
1234
1235 state._fsp--;
1236
1237
1238 }
1239
1240 after(grammarAccess.getConstantArgumentAccess().getConstantAssignment());
1241
1242 }
1243
1244
1245 }
1246
1247 }
1248 catch (RecognitionException re) {
1249 reportError(re);
1250 recover(input,re);
1251 }
1252 finally {
1253
1254 restoreStackSize(stackSize);
1255
1256 }
1257 return ;
1258 }
1259 // $ANTLR end "ruleConstantArgument"
1260
1261
1262 // $ANTLR start "entryRuleAssertion"
1263 // InternalProblem.g:428:1: entryRuleAssertion : ruleAssertion EOF ;
1264 public final void entryRuleAssertion() throws RecognitionException {
1265 try {
1266 // InternalProblem.g:429:1: ( ruleAssertion EOF )
1267 // InternalProblem.g:430:1: ruleAssertion EOF
1268 {
1269 before(grammarAccess.getAssertionRule());
1270 pushFollow(FOLLOW_1);
1271 ruleAssertion();
1272
1273 state._fsp--;
1274
1275 after(grammarAccess.getAssertionRule());
1276 match(input,EOF,FOLLOW_2);
1277
1278 }
1279
1280 }
1281 catch (RecognitionException re) {
1282 reportError(re);
1283 recover(input,re);
1284 }
1285 finally {
1286 }
1287 return ;
1288 }
1289 // $ANTLR end "entryRuleAssertion"
1290
1291
1292 // $ANTLR start "ruleAssertion"
1293 // InternalProblem.g:437:1: ruleAssertion : ( ( rule__Assertion__Group__0 ) ) ;
1294 public final void ruleAssertion() throws RecognitionException {
1295
1296 int stackSize = keepStackSize();
1297
1298 try {
1299 // InternalProblem.g:441:2: ( ( ( rule__Assertion__Group__0 ) ) )
1300 // InternalProblem.g:442:2: ( ( rule__Assertion__Group__0 ) )
1301 {
1302 // InternalProblem.g:442:2: ( ( rule__Assertion__Group__0 ) )
1303 // InternalProblem.g:443:3: ( rule__Assertion__Group__0 )
1304 {
1305 before(grammarAccess.getAssertionAccess().getGroup());
1306 // InternalProblem.g:444:3: ( rule__Assertion__Group__0 )
1307 // InternalProblem.g:444:4: rule__Assertion__Group__0
1308 {
1309 pushFollow(FOLLOW_2);
1310 rule__Assertion__Group__0();
1311
1312 state._fsp--;
1313
1314
1315 }
1316
1317 after(grammarAccess.getAssertionAccess().getGroup());
1318
1319 }
1320
1321
1322 }
1323
1324 }
1325 catch (RecognitionException re) {
1326 reportError(re);
1327 recover(input,re);
1328 }
1329 finally {
1330
1331 restoreStackSize(stackSize);
1332
1333 }
1334 return ;
1335 }
1336 // $ANTLR end "ruleAssertion"
1337
1338
1339 // $ANTLR start "entryRuleAssertionArgument"
1340 // InternalProblem.g:453:1: entryRuleAssertionArgument : ruleAssertionArgument EOF ;
1341 public final void entryRuleAssertionArgument() throws RecognitionException {
1342 try {
1343 // InternalProblem.g:454:1: ( ruleAssertionArgument EOF )
1344 // InternalProblem.g:455:1: ruleAssertionArgument EOF
1345 {
1346 before(grammarAccess.getAssertionArgumentRule());
1347 pushFollow(FOLLOW_1);
1348 ruleAssertionArgument();
1349
1350 state._fsp--;
1351
1352 after(grammarAccess.getAssertionArgumentRule());
1353 match(input,EOF,FOLLOW_2);
1354
1355 }
1356
1357 }
1358 catch (RecognitionException re) {
1359 reportError(re);
1360 recover(input,re);
1361 }
1362 finally {
1363 }
1364 return ;
1365 }
1366 // $ANTLR end "entryRuleAssertionArgument"
1367
1368
1369 // $ANTLR start "ruleAssertionArgument"
1370 // InternalProblem.g:462:1: ruleAssertionArgument : ( ( rule__AssertionArgument__Alternatives ) ) ;
1371 public final void ruleAssertionArgument() throws RecognitionException {
1372
1373 int stackSize = keepStackSize();
1374
1375 try {
1376 // InternalProblem.g:466:2: ( ( ( rule__AssertionArgument__Alternatives ) ) )
1377 // InternalProblem.g:467:2: ( ( rule__AssertionArgument__Alternatives ) )
1378 {
1379 // InternalProblem.g:467:2: ( ( rule__AssertionArgument__Alternatives ) )
1380 // InternalProblem.g:468:3: ( rule__AssertionArgument__Alternatives )
1381 {
1382 before(grammarAccess.getAssertionArgumentAccess().getAlternatives());
1383 // InternalProblem.g:469:3: ( rule__AssertionArgument__Alternatives )
1384 // InternalProblem.g:469:4: rule__AssertionArgument__Alternatives
1385 {
1386 pushFollow(FOLLOW_2);
1387 rule__AssertionArgument__Alternatives();
1388
1389 state._fsp--;
1390
1391
1392 }
1393
1394 after(grammarAccess.getAssertionArgumentAccess().getAlternatives());
1395
1396 }
1397
1398
1399 }
1400
1401 }
1402 catch (RecognitionException re) {
1403 reportError(re);
1404 recover(input,re);
1405 }
1406 finally {
1407
1408 restoreStackSize(stackSize);
1409
1410 }
1411 return ;
1412 }
1413 // $ANTLR end "ruleAssertionArgument"
1414
1415
1416 // $ANTLR start "entryRuleNodeAssertionArgument"
1417 // InternalProblem.g:478:1: entryRuleNodeAssertionArgument : ruleNodeAssertionArgument EOF ;
1418 public final void entryRuleNodeAssertionArgument() throws RecognitionException {
1419 try {
1420 // InternalProblem.g:479:1: ( ruleNodeAssertionArgument EOF )
1421 // InternalProblem.g:480:1: ruleNodeAssertionArgument EOF
1422 {
1423 before(grammarAccess.getNodeAssertionArgumentRule());
1424 pushFollow(FOLLOW_1);
1425 ruleNodeAssertionArgument();
1426
1427 state._fsp--;
1428
1429 after(grammarAccess.getNodeAssertionArgumentRule());
1430 match(input,EOF,FOLLOW_2);
1431
1432 }
1433
1434 }
1435 catch (RecognitionException re) {
1436 reportError(re);
1437 recover(input,re);
1438 }
1439 finally {
1440 }
1441 return ;
1442 }
1443 // $ANTLR end "entryRuleNodeAssertionArgument"
1444
1445
1446 // $ANTLR start "ruleNodeAssertionArgument"
1447 // InternalProblem.g:487:1: ruleNodeAssertionArgument : ( ( rule__NodeAssertionArgument__NodeAssignment ) ) ;
1448 public final void ruleNodeAssertionArgument() throws RecognitionException {
1449
1450 int stackSize = keepStackSize();
1451
1452 try {
1453 // InternalProblem.g:491:2: ( ( ( rule__NodeAssertionArgument__NodeAssignment ) ) )
1454 // InternalProblem.g:492:2: ( ( rule__NodeAssertionArgument__NodeAssignment ) )
1455 {
1456 // InternalProblem.g:492:2: ( ( rule__NodeAssertionArgument__NodeAssignment ) )
1457 // InternalProblem.g:493:3: ( rule__NodeAssertionArgument__NodeAssignment )
1458 {
1459 before(grammarAccess.getNodeAssertionArgumentAccess().getNodeAssignment());
1460 // InternalProblem.g:494:3: ( rule__NodeAssertionArgument__NodeAssignment )
1461 // InternalProblem.g:494:4: rule__NodeAssertionArgument__NodeAssignment
1462 {
1463 pushFollow(FOLLOW_2);
1464 rule__NodeAssertionArgument__NodeAssignment();
1465
1466 state._fsp--;
1467
1468
1469 }
1470
1471 after(grammarAccess.getNodeAssertionArgumentAccess().getNodeAssignment());
1472
1473 }
1474
1475
1476 }
1477
1478 }
1479 catch (RecognitionException re) {
1480 reportError(re);
1481 recover(input,re);
1482 }
1483 finally {
1484
1485 restoreStackSize(stackSize);
1486
1487 }
1488 return ;
1489 }
1490 // $ANTLR end "ruleNodeAssertionArgument"
1491
1492
1493 // $ANTLR start "entryRuleConstantAssertionArgument"
1494 // InternalProblem.g:503:1: entryRuleConstantAssertionArgument : ruleConstantAssertionArgument EOF ;
1495 public final void entryRuleConstantAssertionArgument() throws RecognitionException {
1496 try {
1497 // InternalProblem.g:504:1: ( ruleConstantAssertionArgument EOF )
1498 // InternalProblem.g:505:1: ruleConstantAssertionArgument EOF
1499 {
1500 before(grammarAccess.getConstantAssertionArgumentRule());
1501 pushFollow(FOLLOW_1);
1502 ruleConstantAssertionArgument();
1503
1504 state._fsp--;
1505
1506 after(grammarAccess.getConstantAssertionArgumentRule());
1507 match(input,EOF,FOLLOW_2);
1508
1509 }
1510
1511 }
1512 catch (RecognitionException re) {
1513 reportError(re);
1514 recover(input,re);
1515 }
1516 finally {
1517 }
1518 return ;
1519 }
1520 // $ANTLR end "entryRuleConstantAssertionArgument"
1521
1522
1523 // $ANTLR start "ruleConstantAssertionArgument"
1524 // InternalProblem.g:512:1: ruleConstantAssertionArgument : ( ( rule__ConstantAssertionArgument__ConstantAssignment ) ) ;
1525 public final void ruleConstantAssertionArgument() throws RecognitionException {
1526
1527 int stackSize = keepStackSize();
1528
1529 try {
1530 // InternalProblem.g:516:2: ( ( ( rule__ConstantAssertionArgument__ConstantAssignment ) ) )
1531 // InternalProblem.g:517:2: ( ( rule__ConstantAssertionArgument__ConstantAssignment ) )
1532 {
1533 // InternalProblem.g:517:2: ( ( rule__ConstantAssertionArgument__ConstantAssignment ) )
1534 // InternalProblem.g:518:3: ( rule__ConstantAssertionArgument__ConstantAssignment )
1535 {
1536 before(grammarAccess.getConstantAssertionArgumentAccess().getConstantAssignment());
1537 // InternalProblem.g:519:3: ( rule__ConstantAssertionArgument__ConstantAssignment )
1538 // InternalProblem.g:519:4: rule__ConstantAssertionArgument__ConstantAssignment
1539 {
1540 pushFollow(FOLLOW_2);
1541 rule__ConstantAssertionArgument__ConstantAssignment();
1542
1543 state._fsp--;
1544
1545
1546 }
1547
1548 after(grammarAccess.getConstantAssertionArgumentAccess().getConstantAssignment());
1549
1550 }
1551
1552
1553 }
1554
1555 }
1556 catch (RecognitionException re) {
1557 reportError(re);
1558 recover(input,re);
1559 }
1560 finally {
1561
1562 restoreStackSize(stackSize);
1563
1564 }
1565 return ;
1566 }
1567 // $ANTLR end "ruleConstantAssertionArgument"
1568
1569
1570 // $ANTLR start "entryRuleNodeValueAssertion"
1571 // InternalProblem.g:528:1: entryRuleNodeValueAssertion : ruleNodeValueAssertion EOF ;
1572 public final void entryRuleNodeValueAssertion() throws RecognitionException {
1573 try {
1574 // InternalProblem.g:529:1: ( ruleNodeValueAssertion EOF )
1575 // InternalProblem.g:530:1: ruleNodeValueAssertion EOF
1576 {
1577 before(grammarAccess.getNodeValueAssertionRule());
1578 pushFollow(FOLLOW_1);
1579 ruleNodeValueAssertion();
1580
1581 state._fsp--;
1582
1583 after(grammarAccess.getNodeValueAssertionRule());
1584 match(input,EOF,FOLLOW_2);
1585
1586 }
1587
1588 }
1589 catch (RecognitionException re) {
1590 reportError(re);
1591 recover(input,re);
1592 }
1593 finally {
1594 }
1595 return ;
1596 }
1597 // $ANTLR end "entryRuleNodeValueAssertion"
1598
1599
1600 // $ANTLR start "ruleNodeValueAssertion"
1601 // InternalProblem.g:537:1: ruleNodeValueAssertion : ( ( rule__NodeValueAssertion__Group__0 ) ) ;
1602 public final void ruleNodeValueAssertion() throws RecognitionException {
1603
1604 int stackSize = keepStackSize();
1605
1606 try {
1607 // InternalProblem.g:541:2: ( ( ( rule__NodeValueAssertion__Group__0 ) ) )
1608 // InternalProblem.g:542:2: ( ( rule__NodeValueAssertion__Group__0 ) )
1609 {
1610 // InternalProblem.g:542:2: ( ( rule__NodeValueAssertion__Group__0 ) )
1611 // InternalProblem.g:543:3: ( rule__NodeValueAssertion__Group__0 )
1612 {
1613 before(grammarAccess.getNodeValueAssertionAccess().getGroup());
1614 // InternalProblem.g:544:3: ( rule__NodeValueAssertion__Group__0 )
1615 // InternalProblem.g:544:4: rule__NodeValueAssertion__Group__0
1616 {
1617 pushFollow(FOLLOW_2);
1618 rule__NodeValueAssertion__Group__0();
1619
1620 state._fsp--;
1621
1622
1623 }
1624
1625 after(grammarAccess.getNodeValueAssertionAccess().getGroup());
1626
1627 }
1628
1629
1630 }
1631
1632 }
1633 catch (RecognitionException re) {
1634 reportError(re);
1635 recover(input,re);
1636 }
1637 finally {
1638
1639 restoreStackSize(stackSize);
1640
1641 }
1642 return ;
1643 }
1644 // $ANTLR end "ruleNodeValueAssertion"
1645
1646
1647 // $ANTLR start "entryRuleConstant"
1648 // InternalProblem.g:553:1: entryRuleConstant : ruleConstant EOF ;
1649 public final void entryRuleConstant() throws RecognitionException {
1650 try {
1651 // InternalProblem.g:554:1: ( ruleConstant EOF )
1652 // InternalProblem.g:555:1: ruleConstant EOF
1653 {
1654 before(grammarAccess.getConstantRule());
1655 pushFollow(FOLLOW_1);
1656 ruleConstant();
1657
1658 state._fsp--;
1659
1660 after(grammarAccess.getConstantRule());
1661 match(input,EOF,FOLLOW_2);
1662
1663 }
1664
1665 }
1666 catch (RecognitionException re) {
1667 reportError(re);
1668 recover(input,re);
1669 }
1670 finally {
1671 }
1672 return ;
1673 }
1674 // $ANTLR end "entryRuleConstant"
1675
1676
1677 // $ANTLR start "ruleConstant"
1678 // InternalProblem.g:562:1: ruleConstant : ( ( rule__Constant__Alternatives ) ) ;
1679 public final void ruleConstant() throws RecognitionException {
1680
1681 int stackSize = keepStackSize();
1682
1683 try {
1684 // InternalProblem.g:566:2: ( ( ( rule__Constant__Alternatives ) ) )
1685 // InternalProblem.g:567:2: ( ( rule__Constant__Alternatives ) )
1686 {
1687 // InternalProblem.g:567:2: ( ( rule__Constant__Alternatives ) )
1688 // InternalProblem.g:568:3: ( rule__Constant__Alternatives )
1689 {
1690 before(grammarAccess.getConstantAccess().getAlternatives());
1691 // InternalProblem.g:569:3: ( rule__Constant__Alternatives )
1692 // InternalProblem.g:569:4: rule__Constant__Alternatives
1693 {
1694 pushFollow(FOLLOW_2);
1695 rule__Constant__Alternatives();
1696
1697 state._fsp--;
1698
1699
1700 }
1701
1702 after(grammarAccess.getConstantAccess().getAlternatives());
1703
1704 }
1705
1706
1707 }
1708
1709 }
1710 catch (RecognitionException re) {
1711 reportError(re);
1712 recover(input,re);
1713 }
1714 finally {
1715
1716 restoreStackSize(stackSize);
1717
1718 }
1719 return ;
1720 }
1721 // $ANTLR end "ruleConstant"
1722
1723
1724 // $ANTLR start "entryRuleIntConstant"
1725 // InternalProblem.g:578:1: entryRuleIntConstant : ruleIntConstant EOF ;
1726 public final void entryRuleIntConstant() throws RecognitionException {
1727 try {
1728 // InternalProblem.g:579:1: ( ruleIntConstant EOF )
1729 // InternalProblem.g:580:1: ruleIntConstant EOF
1730 {
1731 before(grammarAccess.getIntConstantRule());
1732 pushFollow(FOLLOW_1);
1733 ruleIntConstant();
1734
1735 state._fsp--;
1736
1737 after(grammarAccess.getIntConstantRule());
1738 match(input,EOF,FOLLOW_2);
1739
1740 }
1741
1742 }
1743 catch (RecognitionException re) {
1744 reportError(re);
1745 recover(input,re);
1746 }
1747 finally {
1748 }
1749 return ;
1750 }
1751 // $ANTLR end "entryRuleIntConstant"
1752
1753
1754 // $ANTLR start "ruleIntConstant"
1755 // InternalProblem.g:587:1: ruleIntConstant : ( ( rule__IntConstant__IntValueAssignment ) ) ;
1756 public final void ruleIntConstant() throws RecognitionException {
1757
1758 int stackSize = keepStackSize();
1759
1760 try {
1761 // InternalProblem.g:591:2: ( ( ( rule__IntConstant__IntValueAssignment ) ) )
1762 // InternalProblem.g:592:2: ( ( rule__IntConstant__IntValueAssignment ) )
1763 {
1764 // InternalProblem.g:592:2: ( ( rule__IntConstant__IntValueAssignment ) )
1765 // InternalProblem.g:593:3: ( rule__IntConstant__IntValueAssignment )
1766 {
1767 before(grammarAccess.getIntConstantAccess().getIntValueAssignment());
1768 // InternalProblem.g:594:3: ( rule__IntConstant__IntValueAssignment )
1769 // InternalProblem.g:594:4: rule__IntConstant__IntValueAssignment
1770 {
1771 pushFollow(FOLLOW_2);
1772 rule__IntConstant__IntValueAssignment();
1773
1774 state._fsp--;
1775
1776
1777 }
1778
1779 after(grammarAccess.getIntConstantAccess().getIntValueAssignment());
1780
1781 }
1782
1783
1784 }
1785
1786 }
1787 catch (RecognitionException re) {
1788 reportError(re);
1789 recover(input,re);
1790 }
1791 finally {
1792
1793 restoreStackSize(stackSize);
1794
1795 }
1796 return ;
1797 }
1798 // $ANTLR end "ruleIntConstant"
1799
1800
1801 // $ANTLR start "entryRuleRealConstant"
1802 // InternalProblem.g:603:1: entryRuleRealConstant : ruleRealConstant EOF ;
1803 public final void entryRuleRealConstant() throws RecognitionException {
1804 try {
1805 // InternalProblem.g:604:1: ( ruleRealConstant EOF )
1806 // InternalProblem.g:605:1: ruleRealConstant EOF
1807 {
1808 before(grammarAccess.getRealConstantRule());
1809 pushFollow(FOLLOW_1);
1810 ruleRealConstant();
1811
1812 state._fsp--;
1813
1814 after(grammarAccess.getRealConstantRule());
1815 match(input,EOF,FOLLOW_2);
1816
1817 }
1818
1819 }
1820 catch (RecognitionException re) {
1821 reportError(re);
1822 recover(input,re);
1823 }
1824 finally {
1825 }
1826 return ;
1827 }
1828 // $ANTLR end "entryRuleRealConstant"
1829
1830
1831 // $ANTLR start "ruleRealConstant"
1832 // InternalProblem.g:612:1: ruleRealConstant : ( ( rule__RealConstant__RealValueAssignment ) ) ;
1833 public final void ruleRealConstant() throws RecognitionException {
1834
1835 int stackSize = keepStackSize();
1836
1837 try {
1838 // InternalProblem.g:616:2: ( ( ( rule__RealConstant__RealValueAssignment ) ) )
1839 // InternalProblem.g:617:2: ( ( rule__RealConstant__RealValueAssignment ) )
1840 {
1841 // InternalProblem.g:617:2: ( ( rule__RealConstant__RealValueAssignment ) )
1842 // InternalProblem.g:618:3: ( rule__RealConstant__RealValueAssignment )
1843 {
1844 before(grammarAccess.getRealConstantAccess().getRealValueAssignment());
1845 // InternalProblem.g:619:3: ( rule__RealConstant__RealValueAssignment )
1846 // InternalProblem.g:619:4: rule__RealConstant__RealValueAssignment
1847 {
1848 pushFollow(FOLLOW_2);
1849 rule__RealConstant__RealValueAssignment();
1850
1851 state._fsp--;
1852
1853
1854 }
1855
1856 after(grammarAccess.getRealConstantAccess().getRealValueAssignment());
1857
1858 }
1859
1860
1861 }
1862
1863 }
1864 catch (RecognitionException re) {
1865 reportError(re);
1866 recover(input,re);
1867 }
1868 finally {
1869
1870 restoreStackSize(stackSize);
1871
1872 }
1873 return ;
1874 }
1875 // $ANTLR end "ruleRealConstant"
1876
1877
1878 // $ANTLR start "entryRuleStringConstant"
1879 // InternalProblem.g:628:1: entryRuleStringConstant : ruleStringConstant EOF ;
1880 public final void entryRuleStringConstant() throws RecognitionException {
1881 try {
1882 // InternalProblem.g:629:1: ( ruleStringConstant EOF )
1883 // InternalProblem.g:630:1: ruleStringConstant EOF
1884 {
1885 before(grammarAccess.getStringConstantRule());
1886 pushFollow(FOLLOW_1);
1887 ruleStringConstant();
1888
1889 state._fsp--;
1890
1891 after(grammarAccess.getStringConstantRule());
1892 match(input,EOF,FOLLOW_2);
1893
1894 }
1895
1896 }
1897 catch (RecognitionException re) {
1898 reportError(re);
1899 recover(input,re);
1900 }
1901 finally {
1902 }
1903 return ;
1904 }
1905 // $ANTLR end "entryRuleStringConstant"
1906
1907
1908 // $ANTLR start "ruleStringConstant"
1909 // InternalProblem.g:637:1: ruleStringConstant : ( ( rule__StringConstant__StringValueAssignment ) ) ;
1910 public final void ruleStringConstant() throws RecognitionException {
1911
1912 int stackSize = keepStackSize();
1913
1914 try {
1915 // InternalProblem.g:641:2: ( ( ( rule__StringConstant__StringValueAssignment ) ) )
1916 // InternalProblem.g:642:2: ( ( rule__StringConstant__StringValueAssignment ) )
1917 {
1918 // InternalProblem.g:642:2: ( ( rule__StringConstant__StringValueAssignment ) )
1919 // InternalProblem.g:643:3: ( rule__StringConstant__StringValueAssignment )
1920 {
1921 before(grammarAccess.getStringConstantAccess().getStringValueAssignment());
1922 // InternalProblem.g:644:3: ( rule__StringConstant__StringValueAssignment )
1923 // InternalProblem.g:644:4: rule__StringConstant__StringValueAssignment
1924 {
1925 pushFollow(FOLLOW_2);
1926 rule__StringConstant__StringValueAssignment();
1927
1928 state._fsp--;
1929
1930
1931 }
1932
1933 after(grammarAccess.getStringConstantAccess().getStringValueAssignment());
1934
1935 }
1936
1937
1938 }
1939
1940 }
1941 catch (RecognitionException re) {
1942 reportError(re);
1943 recover(input,re);
1944 }
1945 finally {
1946
1947 restoreStackSize(stackSize);
1948
1949 }
1950 return ;
1951 }
1952 // $ANTLR end "ruleStringConstant"
1953
1954
1955 // $ANTLR start "entryRuleScopeDeclaration"
1956 // InternalProblem.g:653:1: entryRuleScopeDeclaration : ruleScopeDeclaration EOF ;
1957 public final void entryRuleScopeDeclaration() throws RecognitionException {
1958 try {
1959 // InternalProblem.g:654:1: ( ruleScopeDeclaration EOF )
1960 // InternalProblem.g:655:1: ruleScopeDeclaration EOF
1961 {
1962 before(grammarAccess.getScopeDeclarationRule());
1963 pushFollow(FOLLOW_1);
1964 ruleScopeDeclaration();
1965
1966 state._fsp--;
1967
1968 after(grammarAccess.getScopeDeclarationRule());
1969 match(input,EOF,FOLLOW_2);
1970
1971 }
1972
1973 }
1974 catch (RecognitionException re) {
1975 reportError(re);
1976 recover(input,re);
1977 }
1978 finally {
1979 }
1980 return ;
1981 }
1982 // $ANTLR end "entryRuleScopeDeclaration"
1983
1984
1985 // $ANTLR start "ruleScopeDeclaration"
1986 // InternalProblem.g:662:1: ruleScopeDeclaration : ( ( rule__ScopeDeclaration__Group__0 ) ) ;
1987 public final void ruleScopeDeclaration() throws RecognitionException {
1988
1989 int stackSize = keepStackSize();
1990
1991 try {
1992 // InternalProblem.g:666:2: ( ( ( rule__ScopeDeclaration__Group__0 ) ) )
1993 // InternalProblem.g:667:2: ( ( rule__ScopeDeclaration__Group__0 ) )
1994 {
1995 // InternalProblem.g:667:2: ( ( rule__ScopeDeclaration__Group__0 ) )
1996 // InternalProblem.g:668:3: ( rule__ScopeDeclaration__Group__0 )
1997 {
1998 before(grammarAccess.getScopeDeclarationAccess().getGroup());
1999 // InternalProblem.g:669:3: ( rule__ScopeDeclaration__Group__0 )
2000 // InternalProblem.g:669:4: rule__ScopeDeclaration__Group__0
2001 {
2002 pushFollow(FOLLOW_2);
2003 rule__ScopeDeclaration__Group__0();
2004
2005 state._fsp--;
2006
2007
2008 }
2009
2010 after(grammarAccess.getScopeDeclarationAccess().getGroup());
2011
2012 }
2013
2014
2015 }
2016
2017 }
2018 catch (RecognitionException re) {
2019 reportError(re);
2020 recover(input,re);
2021 }
2022 finally {
2023
2024 restoreStackSize(stackSize);
2025
2026 }
2027 return ;
2028 }
2029 // $ANTLR end "ruleScopeDeclaration"
2030
2031
2032 // $ANTLR start "entryRuleTypeScope"
2033 // InternalProblem.g:678:1: entryRuleTypeScope : ruleTypeScope EOF ;
2034 public final void entryRuleTypeScope() throws RecognitionException {
2035 try {
2036 // InternalProblem.g:679:1: ( ruleTypeScope EOF )
2037 // InternalProblem.g:680:1: ruleTypeScope EOF
2038 {
2039 before(grammarAccess.getTypeScopeRule());
2040 pushFollow(FOLLOW_1);
2041 ruleTypeScope();
2042
2043 state._fsp--;
2044
2045 after(grammarAccess.getTypeScopeRule());
2046 match(input,EOF,FOLLOW_2);
2047
2048 }
2049
2050 }
2051 catch (RecognitionException re) {
2052 reportError(re);
2053 recover(input,re);
2054 }
2055 finally {
2056 }
2057 return ;
2058 }
2059 // $ANTLR end "entryRuleTypeScope"
2060
2061
2062 // $ANTLR start "ruleTypeScope"
2063 // InternalProblem.g:687:1: ruleTypeScope : ( ( rule__TypeScope__Group__0 ) ) ;
2064 public final void ruleTypeScope() throws RecognitionException {
2065
2066 int stackSize = keepStackSize();
2067
2068 try {
2069 // InternalProblem.g:691:2: ( ( ( rule__TypeScope__Group__0 ) ) )
2070 // InternalProblem.g:692:2: ( ( rule__TypeScope__Group__0 ) )
2071 {
2072 // InternalProblem.g:692:2: ( ( rule__TypeScope__Group__0 ) )
2073 // InternalProblem.g:693:3: ( rule__TypeScope__Group__0 )
2074 {
2075 before(grammarAccess.getTypeScopeAccess().getGroup());
2076 // InternalProblem.g:694:3: ( rule__TypeScope__Group__0 )
2077 // InternalProblem.g:694:4: rule__TypeScope__Group__0
2078 {
2079 pushFollow(FOLLOW_2);
2080 rule__TypeScope__Group__0();
2081
2082 state._fsp--;
2083
2084
2085 }
2086
2087 after(grammarAccess.getTypeScopeAccess().getGroup());
2088
2089 }
2090
2091
2092 }
2093
2094 }
2095 catch (RecognitionException re) {
2096 reportError(re);
2097 recover(input,re);
2098 }
2099 finally {
2100
2101 restoreStackSize(stackSize);
2102
2103 }
2104 return ;
2105 }
2106 // $ANTLR end "ruleTypeScope"
2107
2108
2109 // $ANTLR start "entryRuleMultiplicity"
2110 // InternalProblem.g:703:1: entryRuleMultiplicity : ruleMultiplicity EOF ;
2111 public final void entryRuleMultiplicity() throws RecognitionException {
2112 try {
2113 // InternalProblem.g:704:1: ( ruleMultiplicity EOF )
2114 // InternalProblem.g:705:1: ruleMultiplicity EOF
2115 {
2116 before(grammarAccess.getMultiplicityRule());
2117 pushFollow(FOLLOW_1);
2118 ruleMultiplicity();
2119
2120 state._fsp--;
2121
2122 after(grammarAccess.getMultiplicityRule());
2123 match(input,EOF,FOLLOW_2);
2124
2125 }
2126
2127 }
2128 catch (RecognitionException re) {
2129 reportError(re);
2130 recover(input,re);
2131 }
2132 finally {
2133 }
2134 return ;
2135 }
2136 // $ANTLR end "entryRuleMultiplicity"
2137
2138
2139 // $ANTLR start "ruleMultiplicity"
2140 // InternalProblem.g:712:1: ruleMultiplicity : ( ( rule__Multiplicity__Alternatives ) ) ;
2141 public final void ruleMultiplicity() throws RecognitionException {
2142
2143 int stackSize = keepStackSize();
2144
2145 try {
2146 // InternalProblem.g:716:2: ( ( ( rule__Multiplicity__Alternatives ) ) )
2147 // InternalProblem.g:717:2: ( ( rule__Multiplicity__Alternatives ) )
2148 {
2149 // InternalProblem.g:717:2: ( ( rule__Multiplicity__Alternatives ) )
2150 // InternalProblem.g:718:3: ( rule__Multiplicity__Alternatives )
2151 {
2152 before(grammarAccess.getMultiplicityAccess().getAlternatives());
2153 // InternalProblem.g:719:3: ( rule__Multiplicity__Alternatives )
2154 // InternalProblem.g:719:4: rule__Multiplicity__Alternatives
2155 {
2156 pushFollow(FOLLOW_2);
2157 rule__Multiplicity__Alternatives();
2158
2159 state._fsp--;
2160
2161
2162 }
2163
2164 after(grammarAccess.getMultiplicityAccess().getAlternatives());
2165
2166 }
2167
2168
2169 }
2170
2171 }
2172 catch (RecognitionException re) {
2173 reportError(re);
2174 recover(input,re);
2175 }
2176 finally {
2177
2178 restoreStackSize(stackSize);
2179
2180 }
2181 return ;
2182 }
2183 // $ANTLR end "ruleMultiplicity"
2184
2185
2186 // $ANTLR start "entryRuleDefiniteMultiplicity"
2187 // InternalProblem.g:728:1: entryRuleDefiniteMultiplicity : ruleDefiniteMultiplicity EOF ;
2188 public final void entryRuleDefiniteMultiplicity() throws RecognitionException {
2189 try {
2190 // InternalProblem.g:729:1: ( ruleDefiniteMultiplicity EOF )
2191 // InternalProblem.g:730:1: ruleDefiniteMultiplicity EOF
2192 {
2193 before(grammarAccess.getDefiniteMultiplicityRule());
2194 pushFollow(FOLLOW_1);
2195 ruleDefiniteMultiplicity();
2196
2197 state._fsp--;
2198
2199 after(grammarAccess.getDefiniteMultiplicityRule());
2200 match(input,EOF,FOLLOW_2);
2201
2202 }
2203
2204 }
2205 catch (RecognitionException re) {
2206 reportError(re);
2207 recover(input,re);
2208 }
2209 finally {
2210 }
2211 return ;
2212 }
2213 // $ANTLR end "entryRuleDefiniteMultiplicity"
2214
2215
2216 // $ANTLR start "ruleDefiniteMultiplicity"
2217 // InternalProblem.g:737:1: ruleDefiniteMultiplicity : ( ( rule__DefiniteMultiplicity__Alternatives ) ) ;
2218 public final void ruleDefiniteMultiplicity() throws RecognitionException {
2219
2220 int stackSize = keepStackSize();
2221
2222 try {
2223 // InternalProblem.g:741:2: ( ( ( rule__DefiniteMultiplicity__Alternatives ) ) )
2224 // InternalProblem.g:742:2: ( ( rule__DefiniteMultiplicity__Alternatives ) )
2225 {
2226 // InternalProblem.g:742:2: ( ( rule__DefiniteMultiplicity__Alternatives ) )
2227 // InternalProblem.g:743:3: ( rule__DefiniteMultiplicity__Alternatives )
2228 {
2229 before(grammarAccess.getDefiniteMultiplicityAccess().getAlternatives());
2230 // InternalProblem.g:744:3: ( rule__DefiniteMultiplicity__Alternatives )
2231 // InternalProblem.g:744:4: rule__DefiniteMultiplicity__Alternatives
2232 {
2233 pushFollow(FOLLOW_2);
2234 rule__DefiniteMultiplicity__Alternatives();
2235
2236 state._fsp--;
2237
2238
2239 }
2240
2241 after(grammarAccess.getDefiniteMultiplicityAccess().getAlternatives());
2242
2243 }
2244
2245
2246 }
2247
2248 }
2249 catch (RecognitionException re) {
2250 reportError(re);
2251 recover(input,re);
2252 }
2253 finally {
2254
2255 restoreStackSize(stackSize);
2256
2257 }
2258 return ;
2259 }
2260 // $ANTLR end "ruleDefiniteMultiplicity"
2261
2262
2263 // $ANTLR start "entryRuleUnboundedMultiplicity"
2264 // InternalProblem.g:753:1: entryRuleUnboundedMultiplicity : ruleUnboundedMultiplicity EOF ;
2265 public final void entryRuleUnboundedMultiplicity() throws RecognitionException {
2266 try {
2267 // InternalProblem.g:754:1: ( ruleUnboundedMultiplicity EOF )
2268 // InternalProblem.g:755:1: ruleUnboundedMultiplicity EOF
2269 {
2270 before(grammarAccess.getUnboundedMultiplicityRule());
2271 pushFollow(FOLLOW_1);
2272 ruleUnboundedMultiplicity();
2273
2274 state._fsp--;
2275
2276 after(grammarAccess.getUnboundedMultiplicityRule());
2277 match(input,EOF,FOLLOW_2);
2278
2279 }
2280
2281 }
2282 catch (RecognitionException re) {
2283 reportError(re);
2284 recover(input,re);
2285 }
2286 finally {
2287 }
2288 return ;
2289 }
2290 // $ANTLR end "entryRuleUnboundedMultiplicity"
2291
2292
2293 // $ANTLR start "ruleUnboundedMultiplicity"
2294 // InternalProblem.g:762:1: ruleUnboundedMultiplicity : ( () ) ;
2295 public final void ruleUnboundedMultiplicity() throws RecognitionException {
2296
2297 int stackSize = keepStackSize();
2298
2299 try {
2300 // InternalProblem.g:766:2: ( ( () ) )
2301 // InternalProblem.g:767:2: ( () )
2302 {
2303 // InternalProblem.g:767:2: ( () )
2304 // InternalProblem.g:768:3: ()
2305 {
2306 before(grammarAccess.getUnboundedMultiplicityAccess().getUnboundedMultiplicityAction());
2307 // InternalProblem.g:769:3: ()
2308 // InternalProblem.g:769:4:
2309 {
2310 }
2311
2312 after(grammarAccess.getUnboundedMultiplicityAccess().getUnboundedMultiplicityAction());
2313
2314 }
2315
2316
2317 }
2318
2319 }
2320 finally {
2321
2322 restoreStackSize(stackSize);
2323
2324 }
2325 return ;
2326 }
2327 // $ANTLR end "ruleUnboundedMultiplicity"
2328
2329
2330 // $ANTLR start "entryRuleRangeMultiplicity"
2331 // InternalProblem.g:778:1: entryRuleRangeMultiplicity : ruleRangeMultiplicity EOF ;
2332 public final void entryRuleRangeMultiplicity() throws RecognitionException {
2333 try {
2334 // InternalProblem.g:779:1: ( ruleRangeMultiplicity EOF )
2335 // InternalProblem.g:780:1: ruleRangeMultiplicity EOF
2336 {
2337 before(grammarAccess.getRangeMultiplicityRule());
2338 pushFollow(FOLLOW_1);
2339 ruleRangeMultiplicity();
2340
2341 state._fsp--;
2342
2343 after(grammarAccess.getRangeMultiplicityRule());
2344 match(input,EOF,FOLLOW_2);
2345
2346 }
2347
2348 }
2349 catch (RecognitionException re) {
2350 reportError(re);
2351 recover(input,re);
2352 }
2353 finally {
2354 }
2355 return ;
2356 }
2357 // $ANTLR end "entryRuleRangeMultiplicity"
2358
2359
2360 // $ANTLR start "ruleRangeMultiplicity"
2361 // InternalProblem.g:787:1: ruleRangeMultiplicity : ( ( rule__RangeMultiplicity__Group__0 ) ) ;
2362 public final void ruleRangeMultiplicity() throws RecognitionException {
2363
2364 int stackSize = keepStackSize();
2365
2366 try {
2367 // InternalProblem.g:791:2: ( ( ( rule__RangeMultiplicity__Group__0 ) ) )
2368 // InternalProblem.g:792:2: ( ( rule__RangeMultiplicity__Group__0 ) )
2369 {
2370 // InternalProblem.g:792:2: ( ( rule__RangeMultiplicity__Group__0 ) )
2371 // InternalProblem.g:793:3: ( rule__RangeMultiplicity__Group__0 )
2372 {
2373 before(grammarAccess.getRangeMultiplicityAccess().getGroup());
2374 // InternalProblem.g:794:3: ( rule__RangeMultiplicity__Group__0 )
2375 // InternalProblem.g:794:4: rule__RangeMultiplicity__Group__0
2376 {
2377 pushFollow(FOLLOW_2);
2378 rule__RangeMultiplicity__Group__0();
2379
2380 state._fsp--;
2381
2382
2383 }
2384
2385 after(grammarAccess.getRangeMultiplicityAccess().getGroup());
2386
2387 }
2388
2389
2390 }
2391
2392 }
2393 catch (RecognitionException re) {
2394 reportError(re);
2395 recover(input,re);
2396 }
2397 finally {
2398
2399 restoreStackSize(stackSize);
2400
2401 }
2402 return ;
2403 }
2404 // $ANTLR end "ruleRangeMultiplicity"
2405
2406
2407 // $ANTLR start "entryRuleExactMultiplicity"
2408 // InternalProblem.g:803:1: entryRuleExactMultiplicity : ruleExactMultiplicity EOF ;
2409 public final void entryRuleExactMultiplicity() throws RecognitionException {
2410 try {
2411 // InternalProblem.g:804:1: ( ruleExactMultiplicity EOF )
2412 // InternalProblem.g:805:1: ruleExactMultiplicity EOF
2413 {
2414 before(grammarAccess.getExactMultiplicityRule());
2415 pushFollow(FOLLOW_1);
2416 ruleExactMultiplicity();
2417
2418 state._fsp--;
2419
2420 after(grammarAccess.getExactMultiplicityRule());
2421 match(input,EOF,FOLLOW_2);
2422
2423 }
2424
2425 }
2426 catch (RecognitionException re) {
2427 reportError(re);
2428 recover(input,re);
2429 }
2430 finally {
2431 }
2432 return ;
2433 }
2434 // $ANTLR end "entryRuleExactMultiplicity"
2435
2436
2437 // $ANTLR start "ruleExactMultiplicity"
2438 // InternalProblem.g:812:1: ruleExactMultiplicity : ( ( rule__ExactMultiplicity__ExactValueAssignment ) ) ;
2439 public final void ruleExactMultiplicity() throws RecognitionException {
2440
2441 int stackSize = keepStackSize();
2442
2443 try {
2444 // InternalProblem.g:816:2: ( ( ( rule__ExactMultiplicity__ExactValueAssignment ) ) )
2445 // InternalProblem.g:817:2: ( ( rule__ExactMultiplicity__ExactValueAssignment ) )
2446 {
2447 // InternalProblem.g:817:2: ( ( rule__ExactMultiplicity__ExactValueAssignment ) )
2448 // InternalProblem.g:818:3: ( rule__ExactMultiplicity__ExactValueAssignment )
2449 {
2450 before(grammarAccess.getExactMultiplicityAccess().getExactValueAssignment());
2451 // InternalProblem.g:819:3: ( rule__ExactMultiplicity__ExactValueAssignment )
2452 // InternalProblem.g:819:4: rule__ExactMultiplicity__ExactValueAssignment
2453 {
2454 pushFollow(FOLLOW_2);
2455 rule__ExactMultiplicity__ExactValueAssignment();
2456
2457 state._fsp--;
2458
2459
2460 }
2461
2462 after(grammarAccess.getExactMultiplicityAccess().getExactValueAssignment());
2463
2464 }
2465
2466
2467 }
2468
2469 }
2470 catch (RecognitionException re) {
2471 reportError(re);
2472 recover(input,re);
2473 }
2474 finally {
2475
2476 restoreStackSize(stackSize);
2477
2478 }
2479 return ;
2480 }
2481 // $ANTLR end "ruleExactMultiplicity"
2482
2483
2484 // $ANTLR start "entryRuleUpperBound"
2485 // InternalProblem.g:828:1: entryRuleUpperBound : ruleUpperBound EOF ;
2486 public final void entryRuleUpperBound() throws RecognitionException {
2487 try {
2488 // InternalProblem.g:829:1: ( ruleUpperBound EOF )
2489 // InternalProblem.g:830:1: ruleUpperBound EOF
2490 {
2491 before(grammarAccess.getUpperBoundRule());
2492 pushFollow(FOLLOW_1);
2493 ruleUpperBound();
2494
2495 state._fsp--;
2496
2497 after(grammarAccess.getUpperBoundRule());
2498 match(input,EOF,FOLLOW_2);
2499
2500 }
2501
2502 }
2503 catch (RecognitionException re) {
2504 reportError(re);
2505 recover(input,re);
2506 }
2507 finally {
2508 }
2509 return ;
2510 }
2511 // $ANTLR end "entryRuleUpperBound"
2512
2513
2514 // $ANTLR start "ruleUpperBound"
2515 // InternalProblem.g:837:1: ruleUpperBound : ( ( rule__UpperBound__Alternatives ) ) ;
2516 public final void ruleUpperBound() throws RecognitionException {
2517
2518 int stackSize = keepStackSize();
2519
2520 try {
2521 // InternalProblem.g:841:2: ( ( ( rule__UpperBound__Alternatives ) ) )
2522 // InternalProblem.g:842:2: ( ( rule__UpperBound__Alternatives ) )
2523 {
2524 // InternalProblem.g:842:2: ( ( rule__UpperBound__Alternatives ) )
2525 // InternalProblem.g:843:3: ( rule__UpperBound__Alternatives )
2526 {
2527 before(grammarAccess.getUpperBoundAccess().getAlternatives());
2528 // InternalProblem.g:844:3: ( rule__UpperBound__Alternatives )
2529 // InternalProblem.g:844:4: rule__UpperBound__Alternatives
2530 {
2531 pushFollow(FOLLOW_2);
2532 rule__UpperBound__Alternatives();
2533
2534 state._fsp--;
2535
2536
2537 }
2538
2539 after(grammarAccess.getUpperBoundAccess().getAlternatives());
2540
2541 }
2542
2543
2544 }
2545
2546 }
2547 catch (RecognitionException re) {
2548 reportError(re);
2549 recover(input,re);
2550 }
2551 finally {
2552
2553 restoreStackSize(stackSize);
2554
2555 }
2556 return ;
2557 }
2558 // $ANTLR end "ruleUpperBound"
2559
2560
2561 // $ANTLR start "entryRuleQualifiedName"
2562 // InternalProblem.g:853:1: entryRuleQualifiedName : ruleQualifiedName EOF ;
2563 public final void entryRuleQualifiedName() throws RecognitionException {
2564
2565 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
2566
2567 try {
2568 // InternalProblem.g:857:1: ( ruleQualifiedName EOF )
2569 // InternalProblem.g:858:1: ruleQualifiedName EOF
2570 {
2571 before(grammarAccess.getQualifiedNameRule());
2572 pushFollow(FOLLOW_1);
2573 ruleQualifiedName();
2574
2575 state._fsp--;
2576
2577 after(grammarAccess.getQualifiedNameRule());
2578 match(input,EOF,FOLLOW_2);
2579
2580 }
2581
2582 }
2583 catch (RecognitionException re) {
2584 reportError(re);
2585 recover(input,re);
2586 }
2587 finally {
2588
2589 myHiddenTokenState.restore();
2590
2591 }
2592 return ;
2593 }
2594 // $ANTLR end "entryRuleQualifiedName"
2595
2596
2597 // $ANTLR start "ruleQualifiedName"
2598 // InternalProblem.g:868:1: ruleQualifiedName : ( ( rule__QualifiedName__Alternatives ) ) ;
2599 public final void ruleQualifiedName() throws RecognitionException {
2600
2601 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
2602 int stackSize = keepStackSize();
2603
2604 try {
2605 // InternalProblem.g:873:2: ( ( ( rule__QualifiedName__Alternatives ) ) )
2606 // InternalProblem.g:874:2: ( ( rule__QualifiedName__Alternatives ) )
2607 {
2608 // InternalProblem.g:874:2: ( ( rule__QualifiedName__Alternatives ) )
2609 // InternalProblem.g:875:3: ( rule__QualifiedName__Alternatives )
2610 {
2611 before(grammarAccess.getQualifiedNameAccess().getAlternatives());
2612 // InternalProblem.g:876:3: ( rule__QualifiedName__Alternatives )
2613 // InternalProblem.g:876:4: rule__QualifiedName__Alternatives
2614 {
2615 pushFollow(FOLLOW_2);
2616 rule__QualifiedName__Alternatives();
2617
2618 state._fsp--;
2619
2620
2621 }
2622
2623 after(grammarAccess.getQualifiedNameAccess().getAlternatives());
2624
2625 }
2626
2627
2628 }
2629
2630 }
2631 catch (RecognitionException re) {
2632 reportError(re);
2633 recover(input,re);
2634 }
2635 finally {
2636
2637 restoreStackSize(stackSize);
2638 myHiddenTokenState.restore();
2639
2640 }
2641 return ;
2642 }
2643 // $ANTLR end "ruleQualifiedName"
2644
2645
2646 // $ANTLR start "entryRuleIdentifier"
2647 // InternalProblem.g:886:1: entryRuleIdentifier : ruleIdentifier EOF ;
2648 public final void entryRuleIdentifier() throws RecognitionException {
2649 try {
2650 // InternalProblem.g:887:1: ( ruleIdentifier EOF )
2651 // InternalProblem.g:888:1: ruleIdentifier EOF
2652 {
2653 before(grammarAccess.getIdentifierRule());
2654 pushFollow(FOLLOW_1);
2655 ruleIdentifier();
2656
2657 state._fsp--;
2658
2659 after(grammarAccess.getIdentifierRule());
2660 match(input,EOF,FOLLOW_2);
2661
2662 }
2663
2664 }
2665 catch (RecognitionException re) {
2666 reportError(re);
2667 recover(input,re);
2668 }
2669 finally {
2670 }
2671 return ;
2672 }
2673 // $ANTLR end "entryRuleIdentifier"
2674
2675
2676 // $ANTLR start "ruleIdentifier"
2677 // InternalProblem.g:895:1: ruleIdentifier : ( ( rule__Identifier__Alternatives ) ) ;
2678 public final void ruleIdentifier() throws RecognitionException {
2679
2680 int stackSize = keepStackSize();
2681
2682 try {
2683 // InternalProblem.g:899:2: ( ( ( rule__Identifier__Alternatives ) ) )
2684 // InternalProblem.g:900:2: ( ( rule__Identifier__Alternatives ) )
2685 {
2686 // InternalProblem.g:900:2: ( ( rule__Identifier__Alternatives ) )
2687 // InternalProblem.g:901:3: ( rule__Identifier__Alternatives )
2688 {
2689 before(grammarAccess.getIdentifierAccess().getAlternatives());
2690 // InternalProblem.g:902:3: ( rule__Identifier__Alternatives )
2691 // InternalProblem.g:902:4: rule__Identifier__Alternatives
2692 {
2693 pushFollow(FOLLOW_2);
2694 rule__Identifier__Alternatives();
2695
2696 state._fsp--;
2697
2698
2699 }
2700
2701 after(grammarAccess.getIdentifierAccess().getAlternatives());
2702
2703 }
2704
2705
2706 }
2707
2708 }
2709 catch (RecognitionException re) {
2710 reportError(re);
2711 recover(input,re);
2712 }
2713 finally {
2714
2715 restoreStackSize(stackSize);
2716
2717 }
2718 return ;
2719 }
2720 // $ANTLR end "ruleIdentifier"
2721
2722
2723 // $ANTLR start "entryRuleInteger"
2724 // InternalProblem.g:911:1: entryRuleInteger : ruleInteger EOF ;
2725 public final void entryRuleInteger() throws RecognitionException {
2726
2727 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
2728
2729 try {
2730 // InternalProblem.g:915:1: ( ruleInteger EOF )
2731 // InternalProblem.g:916:1: ruleInteger EOF
2732 {
2733 before(grammarAccess.getIntegerRule());
2734 pushFollow(FOLLOW_1);
2735 ruleInteger();
2736
2737 state._fsp--;
2738
2739 after(grammarAccess.getIntegerRule());
2740 match(input,EOF,FOLLOW_2);
2741
2742 }
2743
2744 }
2745 catch (RecognitionException re) {
2746 reportError(re);
2747 recover(input,re);
2748 }
2749 finally {
2750
2751 myHiddenTokenState.restore();
2752
2753 }
2754 return ;
2755 }
2756 // $ANTLR end "entryRuleInteger"
2757
2758
2759 // $ANTLR start "ruleInteger"
2760 // InternalProblem.g:926:1: ruleInteger : ( ( rule__Integer__Group__0 ) ) ;
2761 public final void ruleInteger() throws RecognitionException {
2762
2763 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
2764 int stackSize = keepStackSize();
2765
2766 try {
2767 // InternalProblem.g:931:2: ( ( ( rule__Integer__Group__0 ) ) )
2768 // InternalProblem.g:932:2: ( ( rule__Integer__Group__0 ) )
2769 {
2770 // InternalProblem.g:932:2: ( ( rule__Integer__Group__0 ) )
2771 // InternalProblem.g:933:3: ( rule__Integer__Group__0 )
2772 {
2773 before(grammarAccess.getIntegerAccess().getGroup());
2774 // InternalProblem.g:934:3: ( rule__Integer__Group__0 )
2775 // InternalProblem.g:934:4: rule__Integer__Group__0
2776 {
2777 pushFollow(FOLLOW_2);
2778 rule__Integer__Group__0();
2779
2780 state._fsp--;
2781
2782
2783 }
2784
2785 after(grammarAccess.getIntegerAccess().getGroup());
2786
2787 }
2788
2789
2790 }
2791
2792 }
2793 catch (RecognitionException re) {
2794 reportError(re);
2795 recover(input,re);
2796 }
2797 finally {
2798
2799 restoreStackSize(stackSize);
2800 myHiddenTokenState.restore();
2801
2802 }
2803 return ;
2804 }
2805 // $ANTLR end "ruleInteger"
2806
2807
2808 // $ANTLR start "entryRuleReal"
2809 // InternalProblem.g:944:1: entryRuleReal : ruleReal EOF ;
2810 public final void entryRuleReal() throws RecognitionException {
2811 try {
2812 // InternalProblem.g:945:1: ( ruleReal EOF )
2813 // InternalProblem.g:946:1: ruleReal EOF
2814 {
2815 before(grammarAccess.getRealRule());
2816 pushFollow(FOLLOW_1);
2817 ruleReal();
2818
2819 state._fsp--;
2820
2821 after(grammarAccess.getRealRule());
2822 match(input,EOF,FOLLOW_2);
2823
2824 }
2825
2826 }
2827 catch (RecognitionException re) {
2828 reportError(re);
2829 recover(input,re);
2830 }
2831 finally {
2832 }
2833 return ;
2834 }
2835 // $ANTLR end "entryRuleReal"
2836
2837
2838 // $ANTLR start "ruleReal"
2839 // InternalProblem.g:953:1: ruleReal : ( ( rule__Real__Group__0 ) ) ;
2840 public final void ruleReal() throws RecognitionException {
2841
2842 int stackSize = keepStackSize();
2843
2844 try {
2845 // InternalProblem.g:957:2: ( ( ( rule__Real__Group__0 ) ) )
2846 // InternalProblem.g:958:2: ( ( rule__Real__Group__0 ) )
2847 {
2848 // InternalProblem.g:958:2: ( ( rule__Real__Group__0 ) )
2849 // InternalProblem.g:959:3: ( rule__Real__Group__0 )
2850 {
2851 before(grammarAccess.getRealAccess().getGroup());
2852 // InternalProblem.g:960:3: ( rule__Real__Group__0 )
2853 // InternalProblem.g:960:4: rule__Real__Group__0
2854 {
2855 pushFollow(FOLLOW_2);
2856 rule__Real__Group__0();
2857
2858 state._fsp--;
2859
2860
2861 }
2862
2863 after(grammarAccess.getRealAccess().getGroup());
2864
2865 }
2866
2867
2868 }
2869
2870 }
2871 catch (RecognitionException re) {
2872 reportError(re);
2873 recover(input,re);
2874 }
2875 finally {
2876
2877 restoreStackSize(stackSize);
2878
2879 }
2880 return ;
2881 }
2882 // $ANTLR end "ruleReal"
2883
2884
2885 // $ANTLR start "ruleLogicValue"
2886 // InternalProblem.g:969:1: ruleLogicValue : ( ( rule__LogicValue__Alternatives ) ) ;
2887 public final void ruleLogicValue() throws RecognitionException {
2888
2889 int stackSize = keepStackSize();
2890
2891 try {
2892 // InternalProblem.g:973:1: ( ( ( rule__LogicValue__Alternatives ) ) )
2893 // InternalProblem.g:974:2: ( ( rule__LogicValue__Alternatives ) )
2894 {
2895 // InternalProblem.g:974:2: ( ( rule__LogicValue__Alternatives ) )
2896 // InternalProblem.g:975:3: ( rule__LogicValue__Alternatives )
2897 {
2898 before(grammarAccess.getLogicValueAccess().getAlternatives());
2899 // InternalProblem.g:976:3: ( rule__LogicValue__Alternatives )
2900 // InternalProblem.g:976:4: rule__LogicValue__Alternatives
2901 {
2902 pushFollow(FOLLOW_2);
2903 rule__LogicValue__Alternatives();
2904
2905 state._fsp--;
2906
2907
2908 }
2909
2910 after(grammarAccess.getLogicValueAccess().getAlternatives());
2911
2912 }
2913
2914
2915 }
2916
2917 }
2918 catch (RecognitionException re) {
2919 reportError(re);
2920 recover(input,re);
2921 }
2922 finally {
2923
2924 restoreStackSize(stackSize);
2925
2926 }
2927 return ;
2928 }
2929 // $ANTLR end "ruleLogicValue"
2930
2931
2932 // $ANTLR start "ruleShortLogicValue"
2933 // InternalProblem.g:985:1: ruleShortLogicValue : ( ( rule__ShortLogicValue__Alternatives ) ) ;
2934 public final void ruleShortLogicValue() throws RecognitionException {
2935
2936 int stackSize = keepStackSize();
2937
2938 try {
2939 // InternalProblem.g:989:1: ( ( ( rule__ShortLogicValue__Alternatives ) ) )
2940 // InternalProblem.g:990:2: ( ( rule__ShortLogicValue__Alternatives ) )
2941 {
2942 // InternalProblem.g:990:2: ( ( rule__ShortLogicValue__Alternatives ) )
2943 // InternalProblem.g:991:3: ( rule__ShortLogicValue__Alternatives )
2944 {
2945 before(grammarAccess.getShortLogicValueAccess().getAlternatives());
2946 // InternalProblem.g:992:3: ( rule__ShortLogicValue__Alternatives )
2947 // InternalProblem.g:992:4: rule__ShortLogicValue__Alternatives
2948 {
2949 pushFollow(FOLLOW_2);
2950 rule__ShortLogicValue__Alternatives();
2951
2952 state._fsp--;
2953
2954
2955 }
2956
2957 after(grammarAccess.getShortLogicValueAccess().getAlternatives());
2958
2959 }
2960
2961
2962 }
2963
2964 }
2965 catch (RecognitionException re) {
2966 reportError(re);
2967 recover(input,re);
2968 }
2969 finally {
2970
2971 restoreStackSize(stackSize);
2972
2973 }
2974 return ;
2975 }
2976 // $ANTLR end "ruleShortLogicValue"
2977
2978
2979 // $ANTLR start "rule__Statement__Alternatives"
2980 // InternalProblem.g:1000:1: rule__Statement__Alternatives : ( ( ruleClassDeclaration ) | ( ruleEnumDeclaration ) | ( rulePredicateDefinition ) | ( ruleAssertion ) | ( ruleNodeValueAssertion ) | ( ruleScopeDeclaration ) );
2981 public final void rule__Statement__Alternatives() throws RecognitionException {
2982
2983 int stackSize = keepStackSize();
2984
2985 try {
2986 // InternalProblem.g:1004:1: ( ( ruleClassDeclaration ) | ( ruleEnumDeclaration ) | ( rulePredicateDefinition ) | ( ruleAssertion ) | ( ruleNodeValueAssertion ) | ( ruleScopeDeclaration ) )
2987 int alt1=6;
2988 alt1 = dfa1.predict(input);
2989 switch (alt1) {
2990 case 1 :
2991 // InternalProblem.g:1005:2: ( ruleClassDeclaration )
2992 {
2993 // InternalProblem.g:1005:2: ( ruleClassDeclaration )
2994 // InternalProblem.g:1006:3: ruleClassDeclaration
2995 {
2996 before(grammarAccess.getStatementAccess().getClassDeclarationParserRuleCall_0());
2997 pushFollow(FOLLOW_2);
2998 ruleClassDeclaration();
2999
3000 state._fsp--;
3001
3002 after(grammarAccess.getStatementAccess().getClassDeclarationParserRuleCall_0());
3003
3004 }
3005
3006
3007 }
3008 break;
3009 case 2 :
3010 // InternalProblem.g:1011:2: ( ruleEnumDeclaration )
3011 {
3012 // InternalProblem.g:1011:2: ( ruleEnumDeclaration )
3013 // InternalProblem.g:1012:3: ruleEnumDeclaration
3014 {
3015 before(grammarAccess.getStatementAccess().getEnumDeclarationParserRuleCall_1());
3016 pushFollow(FOLLOW_2);
3017 ruleEnumDeclaration();
3018
3019 state._fsp--;
3020
3021 after(grammarAccess.getStatementAccess().getEnumDeclarationParserRuleCall_1());
3022
3023 }
3024
3025
3026 }
3027 break;
3028 case 3 :
3029 // InternalProblem.g:1017:2: ( rulePredicateDefinition )
3030 {
3031 // InternalProblem.g:1017:2: ( rulePredicateDefinition )
3032 // InternalProblem.g:1018:3: rulePredicateDefinition
3033 {
3034 before(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_2());
3035 pushFollow(FOLLOW_2);
3036 rulePredicateDefinition();
3037
3038 state._fsp--;
3039
3040 after(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_2());
3041
3042 }
3043
3044
3045 }
3046 break;
3047 case 4 :
3048 // InternalProblem.g:1023:2: ( ruleAssertion )
3049 {
3050 // InternalProblem.g:1023:2: ( ruleAssertion )
3051 // InternalProblem.g:1024:3: ruleAssertion
3052 {
3053 before(grammarAccess.getStatementAccess().getAssertionParserRuleCall_3());
3054 pushFollow(FOLLOW_2);
3055 ruleAssertion();
3056
3057 state._fsp--;
3058
3059 after(grammarAccess.getStatementAccess().getAssertionParserRuleCall_3());
3060
3061 }
3062
3063
3064 }
3065 break;
3066 case 5 :
3067 // InternalProblem.g:1029:2: ( ruleNodeValueAssertion )
3068 {
3069 // InternalProblem.g:1029:2: ( ruleNodeValueAssertion )
3070 // InternalProblem.g:1030:3: ruleNodeValueAssertion
3071 {
3072 before(grammarAccess.getStatementAccess().getNodeValueAssertionParserRuleCall_4());
3073 pushFollow(FOLLOW_2);
3074 ruleNodeValueAssertion();
3075
3076 state._fsp--;
3077
3078 after(grammarAccess.getStatementAccess().getNodeValueAssertionParserRuleCall_4());
3079
3080 }
3081
3082
3083 }
3084 break;
3085 case 6 :
3086 // InternalProblem.g:1035:2: ( ruleScopeDeclaration )
3087 {
3088 // InternalProblem.g:1035:2: ( ruleScopeDeclaration )
3089 // InternalProblem.g:1036:3: ruleScopeDeclaration
3090 {
3091 before(grammarAccess.getStatementAccess().getScopeDeclarationParserRuleCall_5());
3092 pushFollow(FOLLOW_2);
3093 ruleScopeDeclaration();
3094
3095 state._fsp--;
3096
3097 after(grammarAccess.getStatementAccess().getScopeDeclarationParserRuleCall_5());
3098
3099 }
3100
3101
3102 }
3103 break;
3104
3105 }
3106 }
3107 catch (RecognitionException re) {
3108 reportError(re);
3109 recover(input,re);
3110 }
3111 finally {
3112
3113 restoreStackSize(stackSize);
3114
3115 }
3116 return ;
3117 }
3118 // $ANTLR end "rule__Statement__Alternatives"
3119
3120
3121 // $ANTLR start "rule__ClassDeclaration__Alternatives_4"
3122 // InternalProblem.g:1045:1: rule__ClassDeclaration__Alternatives_4 : ( ( ( rule__ClassDeclaration__Group_4_0__0 ) ) | ( '.' ) );
3123 public final void rule__ClassDeclaration__Alternatives_4() throws RecognitionException {
3124
3125 int stackSize = keepStackSize();
3126
3127 try {
3128 // InternalProblem.g:1049:1: ( ( ( rule__ClassDeclaration__Group_4_0__0 ) ) | ( '.' ) )
3129 int alt2=2;
3130 int LA2_0 = input.LA(1);
3131
3132 if ( (LA2_0==28) ) {
3133 alt2=1;
3134 }
3135 else if ( (LA2_0==13) ) {
3136 alt2=2;
3137 }
3138 else {
3139 NoViableAltException nvae =
3140 new NoViableAltException("", 2, 0, input);
3141
3142 throw nvae;
3143 }
3144 switch (alt2) {
3145 case 1 :
3146 // InternalProblem.g:1050:2: ( ( rule__ClassDeclaration__Group_4_0__0 ) )
3147 {
3148 // InternalProblem.g:1050:2: ( ( rule__ClassDeclaration__Group_4_0__0 ) )
3149 // InternalProblem.g:1051:3: ( rule__ClassDeclaration__Group_4_0__0 )
3150 {
3151 before(grammarAccess.getClassDeclarationAccess().getGroup_4_0());
3152 // InternalProblem.g:1052:3: ( rule__ClassDeclaration__Group_4_0__0 )
3153 // InternalProblem.g:1052:4: rule__ClassDeclaration__Group_4_0__0
3154 {
3155 pushFollow(FOLLOW_2);
3156 rule__ClassDeclaration__Group_4_0__0();
3157
3158 state._fsp--;
3159
3160
3161 }
3162
3163 after(grammarAccess.getClassDeclarationAccess().getGroup_4_0());
3164
3165 }
3166
3167
3168 }
3169 break;
3170 case 2 :
3171 // InternalProblem.g:1056:2: ( '.' )
3172 {
3173 // InternalProblem.g:1056:2: ( '.' )
3174 // InternalProblem.g:1057:3: '.'
3175 {
3176 before(grammarAccess.getClassDeclarationAccess().getFullStopKeyword_4_1());
3177 match(input,13,FOLLOW_2);
3178 after(grammarAccess.getClassDeclarationAccess().getFullStopKeyword_4_1());
3179
3180 }
3181
3182
3183 }
3184 break;
3185
3186 }
3187 }
3188 catch (RecognitionException re) {
3189 reportError(re);
3190 recover(input,re);
3191 }
3192 finally {
3193
3194 restoreStackSize(stackSize);
3195
3196 }
3197 return ;
3198 }
3199 // $ANTLR end "rule__ClassDeclaration__Alternatives_4"
3200
3201
3202 // $ANTLR start "rule__EnumDeclaration__Alternatives_2"
3203 // InternalProblem.g:1066:1: rule__EnumDeclaration__Alternatives_2 : ( ( ( rule__EnumDeclaration__Group_2_0__0 ) ) | ( '.' ) );
3204 public final void rule__EnumDeclaration__Alternatives_2() throws RecognitionException {
3205
3206 int stackSize = keepStackSize();
3207
3208 try {
3209 // InternalProblem.g:1070:1: ( ( ( rule__EnumDeclaration__Group_2_0__0 ) ) | ( '.' ) )
3210 int alt3=2;
3211 int LA3_0 = input.LA(1);
3212
3213 if ( (LA3_0==28) ) {
3214 alt3=1;
3215 }
3216 else if ( (LA3_0==13) ) {
3217 alt3=2;
3218 }
3219 else {
3220 NoViableAltException nvae =
3221 new NoViableAltException("", 3, 0, input);
3222
3223 throw nvae;
3224 }
3225 switch (alt3) {
3226 case 1 :
3227 // InternalProblem.g:1071:2: ( ( rule__EnumDeclaration__Group_2_0__0 ) )
3228 {
3229 // InternalProblem.g:1071:2: ( ( rule__EnumDeclaration__Group_2_0__0 ) )
3230 // InternalProblem.g:1072:3: ( rule__EnumDeclaration__Group_2_0__0 )
3231 {
3232 before(grammarAccess.getEnumDeclarationAccess().getGroup_2_0());
3233 // InternalProblem.g:1073:3: ( rule__EnumDeclaration__Group_2_0__0 )
3234 // InternalProblem.g:1073:4: rule__EnumDeclaration__Group_2_0__0
3235 {
3236 pushFollow(FOLLOW_2);
3237 rule__EnumDeclaration__Group_2_0__0();
3238
3239 state._fsp--;
3240
3241
3242 }
3243
3244 after(grammarAccess.getEnumDeclarationAccess().getGroup_2_0());
3245
3246 }
3247
3248
3249 }
3250 break;
3251 case 2 :
3252 // InternalProblem.g:1077:2: ( '.' )
3253 {
3254 // InternalProblem.g:1077:2: ( '.' )
3255 // InternalProblem.g:1078:3: '.'
3256 {
3257 before(grammarAccess.getEnumDeclarationAccess().getFullStopKeyword_2_1());
3258 match(input,13,FOLLOW_2);
3259 after(grammarAccess.getEnumDeclarationAccess().getFullStopKeyword_2_1());
3260
3261 }
3262
3263
3264 }
3265 break;
3266
3267 }
3268 }
3269 catch (RecognitionException re) {
3270 reportError(re);
3271 recover(input,re);
3272 }
3273 finally {
3274
3275 restoreStackSize(stackSize);
3276
3277 }
3278 return ;
3279 }
3280 // $ANTLR end "rule__EnumDeclaration__Alternatives_2"
3281
3282
3283 // $ANTLR start "rule__EnumDeclaration__Alternatives_2_0_1_2"
3284 // InternalProblem.g:1087:1: rule__EnumDeclaration__Alternatives_2_0_1_2 : ( ( ',' ) | ( ';' ) );
3285 public final void rule__EnumDeclaration__Alternatives_2_0_1_2() throws RecognitionException {
3286
3287 int stackSize = keepStackSize();
3288
3289 try {
3290 // InternalProblem.g:1091:1: ( ( ',' ) | ( ';' ) )
3291 int alt4=2;
3292 int LA4_0 = input.LA(1);
3293
3294 if ( (LA4_0==14) ) {
3295 alt4=1;
3296 }
3297 else if ( (LA4_0==15) ) {
3298 alt4=2;
3299 }
3300 else {
3301 NoViableAltException nvae =
3302 new NoViableAltException("", 4, 0, input);
3303
3304 throw nvae;
3305 }
3306 switch (alt4) {
3307 case 1 :
3308 // InternalProblem.g:1092:2: ( ',' )
3309 {
3310 // InternalProblem.g:1092:2: ( ',' )
3311 // InternalProblem.g:1093:3: ','
3312 {
3313 before(grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_2_0());
3314 match(input,14,FOLLOW_2);
3315 after(grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_2_0());
3316
3317 }
3318
3319
3320 }
3321 break;
3322 case 2 :
3323 // InternalProblem.g:1098:2: ( ';' )
3324 {
3325 // InternalProblem.g:1098:2: ( ';' )
3326 // InternalProblem.g:1099:3: ';'
3327 {
3328 before(grammarAccess.getEnumDeclarationAccess().getSemicolonKeyword_2_0_1_2_1());
3329 match(input,15,FOLLOW_2);
3330 after(grammarAccess.getEnumDeclarationAccess().getSemicolonKeyword_2_0_1_2_1());
3331
3332 }
3333
3334
3335 }
3336 break;
3337
3338 }
3339 }
3340 catch (RecognitionException re) {
3341 reportError(re);
3342 recover(input,re);
3343 }
3344 finally {
3345
3346 restoreStackSize(stackSize);
3347
3348 }
3349 return ;
3350 }
3351 // $ANTLR end "rule__EnumDeclaration__Alternatives_2_0_1_2"
3352
3353
3354 // $ANTLR start "rule__ReferenceDeclaration__Alternatives_0"
3355 // InternalProblem.g:1108:1: rule__ReferenceDeclaration__Alternatives_0 : ( ( ( rule__ReferenceDeclaration__ContainmentAssignment_0_0 ) ) | ( 'refers' ) );
3356 public final void rule__ReferenceDeclaration__Alternatives_0() throws RecognitionException {
3357
3358 int stackSize = keepStackSize();
3359
3360 try {
3361 // InternalProblem.g:1112:1: ( ( ( rule__ReferenceDeclaration__ContainmentAssignment_0_0 ) ) | ( 'refers' ) )
3362 int alt5=2;
3363 int LA5_0 = input.LA(1);
3364
3365 if ( (LA5_0==43) ) {
3366 alt5=1;
3367 }
3368 else if ( (LA5_0==16) ) {
3369 alt5=2;
3370 }
3371 else {
3372 NoViableAltException nvae =
3373 new NoViableAltException("", 5, 0, input);
3374
3375 throw nvae;
3376 }
3377 switch (alt5) {
3378 case 1 :
3379 // InternalProblem.g:1113:2: ( ( rule__ReferenceDeclaration__ContainmentAssignment_0_0 ) )
3380 {
3381 // InternalProblem.g:1113:2: ( ( rule__ReferenceDeclaration__ContainmentAssignment_0_0 ) )
3382 // InternalProblem.g:1114:3: ( rule__ReferenceDeclaration__ContainmentAssignment_0_0 )
3383 {
3384 before(grammarAccess.getReferenceDeclarationAccess().getContainmentAssignment_0_0());
3385 // InternalProblem.g:1115:3: ( rule__ReferenceDeclaration__ContainmentAssignment_0_0 )
3386 // InternalProblem.g:1115:4: rule__ReferenceDeclaration__ContainmentAssignment_0_0
3387 {
3388 pushFollow(FOLLOW_2);
3389 rule__ReferenceDeclaration__ContainmentAssignment_0_0();
3390
3391 state._fsp--;
3392
3393
3394 }
3395
3396 after(grammarAccess.getReferenceDeclarationAccess().getContainmentAssignment_0_0());
3397
3398 }
3399
3400
3401 }
3402 break;
3403 case 2 :
3404 // InternalProblem.g:1119:2: ( 'refers' )
3405 {
3406 // InternalProblem.g:1119:2: ( 'refers' )
3407 // InternalProblem.g:1120:3: 'refers'
3408 {
3409 before(grammarAccess.getReferenceDeclarationAccess().getRefersKeyword_0_1());
3410 match(input,16,FOLLOW_2);
3411 after(grammarAccess.getReferenceDeclarationAccess().getRefersKeyword_0_1());
3412
3413 }
3414
3415
3416 }
3417 break;
3418
3419 }
3420 }
3421 catch (RecognitionException re) {
3422 reportError(re);
3423 recover(input,re);
3424 }
3425 finally {
3426
3427 restoreStackSize(stackSize);
3428
3429 }
3430 return ;
3431 }
3432 // $ANTLR end "rule__ReferenceDeclaration__Alternatives_0"
3433
3434
3435 // $ANTLR start "rule__PredicateDefinition__Alternatives_0"
3436 // InternalProblem.g:1129:1: rule__PredicateDefinition__Alternatives_0 : ( ( ( rule__PredicateDefinition__Group_0_0__0 ) ) | ( 'pred' ) );
3437 public final void rule__PredicateDefinition__Alternatives_0() throws RecognitionException {
3438
3439 int stackSize = keepStackSize();
3440
3441 try {
3442 // InternalProblem.g:1133:1: ( ( ( rule__PredicateDefinition__Group_0_0__0 ) ) | ( 'pred' ) )
3443 int alt6=2;
3444 int LA6_0 = input.LA(1);
3445
3446 if ( (LA6_0==44) ) {
3447 alt6=1;
3448 }
3449 else if ( (LA6_0==17) ) {
3450 alt6=2;
3451 }
3452 else {
3453 NoViableAltException nvae =
3454 new NoViableAltException("", 6, 0, input);
3455
3456 throw nvae;
3457 }
3458 switch (alt6) {
3459 case 1 :
3460 // InternalProblem.g:1134:2: ( ( rule__PredicateDefinition__Group_0_0__0 ) )
3461 {
3462 // InternalProblem.g:1134:2: ( ( rule__PredicateDefinition__Group_0_0__0 ) )
3463 // InternalProblem.g:1135:3: ( rule__PredicateDefinition__Group_0_0__0 )
3464 {
3465 before(grammarAccess.getPredicateDefinitionAccess().getGroup_0_0());
3466 // InternalProblem.g:1136:3: ( rule__PredicateDefinition__Group_0_0__0 )
3467 // InternalProblem.g:1136:4: rule__PredicateDefinition__Group_0_0__0
3468 {
3469 pushFollow(FOLLOW_2);
3470 rule__PredicateDefinition__Group_0_0__0();
3471
3472 state._fsp--;
3473
3474
3475 }
3476
3477 after(grammarAccess.getPredicateDefinitionAccess().getGroup_0_0());
3478
3479 }
3480
3481
3482 }
3483 break;
3484 case 2 :
3485 // InternalProblem.g:1140:2: ( 'pred' )
3486 {
3487 // InternalProblem.g:1140:2: ( 'pred' )
3488 // InternalProblem.g:1141:3: 'pred'
3489 {
3490 before(grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_1());
3491 match(input,17,FOLLOW_2);
3492 after(grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_1());
3493
3494 }
3495
3496
3497 }
3498 break;
3499
3500 }
3501 }
3502 catch (RecognitionException re) {
3503 reportError(re);
3504 recover(input,re);
3505 }
3506 finally {
3507
3508 restoreStackSize(stackSize);
3509
3510 }
3511 return ;
3512 }
3513 // $ANTLR end "rule__PredicateDefinition__Alternatives_0"
3514
3515
3516 // $ANTLR start "rule__Literal__Alternatives"
3517 // InternalProblem.g:1150:1: rule__Literal__Alternatives : ( ( ruleAtom ) | ( ruleNegativeLiteral ) );
3518 public final void rule__Literal__Alternatives() throws RecognitionException {
3519
3520 int stackSize = keepStackSize();
3521
3522 try {
3523 // InternalProblem.g:1154:1: ( ( ruleAtom ) | ( ruleNegativeLiteral ) )
3524 int alt7=2;
3525 int LA7_0 = input.LA(1);
3526
3527 if ( ((LA7_0>=RULE_QUOTED_ID && LA7_0<=RULE_ID)||(LA7_0>=20 && LA7_0<=21)) ) {
3528 alt7=1;
3529 }
3530 else if ( (LA7_0==23) ) {
3531 alt7=2;
3532 }
3533 else {
3534 NoViableAltException nvae =
3535 new NoViableAltException("", 7, 0, input);
3536
3537 throw nvae;
3538 }
3539 switch (alt7) {
3540 case 1 :
3541 // InternalProblem.g:1155:2: ( ruleAtom )
3542 {
3543 // InternalProblem.g:1155:2: ( ruleAtom )
3544 // InternalProblem.g:1156:3: ruleAtom
3545 {
3546 before(grammarAccess.getLiteralAccess().getAtomParserRuleCall_0());
3547 pushFollow(FOLLOW_2);
3548 ruleAtom();
3549
3550 state._fsp--;
3551
3552 after(grammarAccess.getLiteralAccess().getAtomParserRuleCall_0());
3553
3554 }
3555
3556
3557 }
3558 break;
3559 case 2 :
3560 // InternalProblem.g:1161:2: ( ruleNegativeLiteral )
3561 {
3562 // InternalProblem.g:1161:2: ( ruleNegativeLiteral )
3563 // InternalProblem.g:1162:3: ruleNegativeLiteral
3564 {
3565 before(grammarAccess.getLiteralAccess().getNegativeLiteralParserRuleCall_1());
3566 pushFollow(FOLLOW_2);
3567 ruleNegativeLiteral();
3568
3569 state._fsp--;
3570
3571 after(grammarAccess.getLiteralAccess().getNegativeLiteralParserRuleCall_1());
3572
3573 }
3574
3575
3576 }
3577 break;
3578
3579 }
3580 }
3581 catch (RecognitionException re) {
3582 reportError(re);
3583 recover(input,re);
3584 }
3585 finally {
3586
3587 restoreStackSize(stackSize);
3588
3589 }
3590 return ;
3591 }
3592 // $ANTLR end "rule__Literal__Alternatives"
3593
3594
3595 // $ANTLR start "rule__Argument__Alternatives"
3596 // InternalProblem.g:1171:1: rule__Argument__Alternatives : ( ( ruleVariableOrNodeArgument ) | ( ruleConstantArgument ) );
3597 public final void rule__Argument__Alternatives() throws RecognitionException {
3598
3599 int stackSize = keepStackSize();
3600
3601 try {
3602 // InternalProblem.g:1175:1: ( ( ruleVariableOrNodeArgument ) | ( ruleConstantArgument ) )
3603 int alt8=2;
3604 int LA8_0 = input.LA(1);
3605
3606 if ( ((LA8_0>=RULE_QUOTED_ID && LA8_0<=RULE_ID)||(LA8_0>=20 && LA8_0<=21)) ) {
3607 alt8=1;
3608 }
3609 else if ( (LA8_0==RULE_INT||(LA8_0>=RULE_EXPONENTIAL && LA8_0<=RULE_STRING)||LA8_0==41) ) {
3610 alt8=2;
3611 }
3612 else {
3613 NoViableAltException nvae =
3614 new NoViableAltException("", 8, 0, input);
3615
3616 throw nvae;
3617 }
3618 switch (alt8) {
3619 case 1 :
3620 // InternalProblem.g:1176:2: ( ruleVariableOrNodeArgument )
3621 {
3622 // InternalProblem.g:1176:2: ( ruleVariableOrNodeArgument )
3623 // InternalProblem.g:1177:3: ruleVariableOrNodeArgument
3624 {
3625 before(grammarAccess.getArgumentAccess().getVariableOrNodeArgumentParserRuleCall_0());
3626 pushFollow(FOLLOW_2);
3627 ruleVariableOrNodeArgument();
3628
3629 state._fsp--;
3630
3631 after(grammarAccess.getArgumentAccess().getVariableOrNodeArgumentParserRuleCall_0());
3632
3633 }
3634
3635
3636 }
3637 break;
3638 case 2 :
3639 // InternalProblem.g:1182:2: ( ruleConstantArgument )
3640 {
3641 // InternalProblem.g:1182:2: ( ruleConstantArgument )
3642 // InternalProblem.g:1183:3: ruleConstantArgument
3643 {
3644 before(grammarAccess.getArgumentAccess().getConstantArgumentParserRuleCall_1());
3645 pushFollow(FOLLOW_2);
3646 ruleConstantArgument();
3647
3648 state._fsp--;
3649
3650 after(grammarAccess.getArgumentAccess().getConstantArgumentParserRuleCall_1());
3651
3652 }
3653
3654
3655 }
3656 break;
3657
3658 }
3659 }
3660 catch (RecognitionException re) {
3661 reportError(re);
3662 recover(input,re);
3663 }
3664 finally {
3665
3666 restoreStackSize(stackSize);
3667
3668 }
3669 return ;
3670 }
3671 // $ANTLR end "rule__Argument__Alternatives"
3672
3673
3674 // $ANTLR start "rule__Assertion__Alternatives_0"
3675 // InternalProblem.g:1192:1: rule__Assertion__Alternatives_0 : ( ( ( rule__Assertion__Group_0_0__0 ) ) | ( ( rule__Assertion__Group_0_1__0 ) ) );
3676 public final void rule__Assertion__Alternatives_0() throws RecognitionException {
3677
3678 int stackSize = keepStackSize();
3679
3680 try {
3681 // InternalProblem.g:1196:1: ( ( ( rule__Assertion__Group_0_0__0 ) ) | ( ( rule__Assertion__Group_0_1__0 ) ) )
3682 int alt9=2;
3683 alt9 = dfa9.predict(input);
3684 switch (alt9) {
3685 case 1 :
3686 // InternalProblem.g:1197:2: ( ( rule__Assertion__Group_0_0__0 ) )
3687 {
3688 // InternalProblem.g:1197:2: ( ( rule__Assertion__Group_0_0__0 ) )
3689 // InternalProblem.g:1198:3: ( rule__Assertion__Group_0_0__0 )
3690 {
3691 before(grammarAccess.getAssertionAccess().getGroup_0_0());
3692 // InternalProblem.g:1199:3: ( rule__Assertion__Group_0_0__0 )
3693 // InternalProblem.g:1199:4: rule__Assertion__Group_0_0__0
3694 {
3695 pushFollow(FOLLOW_2);
3696 rule__Assertion__Group_0_0__0();
3697
3698 state._fsp--;
3699
3700
3701 }
3702
3703 after(grammarAccess.getAssertionAccess().getGroup_0_0());
3704
3705 }
3706
3707
3708 }
3709 break;
3710 case 2 :
3711 // InternalProblem.g:1203:2: ( ( rule__Assertion__Group_0_1__0 ) )
3712 {
3713 // InternalProblem.g:1203:2: ( ( rule__Assertion__Group_0_1__0 ) )
3714 // InternalProblem.g:1204:3: ( rule__Assertion__Group_0_1__0 )
3715 {
3716 before(grammarAccess.getAssertionAccess().getGroup_0_1());
3717 // InternalProblem.g:1205:3: ( rule__Assertion__Group_0_1__0 )
3718 // InternalProblem.g:1205:4: rule__Assertion__Group_0_1__0
3719 {
3720 pushFollow(FOLLOW_2);
3721 rule__Assertion__Group_0_1__0();
3722
3723 state._fsp--;
3724
3725
3726 }
3727
3728 after(grammarAccess.getAssertionAccess().getGroup_0_1());
3729
3730 }
3731
3732
3733 }
3734 break;
3735
3736 }
3737 }
3738 catch (RecognitionException re) {
3739 reportError(re);
3740 recover(input,re);
3741 }
3742 finally {
3743
3744 restoreStackSize(stackSize);
3745
3746 }
3747 return ;
3748 }
3749 // $ANTLR end "rule__Assertion__Alternatives_0"
3750
3751
3752 // $ANTLR start "rule__AssertionArgument__Alternatives"
3753 // InternalProblem.g:1213:1: rule__AssertionArgument__Alternatives : ( ( ruleNodeAssertionArgument ) | ( ruleConstantAssertionArgument ) );
3754 public final void rule__AssertionArgument__Alternatives() throws RecognitionException {
3755
3756 int stackSize = keepStackSize();
3757
3758 try {
3759 // InternalProblem.g:1217:1: ( ( ruleNodeAssertionArgument ) | ( ruleConstantAssertionArgument ) )
3760 int alt10=2;
3761 int LA10_0 = input.LA(1);
3762
3763 if ( ((LA10_0>=RULE_QUOTED_ID && LA10_0<=RULE_ID)||(LA10_0>=20 && LA10_0<=21)) ) {
3764 alt10=1;
3765 }
3766 else if ( (LA10_0==RULE_INT||(LA10_0>=RULE_EXPONENTIAL && LA10_0<=RULE_STRING)||LA10_0==41) ) {
3767 alt10=2;
3768 }
3769 else {
3770 NoViableAltException nvae =
3771 new NoViableAltException("", 10, 0, input);
3772
3773 throw nvae;
3774 }
3775 switch (alt10) {
3776 case 1 :
3777 // InternalProblem.g:1218:2: ( ruleNodeAssertionArgument )
3778 {
3779 // InternalProblem.g:1218:2: ( ruleNodeAssertionArgument )
3780 // InternalProblem.g:1219:3: ruleNodeAssertionArgument
3781 {
3782 before(grammarAccess.getAssertionArgumentAccess().getNodeAssertionArgumentParserRuleCall_0());
3783 pushFollow(FOLLOW_2);
3784 ruleNodeAssertionArgument();
3785
3786 state._fsp--;
3787
3788 after(grammarAccess.getAssertionArgumentAccess().getNodeAssertionArgumentParserRuleCall_0());
3789
3790 }
3791
3792
3793 }
3794 break;
3795 case 2 :
3796 // InternalProblem.g:1224:2: ( ruleConstantAssertionArgument )
3797 {
3798 // InternalProblem.g:1224:2: ( ruleConstantAssertionArgument )
3799 // InternalProblem.g:1225:3: ruleConstantAssertionArgument
3800 {
3801 before(grammarAccess.getAssertionArgumentAccess().getConstantAssertionArgumentParserRuleCall_1());
3802 pushFollow(FOLLOW_2);
3803 ruleConstantAssertionArgument();
3804
3805 state._fsp--;
3806
3807 after(grammarAccess.getAssertionArgumentAccess().getConstantAssertionArgumentParserRuleCall_1());
3808
3809 }
3810
3811
3812 }
3813 break;
3814
3815 }
3816 }
3817 catch (RecognitionException re) {
3818 reportError(re);
3819 recover(input,re);
3820 }
3821 finally {
3822
3823 restoreStackSize(stackSize);
3824
3825 }
3826 return ;
3827 }
3828 // $ANTLR end "rule__AssertionArgument__Alternatives"
3829
3830
3831 // $ANTLR start "rule__Constant__Alternatives"
3832 // InternalProblem.g:1234:1: rule__Constant__Alternatives : ( ( ruleRealConstant ) | ( ruleIntConstant ) | ( ruleStringConstant ) );
3833 public final void rule__Constant__Alternatives() throws RecognitionException {
3834
3835 int stackSize = keepStackSize();
3836
3837 try {
3838 // InternalProblem.g:1238:1: ( ( ruleRealConstant ) | ( ruleIntConstant ) | ( ruleStringConstant ) )
3839 int alt11=3;
3840 switch ( input.LA(1) ) {
3841 case 41:
3842 {
3843 int LA11_1 = input.LA(2);
3844
3845 if ( (LA11_1==RULE_EXPONENTIAL) ) {
3846 alt11=1;
3847 }
3848 else if ( (LA11_1==RULE_INT) ) {
3849 int LA11_3 = input.LA(3);
3850
3851 if ( (LA11_3==EOF||LA11_3==14||LA11_3==35) ) {
3852 alt11=2;
3853 }
3854 else if ( (LA11_3==13) ) {
3855 int LA11_6 = input.LA(4);
3856
3857 if ( (LA11_6==EOF||(LA11_6>=RULE_QUOTED_ID && LA11_6<=RULE_ID)||LA11_6==17||(LA11_6>=20 && LA11_6<=21)||(LA11_6>=23 && LA11_6<=24)||LA11_6==26||LA11_6==30||LA11_6==38||LA11_6==42||LA11_6==44) ) {
3858 alt11=2;
3859 }
3860 else if ( (LA11_6==RULE_INT||LA11_6==RULE_EXPONENTIAL) ) {
3861 alt11=1;
3862 }
3863 else {
3864 NoViableAltException nvae =
3865 new NoViableAltException("", 11, 6, input);
3866
3867 throw nvae;
3868 }
3869 }
3870 else {
3871 NoViableAltException nvae =
3872 new NoViableAltException("", 11, 3, input);
3873
3874 throw nvae;
3875 }
3876 }
3877 else {
3878 NoViableAltException nvae =
3879 new NoViableAltException("", 11, 1, input);
3880
3881 throw nvae;
3882 }
3883 }
3884 break;
3885 case RULE_EXPONENTIAL:
3886 {
3887 alt11=1;
3888 }
3889 break;
3890 case RULE_INT:
3891 {
3892 int LA11_3 = input.LA(2);
3893
3894 if ( (LA11_3==EOF||LA11_3==14||LA11_3==35) ) {
3895 alt11=2;
3896 }
3897 else if ( (LA11_3==13) ) {
3898 int LA11_6 = input.LA(3);
3899
3900 if ( (LA11_6==EOF||(LA11_6>=RULE_QUOTED_ID && LA11_6<=RULE_ID)||LA11_6==17||(LA11_6>=20 && LA11_6<=21)||(LA11_6>=23 && LA11_6<=24)||LA11_6==26||LA11_6==30||LA11_6==38||LA11_6==42||LA11_6==44) ) {
3901 alt11=2;
3902 }
3903 else if ( (LA11_6==RULE_INT||LA11_6==RULE_EXPONENTIAL) ) {
3904 alt11=1;
3905 }
3906 else {
3907 NoViableAltException nvae =
3908 new NoViableAltException("", 11, 6, input);
3909
3910 throw nvae;
3911 }
3912 }
3913 else {
3914 NoViableAltException nvae =
3915 new NoViableAltException("", 11, 3, input);
3916
3917 throw nvae;
3918 }
3919 }
3920 break;
3921 case RULE_STRING:
3922 {
3923 alt11=3;
3924 }
3925 break;
3926 default:
3927 NoViableAltException nvae =
3928 new NoViableAltException("", 11, 0, input);
3929
3930 throw nvae;
3931 }
3932
3933 switch (alt11) {
3934 case 1 :
3935 // InternalProblem.g:1239:2: ( ruleRealConstant )
3936 {
3937 // InternalProblem.g:1239:2: ( ruleRealConstant )
3938 // InternalProblem.g:1240:3: ruleRealConstant
3939 {
3940 before(grammarAccess.getConstantAccess().getRealConstantParserRuleCall_0());
3941 pushFollow(FOLLOW_2);
3942 ruleRealConstant();
3943
3944 state._fsp--;
3945
3946 after(grammarAccess.getConstantAccess().getRealConstantParserRuleCall_0());
3947
3948 }
3949
3950
3951 }
3952 break;
3953 case 2 :
3954 // InternalProblem.g:1245:2: ( ruleIntConstant )
3955 {
3956 // InternalProblem.g:1245:2: ( ruleIntConstant )
3957 // InternalProblem.g:1246:3: ruleIntConstant
3958 {
3959 before(grammarAccess.getConstantAccess().getIntConstantParserRuleCall_1());
3960 pushFollow(FOLLOW_2);
3961 ruleIntConstant();
3962
3963 state._fsp--;
3964
3965 after(grammarAccess.getConstantAccess().getIntConstantParserRuleCall_1());
3966
3967 }
3968
3969
3970 }
3971 break;
3972 case 3 :
3973 // InternalProblem.g:1251:2: ( ruleStringConstant )
3974 {
3975 // InternalProblem.g:1251:2: ( ruleStringConstant )
3976 // InternalProblem.g:1252:3: ruleStringConstant
3977 {
3978 before(grammarAccess.getConstantAccess().getStringConstantParserRuleCall_2());
3979 pushFollow(FOLLOW_2);
3980 ruleStringConstant();
3981
3982 state._fsp--;
3983
3984 after(grammarAccess.getConstantAccess().getStringConstantParserRuleCall_2());
3985
3986 }
3987
3988
3989 }
3990 break;
3991
3992 }
3993 }
3994 catch (RecognitionException re) {
3995 reportError(re);
3996 recover(input,re);
3997 }
3998 finally {
3999
4000 restoreStackSize(stackSize);
4001
4002 }
4003 return ;
4004 }
4005 // $ANTLR end "rule__Constant__Alternatives"
4006
4007
4008 // $ANTLR start "rule__TypeScope__Alternatives_1"
4009 // InternalProblem.g:1261:1: rule__TypeScope__Alternatives_1 : ( ( ( rule__TypeScope__IncrementAssignment_1_0 ) ) | ( '=' ) );
4010 public final void rule__TypeScope__Alternatives_1() throws RecognitionException {
4011
4012 int stackSize = keepStackSize();
4013
4014 try {
4015 // InternalProblem.g:1265:1: ( ( ( rule__TypeScope__IncrementAssignment_1_0 ) ) | ( '=' ) )
4016 int alt12=2;
4017 int LA12_0 = input.LA(1);
4018
4019 if ( (LA12_0==46) ) {
4020 alt12=1;
4021 }
4022 else if ( (LA12_0==18) ) {
4023 alt12=2;
4024 }
4025 else {
4026 NoViableAltException nvae =
4027 new NoViableAltException("", 12, 0, input);
4028
4029 throw nvae;
4030 }
4031 switch (alt12) {
4032 case 1 :
4033 // InternalProblem.g:1266:2: ( ( rule__TypeScope__IncrementAssignment_1_0 ) )
4034 {
4035 // InternalProblem.g:1266:2: ( ( rule__TypeScope__IncrementAssignment_1_0 ) )
4036 // InternalProblem.g:1267:3: ( rule__TypeScope__IncrementAssignment_1_0 )
4037 {
4038 before(grammarAccess.getTypeScopeAccess().getIncrementAssignment_1_0());
4039 // InternalProblem.g:1268:3: ( rule__TypeScope__IncrementAssignment_1_0 )
4040 // InternalProblem.g:1268:4: rule__TypeScope__IncrementAssignment_1_0
4041 {
4042 pushFollow(FOLLOW_2);
4043 rule__TypeScope__IncrementAssignment_1_0();
4044
4045 state._fsp--;
4046
4047
4048 }
4049
4050 after(grammarAccess.getTypeScopeAccess().getIncrementAssignment_1_0());
4051
4052 }
4053
4054
4055 }
4056 break;
4057 case 2 :
4058 // InternalProblem.g:1272:2: ( '=' )
4059 {
4060 // InternalProblem.g:1272:2: ( '=' )
4061 // InternalProblem.g:1273:3: '='
4062 {
4063 before(grammarAccess.getTypeScopeAccess().getEqualsSignKeyword_1_1());
4064 match(input,18,FOLLOW_2);
4065 after(grammarAccess.getTypeScopeAccess().getEqualsSignKeyword_1_1());
4066
4067 }
4068
4069
4070 }
4071 break;
4072
4073 }
4074 }
4075 catch (RecognitionException re) {
4076 reportError(re);
4077 recover(input,re);
4078 }
4079 finally {
4080
4081 restoreStackSize(stackSize);
4082
4083 }
4084 return ;
4085 }
4086 // $ANTLR end "rule__TypeScope__Alternatives_1"
4087
4088
4089 // $ANTLR start "rule__Multiplicity__Alternatives"
4090 // InternalProblem.g:1282:1: rule__Multiplicity__Alternatives : ( ( ruleUnboundedMultiplicity ) | ( ruleDefiniteMultiplicity ) );
4091 public final void rule__Multiplicity__Alternatives() throws RecognitionException {
4092
4093 int stackSize = keepStackSize();
4094
4095 try {
4096 // InternalProblem.g:1286:1: ( ( ruleUnboundedMultiplicity ) | ( ruleDefiniteMultiplicity ) )
4097 int alt13=2;
4098 int LA13_0 = input.LA(1);
4099
4100 if ( (LA13_0==EOF||LA13_0==32) ) {
4101 alt13=1;
4102 }
4103 else if ( (LA13_0==RULE_INT) ) {
4104 alt13=2;
4105 }
4106 else {
4107 NoViableAltException nvae =
4108 new NoViableAltException("", 13, 0, input);
4109
4110 throw nvae;
4111 }
4112 switch (alt13) {
4113 case 1 :
4114 // InternalProblem.g:1287:2: ( ruleUnboundedMultiplicity )
4115 {
4116 // InternalProblem.g:1287:2: ( ruleUnboundedMultiplicity )
4117 // InternalProblem.g:1288:3: ruleUnboundedMultiplicity
4118 {
4119 before(grammarAccess.getMultiplicityAccess().getUnboundedMultiplicityParserRuleCall_0());
4120 pushFollow(FOLLOW_2);
4121 ruleUnboundedMultiplicity();
4122
4123 state._fsp--;
4124
4125 after(grammarAccess.getMultiplicityAccess().getUnboundedMultiplicityParserRuleCall_0());
4126
4127 }
4128
4129
4130 }
4131 break;
4132 case 2 :
4133 // InternalProblem.g:1293:2: ( ruleDefiniteMultiplicity )
4134 {
4135 // InternalProblem.g:1293:2: ( ruleDefiniteMultiplicity )
4136 // InternalProblem.g:1294:3: ruleDefiniteMultiplicity
4137 {
4138 before(grammarAccess.getMultiplicityAccess().getDefiniteMultiplicityParserRuleCall_1());
4139 pushFollow(FOLLOW_2);
4140 ruleDefiniteMultiplicity();
4141
4142 state._fsp--;
4143
4144 after(grammarAccess.getMultiplicityAccess().getDefiniteMultiplicityParserRuleCall_1());
4145
4146 }
4147
4148
4149 }
4150 break;
4151
4152 }
4153 }
4154 catch (RecognitionException re) {
4155 reportError(re);
4156 recover(input,re);
4157 }
4158 finally {
4159
4160 restoreStackSize(stackSize);
4161
4162 }
4163 return ;
4164 }
4165 // $ANTLR end "rule__Multiplicity__Alternatives"
4166
4167
4168 // $ANTLR start "rule__DefiniteMultiplicity__Alternatives"
4169 // InternalProblem.g:1303:1: rule__DefiniteMultiplicity__Alternatives : ( ( ruleRangeMultiplicity ) | ( ruleExactMultiplicity ) );
4170 public final void rule__DefiniteMultiplicity__Alternatives() throws RecognitionException {
4171
4172 int stackSize = keepStackSize();
4173
4174 try {
4175 // InternalProblem.g:1307:1: ( ( ruleRangeMultiplicity ) | ( ruleExactMultiplicity ) )
4176 int alt14=2;
4177 int LA14_0 = input.LA(1);
4178
4179 if ( (LA14_0==RULE_INT) ) {
4180 int LA14_1 = input.LA(2);
4181
4182 if ( (LA14_1==EOF||(LA14_1>=13 && LA14_1<=14)||LA14_1==32) ) {
4183 alt14=2;
4184 }
4185 else if ( (LA14_1==39) ) {
4186 alt14=1;
4187 }
4188 else {
4189 NoViableAltException nvae =
4190 new NoViableAltException("", 14, 1, input);
4191
4192 throw nvae;
4193 }
4194 }
4195 else {
4196 NoViableAltException nvae =
4197 new NoViableAltException("", 14, 0, input);
4198
4199 throw nvae;
4200 }
4201 switch (alt14) {
4202 case 1 :
4203 // InternalProblem.g:1308:2: ( ruleRangeMultiplicity )
4204 {
4205 // InternalProblem.g:1308:2: ( ruleRangeMultiplicity )
4206 // InternalProblem.g:1309:3: ruleRangeMultiplicity
4207 {
4208 before(grammarAccess.getDefiniteMultiplicityAccess().getRangeMultiplicityParserRuleCall_0());
4209 pushFollow(FOLLOW_2);
4210 ruleRangeMultiplicity();
4211
4212 state._fsp--;
4213
4214 after(grammarAccess.getDefiniteMultiplicityAccess().getRangeMultiplicityParserRuleCall_0());
4215
4216 }
4217
4218
4219 }
4220 break;
4221 case 2 :
4222 // InternalProblem.g:1314:2: ( ruleExactMultiplicity )
4223 {
4224 // InternalProblem.g:1314:2: ( ruleExactMultiplicity )
4225 // InternalProblem.g:1315:3: ruleExactMultiplicity
4226 {
4227 before(grammarAccess.getDefiniteMultiplicityAccess().getExactMultiplicityParserRuleCall_1());
4228 pushFollow(FOLLOW_2);
4229 ruleExactMultiplicity();
4230
4231 state._fsp--;
4232
4233 after(grammarAccess.getDefiniteMultiplicityAccess().getExactMultiplicityParserRuleCall_1());
4234
4235 }
4236
4237
4238 }
4239 break;
4240
4241 }
4242 }
4243 catch (RecognitionException re) {
4244 reportError(re);
4245 recover(input,re);
4246 }
4247 finally {
4248
4249 restoreStackSize(stackSize);
4250
4251 }
4252 return ;
4253 }
4254 // $ANTLR end "rule__DefiniteMultiplicity__Alternatives"
4255
4256
4257 // $ANTLR start "rule__UpperBound__Alternatives"
4258 // InternalProblem.g:1324:1: rule__UpperBound__Alternatives : ( ( RULE_INT ) | ( '*' ) );
4259 public final void rule__UpperBound__Alternatives() throws RecognitionException {
4260
4261 int stackSize = keepStackSize();
4262
4263 try {
4264 // InternalProblem.g:1328:1: ( ( RULE_INT ) | ( '*' ) )
4265 int alt15=2;
4266 int LA15_0 = input.LA(1);
4267
4268 if ( (LA15_0==RULE_INT) ) {
4269 alt15=1;
4270 }
4271 else if ( (LA15_0==19) ) {
4272 alt15=2;
4273 }
4274 else {
4275 NoViableAltException nvae =
4276 new NoViableAltException("", 15, 0, input);
4277
4278 throw nvae;
4279 }
4280 switch (alt15) {
4281 case 1 :
4282 // InternalProblem.g:1329:2: ( RULE_INT )
4283 {
4284 // InternalProblem.g:1329:2: ( RULE_INT )
4285 // InternalProblem.g:1330:3: RULE_INT
4286 {
4287 before(grammarAccess.getUpperBoundAccess().getINTTerminalRuleCall_0());
4288 match(input,RULE_INT,FOLLOW_2);
4289 after(grammarAccess.getUpperBoundAccess().getINTTerminalRuleCall_0());
4290
4291 }
4292
4293
4294 }
4295 break;
4296 case 2 :
4297 // InternalProblem.g:1335:2: ( '*' )
4298 {
4299 // InternalProblem.g:1335:2: ( '*' )
4300 // InternalProblem.g:1336:3: '*'
4301 {
4302 before(grammarAccess.getUpperBoundAccess().getAsteriskKeyword_1());
4303 match(input,19,FOLLOW_2);
4304 after(grammarAccess.getUpperBoundAccess().getAsteriskKeyword_1());
4305
4306 }
4307
4308
4309 }
4310 break;
4311
4312 }
4313 }
4314 catch (RecognitionException re) {
4315 reportError(re);
4316 recover(input,re);
4317 }
4318 finally {
4319
4320 restoreStackSize(stackSize);
4321
4322 }
4323 return ;
4324 }
4325 // $ANTLR end "rule__UpperBound__Alternatives"
4326
4327
4328 // $ANTLR start "rule__QualifiedName__Alternatives"
4329 // InternalProblem.g:1345:1: rule__QualifiedName__Alternatives : ( ( RULE_QUOTED_ID ) | ( ( rule__QualifiedName__Group_1__0 ) ) );
4330 public final void rule__QualifiedName__Alternatives() throws RecognitionException {
4331
4332 int stackSize = keepStackSize();
4333
4334 try {
4335 // InternalProblem.g:1349:1: ( ( RULE_QUOTED_ID ) | ( ( rule__QualifiedName__Group_1__0 ) ) )
4336 int alt16=2;
4337 int LA16_0 = input.LA(1);
4338
4339 if ( (LA16_0==RULE_QUOTED_ID) ) {
4340 alt16=1;
4341 }
4342 else if ( (LA16_0==RULE_ID||(LA16_0>=20 && LA16_0<=21)) ) {
4343 alt16=2;
4344 }
4345 else {
4346 NoViableAltException nvae =
4347 new NoViableAltException("", 16, 0, input);
4348
4349 throw nvae;
4350 }
4351 switch (alt16) {
4352 case 1 :
4353 // InternalProblem.g:1350:2: ( RULE_QUOTED_ID )
4354 {
4355 // InternalProblem.g:1350:2: ( RULE_QUOTED_ID )
4356 // InternalProblem.g:1351:3: RULE_QUOTED_ID
4357 {
4358 before(grammarAccess.getQualifiedNameAccess().getQUOTED_IDTerminalRuleCall_0());
4359 match(input,RULE_QUOTED_ID,FOLLOW_2);
4360 after(grammarAccess.getQualifiedNameAccess().getQUOTED_IDTerminalRuleCall_0());
4361
4362 }
4363
4364
4365 }
4366 break;
4367 case 2 :
4368 // InternalProblem.g:1356:2: ( ( rule__QualifiedName__Group_1__0 ) )
4369 {
4370 // InternalProblem.g:1356:2: ( ( rule__QualifiedName__Group_1__0 ) )
4371 // InternalProblem.g:1357:3: ( rule__QualifiedName__Group_1__0 )
4372 {
4373 before(grammarAccess.getQualifiedNameAccess().getGroup_1());
4374 // InternalProblem.g:1358:3: ( rule__QualifiedName__Group_1__0 )
4375 // InternalProblem.g:1358:4: rule__QualifiedName__Group_1__0
4376 {
4377 pushFollow(FOLLOW_2);
4378 rule__QualifiedName__Group_1__0();
4379
4380 state._fsp--;
4381
4382
4383 }
4384
4385 after(grammarAccess.getQualifiedNameAccess().getGroup_1());
4386
4387 }
4388
4389
4390 }
4391 break;
4392
4393 }
4394 }
4395 catch (RecognitionException re) {
4396 reportError(re);
4397 recover(input,re);
4398 }
4399 finally {
4400
4401 restoreStackSize(stackSize);
4402
4403 }
4404 return ;
4405 }
4406 // $ANTLR end "rule__QualifiedName__Alternatives"
4407
4408
4409 // $ANTLR start "rule__Identifier__Alternatives"
4410 // InternalProblem.g:1366:1: rule__Identifier__Alternatives : ( ( RULE_ID ) | ( 'true' ) | ( 'false' ) );
4411 public final void rule__Identifier__Alternatives() throws RecognitionException {
4412
4413 int stackSize = keepStackSize();
4414
4415 try {
4416 // InternalProblem.g:1370:1: ( ( RULE_ID ) | ( 'true' ) | ( 'false' ) )
4417 int alt17=3;
4418 switch ( input.LA(1) ) {
4419 case RULE_ID:
4420 {
4421 alt17=1;
4422 }
4423 break;
4424 case 20:
4425 {
4426 alt17=2;
4427 }
4428 break;
4429 case 21:
4430 {
4431 alt17=3;
4432 }
4433 break;
4434 default:
4435 NoViableAltException nvae =
4436 new NoViableAltException("", 17, 0, input);
4437
4438 throw nvae;
4439 }
4440
4441 switch (alt17) {
4442 case 1 :
4443 // InternalProblem.g:1371:2: ( RULE_ID )
4444 {
4445 // InternalProblem.g:1371:2: ( RULE_ID )
4446 // InternalProblem.g:1372:3: RULE_ID
4447 {
4448 before(grammarAccess.getIdentifierAccess().getIDTerminalRuleCall_0());
4449 match(input,RULE_ID,FOLLOW_2);
4450 after(grammarAccess.getIdentifierAccess().getIDTerminalRuleCall_0());
4451
4452 }
4453
4454
4455 }
4456 break;
4457 case 2 :
4458 // InternalProblem.g:1377:2: ( 'true' )
4459 {
4460 // InternalProblem.g:1377:2: ( 'true' )
4461 // InternalProblem.g:1378:3: 'true'
4462 {
4463 before(grammarAccess.getIdentifierAccess().getTrueKeyword_1());
4464 match(input,20,FOLLOW_2);
4465 after(grammarAccess.getIdentifierAccess().getTrueKeyword_1());
4466
4467 }
4468
4469
4470 }
4471 break;
4472 case 3 :
4473 // InternalProblem.g:1383:2: ( 'false' )
4474 {
4475 // InternalProblem.g:1383:2: ( 'false' )
4476 // InternalProblem.g:1384:3: 'false'
4477 {
4478 before(grammarAccess.getIdentifierAccess().getFalseKeyword_2());
4479 match(input,21,FOLLOW_2);
4480 after(grammarAccess.getIdentifierAccess().getFalseKeyword_2());
4481
4482 }
4483
4484
4485 }
4486 break;
4487
4488 }
4489 }
4490 catch (RecognitionException re) {
4491 reportError(re);
4492 recover(input,re);
4493 }
4494 finally {
4495
4496 restoreStackSize(stackSize);
4497
4498 }
4499 return ;
4500 }
4501 // $ANTLR end "rule__Identifier__Alternatives"
4502
4503
4504 // $ANTLR start "rule__Real__Alternatives_1"
4505 // InternalProblem.g:1393:1: rule__Real__Alternatives_1 : ( ( RULE_EXPONENTIAL ) | ( ( rule__Real__Group_1_1__0 ) ) );
4506 public final void rule__Real__Alternatives_1() throws RecognitionException {
4507
4508 int stackSize = keepStackSize();
4509
4510 try {
4511 // InternalProblem.g:1397:1: ( ( RULE_EXPONENTIAL ) | ( ( rule__Real__Group_1_1__0 ) ) )
4512 int alt18=2;
4513 int LA18_0 = input.LA(1);
4514
4515 if ( (LA18_0==RULE_EXPONENTIAL) ) {
4516 alt18=1;
4517 }
4518 else if ( (LA18_0==RULE_INT) ) {
4519 alt18=2;
4520 }
4521 else {
4522 NoViableAltException nvae =
4523 new NoViableAltException("", 18, 0, input);
4524
4525 throw nvae;
4526 }
4527 switch (alt18) {
4528 case 1 :
4529 // InternalProblem.g:1398:2: ( RULE_EXPONENTIAL )
4530 {
4531 // InternalProblem.g:1398:2: ( RULE_EXPONENTIAL )
4532 // InternalProblem.g:1399:3: RULE_EXPONENTIAL
4533 {
4534 before(grammarAccess.getRealAccess().getEXPONENTIALTerminalRuleCall_1_0());
4535 match(input,RULE_EXPONENTIAL,FOLLOW_2);
4536 after(grammarAccess.getRealAccess().getEXPONENTIALTerminalRuleCall_1_0());
4537
4538 }
4539
4540
4541 }
4542 break;
4543 case 2 :
4544 // InternalProblem.g:1404:2: ( ( rule__Real__Group_1_1__0 ) )
4545 {
4546 // InternalProblem.g:1404:2: ( ( rule__Real__Group_1_1__0 ) )
4547 // InternalProblem.g:1405:3: ( rule__Real__Group_1_1__0 )
4548 {
4549 before(grammarAccess.getRealAccess().getGroup_1_1());
4550 // InternalProblem.g:1406:3: ( rule__Real__Group_1_1__0 )
4551 // InternalProblem.g:1406:4: rule__Real__Group_1_1__0
4552 {
4553 pushFollow(FOLLOW_2);
4554 rule__Real__Group_1_1__0();
4555
4556 state._fsp--;
4557
4558
4559 }
4560
4561 after(grammarAccess.getRealAccess().getGroup_1_1());
4562
4563 }
4564
4565
4566 }
4567 break;
4568
4569 }
4570 }
4571 catch (RecognitionException re) {
4572 reportError(re);
4573 recover(input,re);
4574 }
4575 finally {
4576
4577 restoreStackSize(stackSize);
4578
4579 }
4580 return ;
4581 }
4582 // $ANTLR end "rule__Real__Alternatives_1"
4583
4584
4585 // $ANTLR start "rule__Real__Alternatives_1_1_2"
4586 // InternalProblem.g:1414:1: rule__Real__Alternatives_1_1_2 : ( ( RULE_INT ) | ( RULE_EXPONENTIAL ) );
4587 public final void rule__Real__Alternatives_1_1_2() throws RecognitionException {
4588
4589 int stackSize = keepStackSize();
4590
4591 try {
4592 // InternalProblem.g:1418:1: ( ( RULE_INT ) | ( RULE_EXPONENTIAL ) )
4593 int alt19=2;
4594 int LA19_0 = input.LA(1);
4595
4596 if ( (LA19_0==RULE_INT) ) {
4597 alt19=1;
4598 }
4599 else if ( (LA19_0==RULE_EXPONENTIAL) ) {
4600 alt19=2;
4601 }
4602 else {
4603 NoViableAltException nvae =
4604 new NoViableAltException("", 19, 0, input);
4605
4606 throw nvae;
4607 }
4608 switch (alt19) {
4609 case 1 :
4610 // InternalProblem.g:1419:2: ( RULE_INT )
4611 {
4612 // InternalProblem.g:1419:2: ( RULE_INT )
4613 // InternalProblem.g:1420:3: RULE_INT
4614 {
4615 before(grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1_2_0());
4616 match(input,RULE_INT,FOLLOW_2);
4617 after(grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1_2_0());
4618
4619 }
4620
4621
4622 }
4623 break;
4624 case 2 :
4625 // InternalProblem.g:1425:2: ( RULE_EXPONENTIAL )
4626 {
4627 // InternalProblem.g:1425:2: ( RULE_EXPONENTIAL )
4628 // InternalProblem.g:1426:3: RULE_EXPONENTIAL
4629 {
4630 before(grammarAccess.getRealAccess().getEXPONENTIALTerminalRuleCall_1_1_2_1());
4631 match(input,RULE_EXPONENTIAL,FOLLOW_2);
4632 after(grammarAccess.getRealAccess().getEXPONENTIALTerminalRuleCall_1_1_2_1());
4633
4634 }
4635
4636
4637 }
4638 break;
4639
4640 }
4641 }
4642 catch (RecognitionException re) {
4643 reportError(re);
4644 recover(input,re);
4645 }
4646 finally {
4647
4648 restoreStackSize(stackSize);
4649
4650 }
4651 return ;
4652 }
4653 // $ANTLR end "rule__Real__Alternatives_1_1_2"
4654
4655
4656 // $ANTLR start "rule__LogicValue__Alternatives"
4657 // InternalProblem.g:1435:1: rule__LogicValue__Alternatives : ( ( ( 'true' ) ) | ( ( 'false' ) ) | ( ( 'unknown' ) ) );
4658 public final void rule__LogicValue__Alternatives() throws RecognitionException {
4659
4660 int stackSize = keepStackSize();
4661
4662 try {
4663 // InternalProblem.g:1439:1: ( ( ( 'true' ) ) | ( ( 'false' ) ) | ( ( 'unknown' ) ) )
4664 int alt20=3;
4665 switch ( input.LA(1) ) {
4666 case 20:
4667 {
4668 alt20=1;
4669 }
4670 break;
4671 case 21:
4672 {
4673 alt20=2;
4674 }
4675 break;
4676 case 22:
4677 {
4678 alt20=3;
4679 }
4680 break;
4681 default:
4682 NoViableAltException nvae =
4683 new NoViableAltException("", 20, 0, input);
4684
4685 throw nvae;
4686 }
4687
4688 switch (alt20) {
4689 case 1 :
4690 // InternalProblem.g:1440:2: ( ( 'true' ) )
4691 {
4692 // InternalProblem.g:1440:2: ( ( 'true' ) )
4693 // InternalProblem.g:1441:3: ( 'true' )
4694 {
4695 before(grammarAccess.getLogicValueAccess().getTRUEEnumLiteralDeclaration_0());
4696 // InternalProblem.g:1442:3: ( 'true' )
4697 // InternalProblem.g:1442:4: 'true'
4698 {
4699 match(input,20,FOLLOW_2);
4700
4701 }
4702
4703 after(grammarAccess.getLogicValueAccess().getTRUEEnumLiteralDeclaration_0());
4704
4705 }
4706
4707
4708 }
4709 break;
4710 case 2 :
4711 // InternalProblem.g:1446:2: ( ( 'false' ) )
4712 {
4713 // InternalProblem.g:1446:2: ( ( 'false' ) )
4714 // InternalProblem.g:1447:3: ( 'false' )
4715 {
4716 before(grammarAccess.getLogicValueAccess().getFALSEEnumLiteralDeclaration_1());
4717 // InternalProblem.g:1448:3: ( 'false' )
4718 // InternalProblem.g:1448:4: 'false'
4719 {
4720 match(input,21,FOLLOW_2);
4721
4722 }
4723
4724 after(grammarAccess.getLogicValueAccess().getFALSEEnumLiteralDeclaration_1());
4725
4726 }
4727
4728
4729 }
4730 break;
4731 case 3 :
4732 // InternalProblem.g:1452:2: ( ( 'unknown' ) )
4733 {
4734 // InternalProblem.g:1452:2: ( ( 'unknown' ) )
4735 // InternalProblem.g:1453:3: ( 'unknown' )
4736 {
4737 before(grammarAccess.getLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_2());
4738 // InternalProblem.g:1454:3: ( 'unknown' )
4739 // InternalProblem.g:1454:4: 'unknown'
4740 {
4741 match(input,22,FOLLOW_2);
4742
4743 }
4744
4745 after(grammarAccess.getLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_2());
4746
4747 }
4748
4749
4750 }
4751 break;
4752
4753 }
4754 }
4755 catch (RecognitionException re) {
4756 reportError(re);
4757 recover(input,re);
4758 }
4759 finally {
4760
4761 restoreStackSize(stackSize);
4762
4763 }
4764 return ;
4765 }
4766 // $ANTLR end "rule__LogicValue__Alternatives"
4767
4768
4769 // $ANTLR start "rule__ShortLogicValue__Alternatives"
4770 // InternalProblem.g:1462:1: rule__ShortLogicValue__Alternatives : ( ( ( '!' ) ) | ( ( '?' ) ) );
4771 public final void rule__ShortLogicValue__Alternatives() throws RecognitionException {
4772
4773 int stackSize = keepStackSize();
4774
4775 try {
4776 // InternalProblem.g:1466:1: ( ( ( '!' ) ) | ( ( '?' ) ) )
4777 int alt21=2;
4778 int LA21_0 = input.LA(1);
4779
4780 if ( (LA21_0==23) ) {
4781 alt21=1;
4782 }
4783 else if ( (LA21_0==24) ) {
4784 alt21=2;
4785 }
4786 else {
4787 NoViableAltException nvae =
4788 new NoViableAltException("", 21, 0, input);
4789
4790 throw nvae;
4791 }
4792 switch (alt21) {
4793 case 1 :
4794 // InternalProblem.g:1467:2: ( ( '!' ) )
4795 {
4796 // InternalProblem.g:1467:2: ( ( '!' ) )
4797 // InternalProblem.g:1468:3: ( '!' )
4798 {
4799 before(grammarAccess.getShortLogicValueAccess().getFALSEEnumLiteralDeclaration_0());
4800 // InternalProblem.g:1469:3: ( '!' )
4801 // InternalProblem.g:1469:4: '!'
4802 {
4803 match(input,23,FOLLOW_2);
4804
4805 }
4806
4807 after(grammarAccess.getShortLogicValueAccess().getFALSEEnumLiteralDeclaration_0());
4808
4809 }
4810
4811
4812 }
4813 break;
4814 case 2 :
4815 // InternalProblem.g:1473:2: ( ( '?' ) )
4816 {
4817 // InternalProblem.g:1473:2: ( ( '?' ) )
4818 // InternalProblem.g:1474:3: ( '?' )
4819 {
4820 before(grammarAccess.getShortLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_1());
4821 // InternalProblem.g:1475:3: ( '?' )
4822 // InternalProblem.g:1475:4: '?'
4823 {
4824 match(input,24,FOLLOW_2);
4825
4826 }
4827
4828 after(grammarAccess.getShortLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_1());
4829
4830 }
4831
4832
4833 }
4834 break;
4835
4836 }
4837 }
4838 catch (RecognitionException re) {
4839 reportError(re);
4840 recover(input,re);
4841 }
4842 finally {
4843
4844 restoreStackSize(stackSize);
4845
4846 }
4847 return ;
4848 }
4849 // $ANTLR end "rule__ShortLogicValue__Alternatives"
4850
4851
4852 // $ANTLR start "rule__Problem__Group__0"
4853 // InternalProblem.g:1483:1: rule__Problem__Group__0 : rule__Problem__Group__0__Impl rule__Problem__Group__1 ;
4854 public final void rule__Problem__Group__0() throws RecognitionException {
4855
4856 int stackSize = keepStackSize();
4857
4858 try {
4859 // InternalProblem.g:1487:1: ( rule__Problem__Group__0__Impl rule__Problem__Group__1 )
4860 // InternalProblem.g:1488:2: rule__Problem__Group__0__Impl rule__Problem__Group__1
4861 {
4862 pushFollow(FOLLOW_3);
4863 rule__Problem__Group__0__Impl();
4864
4865 state._fsp--;
4866
4867 pushFollow(FOLLOW_2);
4868 rule__Problem__Group__1();
4869
4870 state._fsp--;
4871
4872
4873 }
4874
4875 }
4876 catch (RecognitionException re) {
4877 reportError(re);
4878 recover(input,re);
4879 }
4880 finally {
4881
4882 restoreStackSize(stackSize);
4883
4884 }
4885 return ;
4886 }
4887 // $ANTLR end "rule__Problem__Group__0"
4888
4889
4890 // $ANTLR start "rule__Problem__Group__0__Impl"
4891 // InternalProblem.g:1495:1: rule__Problem__Group__0__Impl : ( ( rule__Problem__Group_0__0 )? ) ;
4892 public final void rule__Problem__Group__0__Impl() throws RecognitionException {
4893
4894 int stackSize = keepStackSize();
4895
4896 try {
4897 // InternalProblem.g:1499:1: ( ( ( rule__Problem__Group_0__0 )? ) )
4898 // InternalProblem.g:1500:1: ( ( rule__Problem__Group_0__0 )? )
4899 {
4900 // InternalProblem.g:1500:1: ( ( rule__Problem__Group_0__0 )? )
4901 // InternalProblem.g:1501:2: ( rule__Problem__Group_0__0 )?
4902 {
4903 before(grammarAccess.getProblemAccess().getGroup_0());
4904 // InternalProblem.g:1502:2: ( rule__Problem__Group_0__0 )?
4905 int alt22=2;
4906 int LA22_0 = input.LA(1);
4907
4908 if ( (LA22_0==25) ) {
4909 alt22=1;
4910 }
4911 switch (alt22) {
4912 case 1 :
4913 // InternalProblem.g:1502:3: rule__Problem__Group_0__0
4914 {
4915 pushFollow(FOLLOW_2);
4916 rule__Problem__Group_0__0();
4917
4918 state._fsp--;
4919
4920
4921 }
4922 break;
4923
4924 }
4925
4926 after(grammarAccess.getProblemAccess().getGroup_0());
4927
4928 }
4929
4930
4931 }
4932
4933 }
4934 catch (RecognitionException re) {
4935 reportError(re);
4936 recover(input,re);
4937 }
4938 finally {
4939
4940 restoreStackSize(stackSize);
4941
4942 }
4943 return ;
4944 }
4945 // $ANTLR end "rule__Problem__Group__0__Impl"
4946
4947
4948 // $ANTLR start "rule__Problem__Group__1"
4949 // InternalProblem.g:1510:1: rule__Problem__Group__1 : rule__Problem__Group__1__Impl ;
4950 public final void rule__Problem__Group__1() throws RecognitionException {
4951
4952 int stackSize = keepStackSize();
4953
4954 try {
4955 // InternalProblem.g:1514:1: ( rule__Problem__Group__1__Impl )
4956 // InternalProblem.g:1515:2: rule__Problem__Group__1__Impl
4957 {
4958 pushFollow(FOLLOW_2);
4959 rule__Problem__Group__1__Impl();
4960
4961 state._fsp--;
4962
4963
4964 }
4965
4966 }
4967 catch (RecognitionException re) {
4968 reportError(re);
4969 recover(input,re);
4970 }
4971 finally {
4972
4973 restoreStackSize(stackSize);
4974
4975 }
4976 return ;
4977 }
4978 // $ANTLR end "rule__Problem__Group__1"
4979
4980
4981 // $ANTLR start "rule__Problem__Group__1__Impl"
4982 // InternalProblem.g:1521:1: rule__Problem__Group__1__Impl : ( ( rule__Problem__StatementsAssignment_1 )* ) ;
4983 public final void rule__Problem__Group__1__Impl() throws RecognitionException {
4984
4985 int stackSize = keepStackSize();
4986
4987 try {
4988 // InternalProblem.g:1525:1: ( ( ( rule__Problem__StatementsAssignment_1 )* ) )
4989 // InternalProblem.g:1526:1: ( ( rule__Problem__StatementsAssignment_1 )* )
4990 {
4991 // InternalProblem.g:1526:1: ( ( rule__Problem__StatementsAssignment_1 )* )
4992 // InternalProblem.g:1527:2: ( rule__Problem__StatementsAssignment_1 )*
4993 {
4994 before(grammarAccess.getProblemAccess().getStatementsAssignment_1());
4995 // InternalProblem.g:1528:2: ( rule__Problem__StatementsAssignment_1 )*
4996 loop23:
4997 do {
4998 int alt23=2;
4999 int LA23_0 = input.LA(1);
5000
5001 if ( ((LA23_0>=RULE_QUOTED_ID && LA23_0<=RULE_ID)||LA23_0==17||(LA23_0>=20 && LA23_0<=21)||(LA23_0>=23 && LA23_0<=24)||LA23_0==26||LA23_0==30||LA23_0==38||LA23_0==42||LA23_0==44) ) {
5002 alt23=1;
5003 }
5004
5005
5006 switch (alt23) {
5007 case 1 :
5008 // InternalProblem.g:1528:3: rule__Problem__StatementsAssignment_1
5009 {
5010 pushFollow(FOLLOW_4);
5011 rule__Problem__StatementsAssignment_1();
5012
5013 state._fsp--;
5014
5015
5016 }
5017 break;
5018
5019 default :
5020 break loop23;
5021 }
5022 } while (true);
5023
5024 after(grammarAccess.getProblemAccess().getStatementsAssignment_1());
5025
5026 }
5027
5028
5029 }
5030
5031 }
5032 catch (RecognitionException re) {
5033 reportError(re);
5034 recover(input,re);
5035 }
5036 finally {
5037
5038 restoreStackSize(stackSize);
5039
5040 }
5041 return ;
5042 }
5043 // $ANTLR end "rule__Problem__Group__1__Impl"
5044
5045
5046 // $ANTLR start "rule__Problem__Group_0__0"
5047 // InternalProblem.g:1537:1: rule__Problem__Group_0__0 : rule__Problem__Group_0__0__Impl rule__Problem__Group_0__1 ;
5048 public final void rule__Problem__Group_0__0() throws RecognitionException {
5049
5050 int stackSize = keepStackSize();
5051
5052 try {
5053 // InternalProblem.g:1541:1: ( rule__Problem__Group_0__0__Impl rule__Problem__Group_0__1 )
5054 // InternalProblem.g:1542:2: rule__Problem__Group_0__0__Impl rule__Problem__Group_0__1
5055 {
5056 pushFollow(FOLLOW_5);
5057 rule__Problem__Group_0__0__Impl();
5058
5059 state._fsp--;
5060
5061 pushFollow(FOLLOW_2);
5062 rule__Problem__Group_0__1();
5063
5064 state._fsp--;
5065
5066
5067 }
5068
5069 }
5070 catch (RecognitionException re) {
5071 reportError(re);
5072 recover(input,re);
5073 }
5074 finally {
5075
5076 restoreStackSize(stackSize);
5077
5078 }
5079 return ;
5080 }
5081 // $ANTLR end "rule__Problem__Group_0__0"
5082
5083
5084 // $ANTLR start "rule__Problem__Group_0__0__Impl"
5085 // InternalProblem.g:1549:1: rule__Problem__Group_0__0__Impl : ( 'problem' ) ;
5086 public final void rule__Problem__Group_0__0__Impl() throws RecognitionException {
5087
5088 int stackSize = keepStackSize();
5089
5090 try {
5091 // InternalProblem.g:1553:1: ( ( 'problem' ) )
5092 // InternalProblem.g:1554:1: ( 'problem' )
5093 {
5094 // InternalProblem.g:1554:1: ( 'problem' )
5095 // InternalProblem.g:1555:2: 'problem'
5096 {
5097 before(grammarAccess.getProblemAccess().getProblemKeyword_0_0());
5098 match(input,25,FOLLOW_2);
5099 after(grammarAccess.getProblemAccess().getProblemKeyword_0_0());
5100
5101 }
5102
5103
5104 }
5105
5106 }
5107 catch (RecognitionException re) {
5108 reportError(re);
5109 recover(input,re);
5110 }
5111 finally {
5112
5113 restoreStackSize(stackSize);
5114
5115 }
5116 return ;
5117 }
5118 // $ANTLR end "rule__Problem__Group_0__0__Impl"
5119
5120
5121 // $ANTLR start "rule__Problem__Group_0__1"
5122 // InternalProblem.g:1564:1: rule__Problem__Group_0__1 : rule__Problem__Group_0__1__Impl rule__Problem__Group_0__2 ;
5123 public final void rule__Problem__Group_0__1() throws RecognitionException {
5124
5125 int stackSize = keepStackSize();
5126
5127 try {
5128 // InternalProblem.g:1568:1: ( rule__Problem__Group_0__1__Impl rule__Problem__Group_0__2 )
5129 // InternalProblem.g:1569:2: rule__Problem__Group_0__1__Impl rule__Problem__Group_0__2
5130 {
5131 pushFollow(FOLLOW_6);
5132 rule__Problem__Group_0__1__Impl();
5133
5134 state._fsp--;
5135
5136 pushFollow(FOLLOW_2);
5137 rule__Problem__Group_0__2();
5138
5139 state._fsp--;
5140
5141
5142 }
5143
5144 }
5145 catch (RecognitionException re) {
5146 reportError(re);
5147 recover(input,re);
5148 }
5149 finally {
5150
5151 restoreStackSize(stackSize);
5152
5153 }
5154 return ;
5155 }
5156 // $ANTLR end "rule__Problem__Group_0__1"
5157
5158
5159 // $ANTLR start "rule__Problem__Group_0__1__Impl"
5160 // InternalProblem.g:1576:1: rule__Problem__Group_0__1__Impl : ( ( rule__Problem__NameAssignment_0_1 ) ) ;
5161 public final void rule__Problem__Group_0__1__Impl() throws RecognitionException {
5162
5163 int stackSize = keepStackSize();
5164
5165 try {
5166 // InternalProblem.g:1580:1: ( ( ( rule__Problem__NameAssignment_0_1 ) ) )
5167 // InternalProblem.g:1581:1: ( ( rule__Problem__NameAssignment_0_1 ) )
5168 {
5169 // InternalProblem.g:1581:1: ( ( rule__Problem__NameAssignment_0_1 ) )
5170 // InternalProblem.g:1582:2: ( rule__Problem__NameAssignment_0_1 )
5171 {
5172 before(grammarAccess.getProblemAccess().getNameAssignment_0_1());
5173 // InternalProblem.g:1583:2: ( rule__Problem__NameAssignment_0_1 )
5174 // InternalProblem.g:1583:3: rule__Problem__NameAssignment_0_1
5175 {
5176 pushFollow(FOLLOW_2);
5177 rule__Problem__NameAssignment_0_1();
5178
5179 state._fsp--;
5180
5181
5182 }
5183
5184 after(grammarAccess.getProblemAccess().getNameAssignment_0_1());
5185
5186 }
5187
5188
5189 }
5190
5191 }
5192 catch (RecognitionException re) {
5193 reportError(re);
5194 recover(input,re);
5195 }
5196 finally {
5197
5198 restoreStackSize(stackSize);
5199
5200 }
5201 return ;
5202 }
5203 // $ANTLR end "rule__Problem__Group_0__1__Impl"
5204
5205
5206 // $ANTLR start "rule__Problem__Group_0__2"
5207 // InternalProblem.g:1591:1: rule__Problem__Group_0__2 : rule__Problem__Group_0__2__Impl ;
5208 public final void rule__Problem__Group_0__2() throws RecognitionException {
5209
5210 int stackSize = keepStackSize();
5211
5212 try {
5213 // InternalProblem.g:1595:1: ( rule__Problem__Group_0__2__Impl )
5214 // InternalProblem.g:1596:2: rule__Problem__Group_0__2__Impl
5215 {
5216 pushFollow(FOLLOW_2);
5217 rule__Problem__Group_0__2__Impl();
5218
5219 state._fsp--;
5220
5221
5222 }
5223
5224 }
5225 catch (RecognitionException re) {
5226 reportError(re);
5227 recover(input,re);
5228 }
5229 finally {
5230
5231 restoreStackSize(stackSize);
5232
5233 }
5234 return ;
5235 }
5236 // $ANTLR end "rule__Problem__Group_0__2"
5237
5238
5239 // $ANTLR start "rule__Problem__Group_0__2__Impl"
5240 // InternalProblem.g:1602:1: rule__Problem__Group_0__2__Impl : ( '.' ) ;
5241 public final void rule__Problem__Group_0__2__Impl() throws RecognitionException {
5242
5243 int stackSize = keepStackSize();
5244
5245 try {
5246 // InternalProblem.g:1606:1: ( ( '.' ) )
5247 // InternalProblem.g:1607:1: ( '.' )
5248 {
5249 // InternalProblem.g:1607:1: ( '.' )
5250 // InternalProblem.g:1608:2: '.'
5251 {
5252 before(grammarAccess.getProblemAccess().getFullStopKeyword_0_2());
5253 match(input,13,FOLLOW_2);
5254 after(grammarAccess.getProblemAccess().getFullStopKeyword_0_2());
5255
5256 }
5257
5258
5259 }
5260
5261 }
5262 catch (RecognitionException re) {
5263 reportError(re);
5264 recover(input,re);
5265 }
5266 finally {
5267
5268 restoreStackSize(stackSize);
5269
5270 }
5271 return ;
5272 }
5273 // $ANTLR end "rule__Problem__Group_0__2__Impl"
5274
5275
5276 // $ANTLR start "rule__ClassDeclaration__Group__0"
5277 // InternalProblem.g:1618:1: rule__ClassDeclaration__Group__0 : rule__ClassDeclaration__Group__0__Impl rule__ClassDeclaration__Group__1 ;
5278 public final void rule__ClassDeclaration__Group__0() throws RecognitionException {
5279
5280 int stackSize = keepStackSize();
5281
5282 try {
5283 // InternalProblem.g:1622:1: ( rule__ClassDeclaration__Group__0__Impl rule__ClassDeclaration__Group__1 )
5284 // InternalProblem.g:1623:2: rule__ClassDeclaration__Group__0__Impl rule__ClassDeclaration__Group__1
5285 {
5286 pushFollow(FOLLOW_7);
5287 rule__ClassDeclaration__Group__0__Impl();
5288
5289 state._fsp--;
5290
5291 pushFollow(FOLLOW_2);
5292 rule__ClassDeclaration__Group__1();
5293
5294 state._fsp--;
5295
5296
5297 }
5298
5299 }
5300 catch (RecognitionException re) {
5301 reportError(re);
5302 recover(input,re);
5303 }
5304 finally {
5305
5306 restoreStackSize(stackSize);
5307
5308 }
5309 return ;
5310 }
5311 // $ANTLR end "rule__ClassDeclaration__Group__0"
5312
5313
5314 // $ANTLR start "rule__ClassDeclaration__Group__0__Impl"
5315 // InternalProblem.g:1630:1: rule__ClassDeclaration__Group__0__Impl : ( ( rule__ClassDeclaration__AbstractAssignment_0 )? ) ;
5316 public final void rule__ClassDeclaration__Group__0__Impl() throws RecognitionException {
5317
5318 int stackSize = keepStackSize();
5319
5320 try {
5321 // InternalProblem.g:1634:1: ( ( ( rule__ClassDeclaration__AbstractAssignment_0 )? ) )
5322 // InternalProblem.g:1635:1: ( ( rule__ClassDeclaration__AbstractAssignment_0 )? )
5323 {
5324 // InternalProblem.g:1635:1: ( ( rule__ClassDeclaration__AbstractAssignment_0 )? )
5325 // InternalProblem.g:1636:2: ( rule__ClassDeclaration__AbstractAssignment_0 )?
5326 {
5327 before(grammarAccess.getClassDeclarationAccess().getAbstractAssignment_0());
5328 // InternalProblem.g:1637:2: ( rule__ClassDeclaration__AbstractAssignment_0 )?
5329 int alt24=2;
5330 int LA24_0 = input.LA(1);
5331
5332 if ( (LA24_0==42) ) {
5333 alt24=1;
5334 }
5335 switch (alt24) {
5336 case 1 :
5337 // InternalProblem.g:1637:3: rule__ClassDeclaration__AbstractAssignment_0
5338 {
5339 pushFollow(FOLLOW_2);
5340 rule__ClassDeclaration__AbstractAssignment_0();
5341
5342 state._fsp--;
5343
5344
5345 }
5346 break;
5347
5348 }
5349
5350 after(grammarAccess.getClassDeclarationAccess().getAbstractAssignment_0());
5351
5352 }
5353
5354
5355 }
5356
5357 }
5358 catch (RecognitionException re) {
5359 reportError(re);
5360 recover(input,re);
5361 }
5362 finally {
5363
5364 restoreStackSize(stackSize);
5365
5366 }
5367 return ;
5368 }
5369 // $ANTLR end "rule__ClassDeclaration__Group__0__Impl"
5370
5371
5372 // $ANTLR start "rule__ClassDeclaration__Group__1"
5373 // InternalProblem.g:1645:1: rule__ClassDeclaration__Group__1 : rule__ClassDeclaration__Group__1__Impl rule__ClassDeclaration__Group__2 ;
5374 public final void rule__ClassDeclaration__Group__1() throws RecognitionException {
5375
5376 int stackSize = keepStackSize();
5377
5378 try {
5379 // InternalProblem.g:1649:1: ( rule__ClassDeclaration__Group__1__Impl rule__ClassDeclaration__Group__2 )
5380 // InternalProblem.g:1650:2: rule__ClassDeclaration__Group__1__Impl rule__ClassDeclaration__Group__2
5381 {
5382 pushFollow(FOLLOW_5);
5383 rule__ClassDeclaration__Group__1__Impl();
5384
5385 state._fsp--;
5386
5387 pushFollow(FOLLOW_2);
5388 rule__ClassDeclaration__Group__2();
5389
5390 state._fsp--;
5391
5392
5393 }
5394
5395 }
5396 catch (RecognitionException re) {
5397 reportError(re);
5398 recover(input,re);
5399 }
5400 finally {
5401
5402 restoreStackSize(stackSize);
5403
5404 }
5405 return ;
5406 }
5407 // $ANTLR end "rule__ClassDeclaration__Group__1"
5408
5409
5410 // $ANTLR start "rule__ClassDeclaration__Group__1__Impl"
5411 // InternalProblem.g:1657:1: rule__ClassDeclaration__Group__1__Impl : ( 'class' ) ;
5412 public final void rule__ClassDeclaration__Group__1__Impl() throws RecognitionException {
5413
5414 int stackSize = keepStackSize();
5415
5416 try {
5417 // InternalProblem.g:1661:1: ( ( 'class' ) )
5418 // InternalProblem.g:1662:1: ( 'class' )
5419 {
5420 // InternalProblem.g:1662:1: ( 'class' )
5421 // InternalProblem.g:1663:2: 'class'
5422 {
5423 before(grammarAccess.getClassDeclarationAccess().getClassKeyword_1());
5424 match(input,26,FOLLOW_2);
5425 after(grammarAccess.getClassDeclarationAccess().getClassKeyword_1());
5426
5427 }
5428
5429
5430 }
5431
5432 }
5433 catch (RecognitionException re) {
5434 reportError(re);
5435 recover(input,re);
5436 }
5437 finally {
5438
5439 restoreStackSize(stackSize);
5440
5441 }
5442 return ;
5443 }
5444 // $ANTLR end "rule__ClassDeclaration__Group__1__Impl"
5445
5446
5447 // $ANTLR start "rule__ClassDeclaration__Group__2"
5448 // InternalProblem.g:1672:1: rule__ClassDeclaration__Group__2 : rule__ClassDeclaration__Group__2__Impl rule__ClassDeclaration__Group__3 ;
5449 public final void rule__ClassDeclaration__Group__2() throws RecognitionException {
5450
5451 int stackSize = keepStackSize();
5452
5453 try {
5454 // InternalProblem.g:1676:1: ( rule__ClassDeclaration__Group__2__Impl rule__ClassDeclaration__Group__3 )
5455 // InternalProblem.g:1677:2: rule__ClassDeclaration__Group__2__Impl rule__ClassDeclaration__Group__3
5456 {
5457 pushFollow(FOLLOW_8);
5458 rule__ClassDeclaration__Group__2__Impl();
5459
5460 state._fsp--;
5461
5462 pushFollow(FOLLOW_2);
5463 rule__ClassDeclaration__Group__3();
5464
5465 state._fsp--;
5466
5467
5468 }
5469
5470 }
5471 catch (RecognitionException re) {
5472 reportError(re);
5473 recover(input,re);
5474 }
5475 finally {
5476
5477 restoreStackSize(stackSize);
5478
5479 }
5480 return ;
5481 }
5482 // $ANTLR end "rule__ClassDeclaration__Group__2"
5483
5484
5485 // $ANTLR start "rule__ClassDeclaration__Group__2__Impl"
5486 // InternalProblem.g:1684:1: rule__ClassDeclaration__Group__2__Impl : ( ( rule__ClassDeclaration__NameAssignment_2 ) ) ;
5487 public final void rule__ClassDeclaration__Group__2__Impl() throws RecognitionException {
5488
5489 int stackSize = keepStackSize();
5490
5491 try {
5492 // InternalProblem.g:1688:1: ( ( ( rule__ClassDeclaration__NameAssignment_2 ) ) )
5493 // InternalProblem.g:1689:1: ( ( rule__ClassDeclaration__NameAssignment_2 ) )
5494 {
5495 // InternalProblem.g:1689:1: ( ( rule__ClassDeclaration__NameAssignment_2 ) )
5496 // InternalProblem.g:1690:2: ( rule__ClassDeclaration__NameAssignment_2 )
5497 {
5498 before(grammarAccess.getClassDeclarationAccess().getNameAssignment_2());
5499 // InternalProblem.g:1691:2: ( rule__ClassDeclaration__NameAssignment_2 )
5500 // InternalProblem.g:1691:3: rule__ClassDeclaration__NameAssignment_2
5501 {
5502 pushFollow(FOLLOW_2);
5503 rule__ClassDeclaration__NameAssignment_2();
5504
5505 state._fsp--;
5506
5507
5508 }
5509
5510 after(grammarAccess.getClassDeclarationAccess().getNameAssignment_2());
5511
5512 }
5513
5514
5515 }
5516
5517 }
5518 catch (RecognitionException re) {
5519 reportError(re);
5520 recover(input,re);
5521 }
5522 finally {
5523
5524 restoreStackSize(stackSize);
5525
5526 }
5527 return ;
5528 }
5529 // $ANTLR end "rule__ClassDeclaration__Group__2__Impl"
5530
5531
5532 // $ANTLR start "rule__ClassDeclaration__Group__3"
5533 // InternalProblem.g:1699:1: rule__ClassDeclaration__Group__3 : rule__ClassDeclaration__Group__3__Impl rule__ClassDeclaration__Group__4 ;
5534 public final void rule__ClassDeclaration__Group__3() throws RecognitionException {
5535
5536 int stackSize = keepStackSize();
5537
5538 try {
5539 // InternalProblem.g:1703:1: ( rule__ClassDeclaration__Group__3__Impl rule__ClassDeclaration__Group__4 )
5540 // InternalProblem.g:1704:2: rule__ClassDeclaration__Group__3__Impl rule__ClassDeclaration__Group__4
5541 {
5542 pushFollow(FOLLOW_8);
5543 rule__ClassDeclaration__Group__3__Impl();
5544
5545 state._fsp--;
5546
5547 pushFollow(FOLLOW_2);
5548 rule__ClassDeclaration__Group__4();
5549
5550 state._fsp--;
5551
5552
5553 }
5554
5555 }
5556 catch (RecognitionException re) {
5557 reportError(re);
5558 recover(input,re);
5559 }
5560 finally {
5561
5562 restoreStackSize(stackSize);
5563
5564 }
5565 return ;
5566 }
5567 // $ANTLR end "rule__ClassDeclaration__Group__3"
5568
5569
5570 // $ANTLR start "rule__ClassDeclaration__Group__3__Impl"
5571 // InternalProblem.g:1711:1: rule__ClassDeclaration__Group__3__Impl : ( ( rule__ClassDeclaration__Group_3__0 )? ) ;
5572 public final void rule__ClassDeclaration__Group__3__Impl() throws RecognitionException {
5573
5574 int stackSize = keepStackSize();
5575
5576 try {
5577 // InternalProblem.g:1715:1: ( ( ( rule__ClassDeclaration__Group_3__0 )? ) )
5578 // InternalProblem.g:1716:1: ( ( rule__ClassDeclaration__Group_3__0 )? )
5579 {
5580 // InternalProblem.g:1716:1: ( ( rule__ClassDeclaration__Group_3__0 )? )
5581 // InternalProblem.g:1717:2: ( rule__ClassDeclaration__Group_3__0 )?
5582 {
5583 before(grammarAccess.getClassDeclarationAccess().getGroup_3());
5584 // InternalProblem.g:1718:2: ( rule__ClassDeclaration__Group_3__0 )?
5585 int alt25=2;
5586 int LA25_0 = input.LA(1);
5587
5588 if ( (LA25_0==27) ) {
5589 alt25=1;
5590 }
5591 switch (alt25) {
5592 case 1 :
5593 // InternalProblem.g:1718:3: rule__ClassDeclaration__Group_3__0
5594 {
5595 pushFollow(FOLLOW_2);
5596 rule__ClassDeclaration__Group_3__0();
5597
5598 state._fsp--;
5599
5600
5601 }
5602 break;
5603
5604 }
5605
5606 after(grammarAccess.getClassDeclarationAccess().getGroup_3());
5607
5608 }
5609
5610
5611 }
5612
5613 }
5614 catch (RecognitionException re) {
5615 reportError(re);
5616 recover(input,re);
5617 }
5618 finally {
5619
5620 restoreStackSize(stackSize);
5621
5622 }
5623 return ;
5624 }
5625 // $ANTLR end "rule__ClassDeclaration__Group__3__Impl"
5626
5627
5628 // $ANTLR start "rule__ClassDeclaration__Group__4"
5629 // InternalProblem.g:1726:1: rule__ClassDeclaration__Group__4 : rule__ClassDeclaration__Group__4__Impl ;
5630 public final void rule__ClassDeclaration__Group__4() throws RecognitionException {
5631
5632 int stackSize = keepStackSize();
5633
5634 try {
5635 // InternalProblem.g:1730:1: ( rule__ClassDeclaration__Group__4__Impl )
5636 // InternalProblem.g:1731:2: rule__ClassDeclaration__Group__4__Impl
5637 {
5638 pushFollow(FOLLOW_2);
5639 rule__ClassDeclaration__Group__4__Impl();
5640
5641 state._fsp--;
5642
5643
5644 }
5645
5646 }
5647 catch (RecognitionException re) {
5648 reportError(re);
5649 recover(input,re);
5650 }
5651 finally {
5652
5653 restoreStackSize(stackSize);
5654
5655 }
5656 return ;
5657 }
5658 // $ANTLR end "rule__ClassDeclaration__Group__4"
5659
5660
5661 // $ANTLR start "rule__ClassDeclaration__Group__4__Impl"
5662 // InternalProblem.g:1737:1: rule__ClassDeclaration__Group__4__Impl : ( ( rule__ClassDeclaration__Alternatives_4 ) ) ;
5663 public final void rule__ClassDeclaration__Group__4__Impl() throws RecognitionException {
5664
5665 int stackSize = keepStackSize();
5666
5667 try {
5668 // InternalProblem.g:1741:1: ( ( ( rule__ClassDeclaration__Alternatives_4 ) ) )
5669 // InternalProblem.g:1742:1: ( ( rule__ClassDeclaration__Alternatives_4 ) )
5670 {
5671 // InternalProblem.g:1742:1: ( ( rule__ClassDeclaration__Alternatives_4 ) )
5672 // InternalProblem.g:1743:2: ( rule__ClassDeclaration__Alternatives_4 )
5673 {
5674 before(grammarAccess.getClassDeclarationAccess().getAlternatives_4());
5675 // InternalProblem.g:1744:2: ( rule__ClassDeclaration__Alternatives_4 )
5676 // InternalProblem.g:1744:3: rule__ClassDeclaration__Alternatives_4
5677 {
5678 pushFollow(FOLLOW_2);
5679 rule__ClassDeclaration__Alternatives_4();
5680
5681 state._fsp--;
5682
5683
5684 }
5685
5686 after(grammarAccess.getClassDeclarationAccess().getAlternatives_4());
5687
5688 }
5689
5690
5691 }
5692
5693 }
5694 catch (RecognitionException re) {
5695 reportError(re);
5696 recover(input,re);
5697 }
5698 finally {
5699
5700 restoreStackSize(stackSize);
5701
5702 }
5703 return ;
5704 }
5705 // $ANTLR end "rule__ClassDeclaration__Group__4__Impl"
5706
5707
5708 // $ANTLR start "rule__ClassDeclaration__Group_3__0"
5709 // InternalProblem.g:1753:1: rule__ClassDeclaration__Group_3__0 : rule__ClassDeclaration__Group_3__0__Impl rule__ClassDeclaration__Group_3__1 ;
5710 public final void rule__ClassDeclaration__Group_3__0() throws RecognitionException {
5711
5712 int stackSize = keepStackSize();
5713
5714 try {
5715 // InternalProblem.g:1757:1: ( rule__ClassDeclaration__Group_3__0__Impl rule__ClassDeclaration__Group_3__1 )
5716 // InternalProblem.g:1758:2: rule__ClassDeclaration__Group_3__0__Impl rule__ClassDeclaration__Group_3__1
5717 {
5718 pushFollow(FOLLOW_5);
5719 rule__ClassDeclaration__Group_3__0__Impl();
5720
5721 state._fsp--;
5722
5723 pushFollow(FOLLOW_2);
5724 rule__ClassDeclaration__Group_3__1();
5725
5726 state._fsp--;
5727
5728
5729 }
5730
5731 }
5732 catch (RecognitionException re) {
5733 reportError(re);
5734 recover(input,re);
5735 }
5736 finally {
5737
5738 restoreStackSize(stackSize);
5739
5740 }
5741 return ;
5742 }
5743 // $ANTLR end "rule__ClassDeclaration__Group_3__0"
5744
5745
5746 // $ANTLR start "rule__ClassDeclaration__Group_3__0__Impl"
5747 // InternalProblem.g:1765:1: rule__ClassDeclaration__Group_3__0__Impl : ( 'extends' ) ;
5748 public final void rule__ClassDeclaration__Group_3__0__Impl() throws RecognitionException {
5749
5750 int stackSize = keepStackSize();
5751
5752 try {
5753 // InternalProblem.g:1769:1: ( ( 'extends' ) )
5754 // InternalProblem.g:1770:1: ( 'extends' )
5755 {
5756 // InternalProblem.g:1770:1: ( 'extends' )
5757 // InternalProblem.g:1771:2: 'extends'
5758 {
5759 before(grammarAccess.getClassDeclarationAccess().getExtendsKeyword_3_0());
5760 match(input,27,FOLLOW_2);
5761 after(grammarAccess.getClassDeclarationAccess().getExtendsKeyword_3_0());
5762
5763 }
5764
5765
5766 }
5767
5768 }
5769 catch (RecognitionException re) {
5770 reportError(re);
5771 recover(input,re);
5772 }
5773 finally {
5774
5775 restoreStackSize(stackSize);
5776
5777 }
5778 return ;
5779 }
5780 // $ANTLR end "rule__ClassDeclaration__Group_3__0__Impl"
5781
5782
5783 // $ANTLR start "rule__ClassDeclaration__Group_3__1"
5784 // InternalProblem.g:1780:1: rule__ClassDeclaration__Group_3__1 : rule__ClassDeclaration__Group_3__1__Impl rule__ClassDeclaration__Group_3__2 ;
5785 public final void rule__ClassDeclaration__Group_3__1() throws RecognitionException {
5786
5787 int stackSize = keepStackSize();
5788
5789 try {
5790 // InternalProblem.g:1784:1: ( rule__ClassDeclaration__Group_3__1__Impl rule__ClassDeclaration__Group_3__2 )
5791 // InternalProblem.g:1785:2: rule__ClassDeclaration__Group_3__1__Impl rule__ClassDeclaration__Group_3__2
5792 {
5793 pushFollow(FOLLOW_9);
5794 rule__ClassDeclaration__Group_3__1__Impl();
5795
5796 state._fsp--;
5797
5798 pushFollow(FOLLOW_2);
5799 rule__ClassDeclaration__Group_3__2();
5800
5801 state._fsp--;
5802
5803
5804 }
5805
5806 }
5807 catch (RecognitionException re) {
5808 reportError(re);
5809 recover(input,re);
5810 }
5811 finally {
5812
5813 restoreStackSize(stackSize);
5814
5815 }
5816 return ;
5817 }
5818 // $ANTLR end "rule__ClassDeclaration__Group_3__1"
5819
5820
5821 // $ANTLR start "rule__ClassDeclaration__Group_3__1__Impl"
5822 // InternalProblem.g:1792:1: rule__ClassDeclaration__Group_3__1__Impl : ( ( rule__ClassDeclaration__SuperTypesAssignment_3_1 ) ) ;
5823 public final void rule__ClassDeclaration__Group_3__1__Impl() throws RecognitionException {
5824
5825 int stackSize = keepStackSize();
5826
5827 try {
5828 // InternalProblem.g:1796:1: ( ( ( rule__ClassDeclaration__SuperTypesAssignment_3_1 ) ) )
5829 // InternalProblem.g:1797:1: ( ( rule__ClassDeclaration__SuperTypesAssignment_3_1 ) )
5830 {
5831 // InternalProblem.g:1797:1: ( ( rule__ClassDeclaration__SuperTypesAssignment_3_1 ) )
5832 // InternalProblem.g:1798:2: ( rule__ClassDeclaration__SuperTypesAssignment_3_1 )
5833 {
5834 before(grammarAccess.getClassDeclarationAccess().getSuperTypesAssignment_3_1());
5835 // InternalProblem.g:1799:2: ( rule__ClassDeclaration__SuperTypesAssignment_3_1 )
5836 // InternalProblem.g:1799:3: rule__ClassDeclaration__SuperTypesAssignment_3_1
5837 {
5838 pushFollow(FOLLOW_2);
5839 rule__ClassDeclaration__SuperTypesAssignment_3_1();
5840
5841 state._fsp--;
5842
5843
5844 }
5845
5846 after(grammarAccess.getClassDeclarationAccess().getSuperTypesAssignment_3_1());
5847
5848 }
5849
5850
5851 }
5852
5853 }
5854 catch (RecognitionException re) {
5855 reportError(re);
5856 recover(input,re);
5857 }
5858 finally {
5859
5860 restoreStackSize(stackSize);
5861
5862 }
5863 return ;
5864 }
5865 // $ANTLR end "rule__ClassDeclaration__Group_3__1__Impl"
5866
5867
5868 // $ANTLR start "rule__ClassDeclaration__Group_3__2"
5869 // InternalProblem.g:1807:1: rule__ClassDeclaration__Group_3__2 : rule__ClassDeclaration__Group_3__2__Impl ;
5870 public final void rule__ClassDeclaration__Group_3__2() throws RecognitionException {
5871
5872 int stackSize = keepStackSize();
5873
5874 try {
5875 // InternalProblem.g:1811:1: ( rule__ClassDeclaration__Group_3__2__Impl )
5876 // InternalProblem.g:1812:2: rule__ClassDeclaration__Group_3__2__Impl
5877 {
5878 pushFollow(FOLLOW_2);
5879 rule__ClassDeclaration__Group_3__2__Impl();
5880
5881 state._fsp--;
5882
5883
5884 }
5885
5886 }
5887 catch (RecognitionException re) {
5888 reportError(re);
5889 recover(input,re);
5890 }
5891 finally {
5892
5893 restoreStackSize(stackSize);
5894
5895 }
5896 return ;
5897 }
5898 // $ANTLR end "rule__ClassDeclaration__Group_3__2"
5899
5900
5901 // $ANTLR start "rule__ClassDeclaration__Group_3__2__Impl"
5902 // InternalProblem.g:1818:1: rule__ClassDeclaration__Group_3__2__Impl : ( ( rule__ClassDeclaration__Group_3_2__0 )* ) ;
5903 public final void rule__ClassDeclaration__Group_3__2__Impl() throws RecognitionException {
5904
5905 int stackSize = keepStackSize();
5906
5907 try {
5908 // InternalProblem.g:1822:1: ( ( ( rule__ClassDeclaration__Group_3_2__0 )* ) )
5909 // InternalProblem.g:1823:1: ( ( rule__ClassDeclaration__Group_3_2__0 )* )
5910 {
5911 // InternalProblem.g:1823:1: ( ( rule__ClassDeclaration__Group_3_2__0 )* )
5912 // InternalProblem.g:1824:2: ( rule__ClassDeclaration__Group_3_2__0 )*
5913 {
5914 before(grammarAccess.getClassDeclarationAccess().getGroup_3_2());
5915 // InternalProblem.g:1825:2: ( rule__ClassDeclaration__Group_3_2__0 )*
5916 loop26:
5917 do {
5918 int alt26=2;
5919 int LA26_0 = input.LA(1);
5920
5921 if ( (LA26_0==14) ) {
5922 alt26=1;
5923 }
5924
5925
5926 switch (alt26) {
5927 case 1 :
5928 // InternalProblem.g:1825:3: rule__ClassDeclaration__Group_3_2__0
5929 {
5930 pushFollow(FOLLOW_10);
5931 rule__ClassDeclaration__Group_3_2__0();
5932
5933 state._fsp--;
5934
5935
5936 }
5937 break;
5938
5939 default :
5940 break loop26;
5941 }
5942 } while (true);
5943
5944 after(grammarAccess.getClassDeclarationAccess().getGroup_3_2());
5945
5946 }
5947
5948
5949 }
5950
5951 }
5952 catch (RecognitionException re) {
5953 reportError(re);
5954 recover(input,re);
5955 }
5956 finally {
5957
5958 restoreStackSize(stackSize);
5959
5960 }
5961 return ;
5962 }
5963 // $ANTLR end "rule__ClassDeclaration__Group_3__2__Impl"
5964
5965
5966 // $ANTLR start "rule__ClassDeclaration__Group_3_2__0"
5967 // InternalProblem.g:1834:1: rule__ClassDeclaration__Group_3_2__0 : rule__ClassDeclaration__Group_3_2__0__Impl rule__ClassDeclaration__Group_3_2__1 ;
5968 public final void rule__ClassDeclaration__Group_3_2__0() throws RecognitionException {
5969
5970 int stackSize = keepStackSize();
5971
5972 try {
5973 // InternalProblem.g:1838:1: ( rule__ClassDeclaration__Group_3_2__0__Impl rule__ClassDeclaration__Group_3_2__1 )
5974 // InternalProblem.g:1839:2: rule__ClassDeclaration__Group_3_2__0__Impl rule__ClassDeclaration__Group_3_2__1
5975 {
5976 pushFollow(FOLLOW_5);
5977 rule__ClassDeclaration__Group_3_2__0__Impl();
5978
5979 state._fsp--;
5980
5981 pushFollow(FOLLOW_2);
5982 rule__ClassDeclaration__Group_3_2__1();
5983
5984 state._fsp--;
5985
5986
5987 }
5988
5989 }
5990 catch (RecognitionException re) {
5991 reportError(re);
5992 recover(input,re);
5993 }
5994 finally {
5995
5996 restoreStackSize(stackSize);
5997
5998 }
5999 return ;
6000 }
6001 // $ANTLR end "rule__ClassDeclaration__Group_3_2__0"
6002
6003
6004 // $ANTLR start "rule__ClassDeclaration__Group_3_2__0__Impl"
6005 // InternalProblem.g:1846:1: rule__ClassDeclaration__Group_3_2__0__Impl : ( ',' ) ;
6006 public final void rule__ClassDeclaration__Group_3_2__0__Impl() throws RecognitionException {
6007
6008 int stackSize = keepStackSize();
6009
6010 try {
6011 // InternalProblem.g:1850:1: ( ( ',' ) )
6012 // InternalProblem.g:1851:1: ( ',' )
6013 {
6014 // InternalProblem.g:1851:1: ( ',' )
6015 // InternalProblem.g:1852:2: ','
6016 {
6017 before(grammarAccess.getClassDeclarationAccess().getCommaKeyword_3_2_0());
6018 match(input,14,FOLLOW_2);
6019 after(grammarAccess.getClassDeclarationAccess().getCommaKeyword_3_2_0());
6020
6021 }
6022
6023
6024 }
6025
6026 }
6027 catch (RecognitionException re) {
6028 reportError(re);
6029 recover(input,re);
6030 }
6031 finally {
6032
6033 restoreStackSize(stackSize);
6034
6035 }
6036 return ;
6037 }
6038 // $ANTLR end "rule__ClassDeclaration__Group_3_2__0__Impl"
6039
6040
6041 // $ANTLR start "rule__ClassDeclaration__Group_3_2__1"
6042 // InternalProblem.g:1861:1: rule__ClassDeclaration__Group_3_2__1 : rule__ClassDeclaration__Group_3_2__1__Impl ;
6043 public final void rule__ClassDeclaration__Group_3_2__1() throws RecognitionException {
6044
6045 int stackSize = keepStackSize();
6046
6047 try {
6048 // InternalProblem.g:1865:1: ( rule__ClassDeclaration__Group_3_2__1__Impl )
6049 // InternalProblem.g:1866:2: rule__ClassDeclaration__Group_3_2__1__Impl
6050 {
6051 pushFollow(FOLLOW_2);
6052 rule__ClassDeclaration__Group_3_2__1__Impl();
6053
6054 state._fsp--;
6055
6056
6057 }
6058
6059 }
6060 catch (RecognitionException re) {
6061 reportError(re);
6062 recover(input,re);
6063 }
6064 finally {
6065
6066 restoreStackSize(stackSize);
6067
6068 }
6069 return ;
6070 }
6071 // $ANTLR end "rule__ClassDeclaration__Group_3_2__1"
6072
6073
6074 // $ANTLR start "rule__ClassDeclaration__Group_3_2__1__Impl"
6075 // InternalProblem.g:1872:1: rule__ClassDeclaration__Group_3_2__1__Impl : ( ( rule__ClassDeclaration__SuperTypesAssignment_3_2_1 ) ) ;
6076 public final void rule__ClassDeclaration__Group_3_2__1__Impl() throws RecognitionException {
6077
6078 int stackSize = keepStackSize();
6079
6080 try {
6081 // InternalProblem.g:1876:1: ( ( ( rule__ClassDeclaration__SuperTypesAssignment_3_2_1 ) ) )
6082 // InternalProblem.g:1877:1: ( ( rule__ClassDeclaration__SuperTypesAssignment_3_2_1 ) )
6083 {
6084 // InternalProblem.g:1877:1: ( ( rule__ClassDeclaration__SuperTypesAssignment_3_2_1 ) )
6085 // InternalProblem.g:1878:2: ( rule__ClassDeclaration__SuperTypesAssignment_3_2_1 )
6086 {
6087 before(grammarAccess.getClassDeclarationAccess().getSuperTypesAssignment_3_2_1());
6088 // InternalProblem.g:1879:2: ( rule__ClassDeclaration__SuperTypesAssignment_3_2_1 )
6089 // InternalProblem.g:1879:3: rule__ClassDeclaration__SuperTypesAssignment_3_2_1
6090 {
6091 pushFollow(FOLLOW_2);
6092 rule__ClassDeclaration__SuperTypesAssignment_3_2_1();
6093
6094 state._fsp--;
6095
6096
6097 }
6098
6099 after(grammarAccess.getClassDeclarationAccess().getSuperTypesAssignment_3_2_1());
6100
6101 }
6102
6103
6104 }
6105
6106 }
6107 catch (RecognitionException re) {
6108 reportError(re);
6109 recover(input,re);
6110 }
6111 finally {
6112
6113 restoreStackSize(stackSize);
6114
6115 }
6116 return ;
6117 }
6118 // $ANTLR end "rule__ClassDeclaration__Group_3_2__1__Impl"
6119
6120
6121 // $ANTLR start "rule__ClassDeclaration__Group_4_0__0"
6122 // InternalProblem.g:1888:1: rule__ClassDeclaration__Group_4_0__0 : rule__ClassDeclaration__Group_4_0__0__Impl rule__ClassDeclaration__Group_4_0__1 ;
6123 public final void rule__ClassDeclaration__Group_4_0__0() throws RecognitionException {
6124
6125 int stackSize = keepStackSize();
6126
6127 try {
6128 // InternalProblem.g:1892:1: ( rule__ClassDeclaration__Group_4_0__0__Impl rule__ClassDeclaration__Group_4_0__1 )
6129 // InternalProblem.g:1893:2: rule__ClassDeclaration__Group_4_0__0__Impl rule__ClassDeclaration__Group_4_0__1
6130 {
6131 pushFollow(FOLLOW_11);
6132 rule__ClassDeclaration__Group_4_0__0__Impl();
6133
6134 state._fsp--;
6135
6136 pushFollow(FOLLOW_2);
6137 rule__ClassDeclaration__Group_4_0__1();
6138
6139 state._fsp--;
6140
6141
6142 }
6143
6144 }
6145 catch (RecognitionException re) {
6146 reportError(re);
6147 recover(input,re);
6148 }
6149 finally {
6150
6151 restoreStackSize(stackSize);
6152
6153 }
6154 return ;
6155 }
6156 // $ANTLR end "rule__ClassDeclaration__Group_4_0__0"
6157
6158
6159 // $ANTLR start "rule__ClassDeclaration__Group_4_0__0__Impl"
6160 // InternalProblem.g:1900:1: rule__ClassDeclaration__Group_4_0__0__Impl : ( '{' ) ;
6161 public final void rule__ClassDeclaration__Group_4_0__0__Impl() throws RecognitionException {
6162
6163 int stackSize = keepStackSize();
6164
6165 try {
6166 // InternalProblem.g:1904:1: ( ( '{' ) )
6167 // InternalProblem.g:1905:1: ( '{' )
6168 {
6169 // InternalProblem.g:1905:1: ( '{' )
6170 // InternalProblem.g:1906:2: '{'
6171 {
6172 before(grammarAccess.getClassDeclarationAccess().getLeftCurlyBracketKeyword_4_0_0());
6173 match(input,28,FOLLOW_2);
6174 after(grammarAccess.getClassDeclarationAccess().getLeftCurlyBracketKeyword_4_0_0());
6175
6176 }
6177
6178
6179 }
6180
6181 }
6182 catch (RecognitionException re) {
6183 reportError(re);
6184 recover(input,re);
6185 }
6186 finally {
6187
6188 restoreStackSize(stackSize);
6189
6190 }
6191 return ;
6192 }
6193 // $ANTLR end "rule__ClassDeclaration__Group_4_0__0__Impl"
6194
6195
6196 // $ANTLR start "rule__ClassDeclaration__Group_4_0__1"
6197 // InternalProblem.g:1915:1: rule__ClassDeclaration__Group_4_0__1 : rule__ClassDeclaration__Group_4_0__1__Impl rule__ClassDeclaration__Group_4_0__2 ;
6198 public final void rule__ClassDeclaration__Group_4_0__1() throws RecognitionException {
6199
6200 int stackSize = keepStackSize();
6201
6202 try {
6203 // InternalProblem.g:1919:1: ( rule__ClassDeclaration__Group_4_0__1__Impl rule__ClassDeclaration__Group_4_0__2 )
6204 // InternalProblem.g:1920:2: rule__ClassDeclaration__Group_4_0__1__Impl rule__ClassDeclaration__Group_4_0__2
6205 {
6206 pushFollow(FOLLOW_11);
6207 rule__ClassDeclaration__Group_4_0__1__Impl();
6208
6209 state._fsp--;
6210
6211 pushFollow(FOLLOW_2);
6212 rule__ClassDeclaration__Group_4_0__2();
6213
6214 state._fsp--;
6215
6216
6217 }
6218
6219 }
6220 catch (RecognitionException re) {
6221 reportError(re);
6222 recover(input,re);
6223 }
6224 finally {
6225
6226 restoreStackSize(stackSize);
6227
6228 }
6229 return ;
6230 }
6231 // $ANTLR end "rule__ClassDeclaration__Group_4_0__1"
6232
6233
6234 // $ANTLR start "rule__ClassDeclaration__Group_4_0__1__Impl"
6235 // InternalProblem.g:1927:1: rule__ClassDeclaration__Group_4_0__1__Impl : ( ( rule__ClassDeclaration__Group_4_0_1__0 )* ) ;
6236 public final void rule__ClassDeclaration__Group_4_0__1__Impl() throws RecognitionException {
6237
6238 int stackSize = keepStackSize();
6239
6240 try {
6241 // InternalProblem.g:1931:1: ( ( ( rule__ClassDeclaration__Group_4_0_1__0 )* ) )
6242 // InternalProblem.g:1932:1: ( ( rule__ClassDeclaration__Group_4_0_1__0 )* )
6243 {
6244 // InternalProblem.g:1932:1: ( ( rule__ClassDeclaration__Group_4_0_1__0 )* )
6245 // InternalProblem.g:1933:2: ( rule__ClassDeclaration__Group_4_0_1__0 )*
6246 {
6247 before(grammarAccess.getClassDeclarationAccess().getGroup_4_0_1());
6248 // InternalProblem.g:1934:2: ( rule__ClassDeclaration__Group_4_0_1__0 )*
6249 loop27:
6250 do {
6251 int alt27=2;
6252 int LA27_0 = input.LA(1);
6253
6254 if ( ((LA27_0>=RULE_QUOTED_ID && LA27_0<=RULE_ID)||LA27_0==16||(LA27_0>=20 && LA27_0<=21)||LA27_0==43) ) {
6255 alt27=1;
6256 }
6257
6258
6259 switch (alt27) {
6260 case 1 :
6261 // InternalProblem.g:1934:3: rule__ClassDeclaration__Group_4_0_1__0
6262 {
6263 pushFollow(FOLLOW_12);
6264 rule__ClassDeclaration__Group_4_0_1__0();
6265
6266 state._fsp--;
6267
6268
6269 }
6270 break;
6271
6272 default :
6273 break loop27;
6274 }
6275 } while (true);
6276
6277 after(grammarAccess.getClassDeclarationAccess().getGroup_4_0_1());
6278
6279 }
6280
6281
6282 }
6283
6284 }
6285 catch (RecognitionException re) {
6286 reportError(re);
6287 recover(input,re);
6288 }
6289 finally {
6290
6291 restoreStackSize(stackSize);
6292
6293 }
6294 return ;
6295 }
6296 // $ANTLR end "rule__ClassDeclaration__Group_4_0__1__Impl"
6297
6298
6299 // $ANTLR start "rule__ClassDeclaration__Group_4_0__2"
6300 // InternalProblem.g:1942:1: rule__ClassDeclaration__Group_4_0__2 : rule__ClassDeclaration__Group_4_0__2__Impl ;
6301 public final void rule__ClassDeclaration__Group_4_0__2() throws RecognitionException {
6302
6303 int stackSize = keepStackSize();
6304
6305 try {
6306 // InternalProblem.g:1946:1: ( rule__ClassDeclaration__Group_4_0__2__Impl )
6307 // InternalProblem.g:1947:2: rule__ClassDeclaration__Group_4_0__2__Impl
6308 {
6309 pushFollow(FOLLOW_2);
6310 rule__ClassDeclaration__Group_4_0__2__Impl();
6311
6312 state._fsp--;
6313
6314
6315 }
6316
6317 }
6318 catch (RecognitionException re) {
6319 reportError(re);
6320 recover(input,re);
6321 }
6322 finally {
6323
6324 restoreStackSize(stackSize);
6325
6326 }
6327 return ;
6328 }
6329 // $ANTLR end "rule__ClassDeclaration__Group_4_0__2"
6330
6331
6332 // $ANTLR start "rule__ClassDeclaration__Group_4_0__2__Impl"
6333 // InternalProblem.g:1953:1: rule__ClassDeclaration__Group_4_0__2__Impl : ( '}' ) ;
6334 public final void rule__ClassDeclaration__Group_4_0__2__Impl() throws RecognitionException {
6335
6336 int stackSize = keepStackSize();
6337
6338 try {
6339 // InternalProblem.g:1957:1: ( ( '}' ) )
6340 // InternalProblem.g:1958:1: ( '}' )
6341 {
6342 // InternalProblem.g:1958:1: ( '}' )
6343 // InternalProblem.g:1959:2: '}'
6344 {
6345 before(grammarAccess.getClassDeclarationAccess().getRightCurlyBracketKeyword_4_0_2());
6346 match(input,29,FOLLOW_2);
6347 after(grammarAccess.getClassDeclarationAccess().getRightCurlyBracketKeyword_4_0_2());
6348
6349 }
6350
6351
6352 }
6353
6354 }
6355 catch (RecognitionException re) {
6356 reportError(re);
6357 recover(input,re);
6358 }
6359 finally {
6360
6361 restoreStackSize(stackSize);
6362
6363 }
6364 return ;
6365 }
6366 // $ANTLR end "rule__ClassDeclaration__Group_4_0__2__Impl"
6367
6368
6369 // $ANTLR start "rule__ClassDeclaration__Group_4_0_1__0"
6370 // InternalProblem.g:1969:1: rule__ClassDeclaration__Group_4_0_1__0 : rule__ClassDeclaration__Group_4_0_1__0__Impl rule__ClassDeclaration__Group_4_0_1__1 ;
6371 public final void rule__ClassDeclaration__Group_4_0_1__0() throws RecognitionException {
6372
6373 int stackSize = keepStackSize();
6374
6375 try {
6376 // InternalProblem.g:1973:1: ( rule__ClassDeclaration__Group_4_0_1__0__Impl rule__ClassDeclaration__Group_4_0_1__1 )
6377 // InternalProblem.g:1974:2: rule__ClassDeclaration__Group_4_0_1__0__Impl rule__ClassDeclaration__Group_4_0_1__1
6378 {
6379 pushFollow(FOLLOW_13);
6380 rule__ClassDeclaration__Group_4_0_1__0__Impl();
6381
6382 state._fsp--;
6383
6384 pushFollow(FOLLOW_2);
6385 rule__ClassDeclaration__Group_4_0_1__1();
6386
6387 state._fsp--;
6388
6389
6390 }
6391
6392 }
6393 catch (RecognitionException re) {
6394 reportError(re);
6395 recover(input,re);
6396 }
6397 finally {
6398
6399 restoreStackSize(stackSize);
6400
6401 }
6402 return ;
6403 }
6404 // $ANTLR end "rule__ClassDeclaration__Group_4_0_1__0"
6405
6406
6407 // $ANTLR start "rule__ClassDeclaration__Group_4_0_1__0__Impl"
6408 // InternalProblem.g:1981:1: rule__ClassDeclaration__Group_4_0_1__0__Impl : ( ( rule__ClassDeclaration__ReferenceDeclarationsAssignment_4_0_1_0 ) ) ;
6409 public final void rule__ClassDeclaration__Group_4_0_1__0__Impl() throws RecognitionException {
6410
6411 int stackSize = keepStackSize();
6412
6413 try {
6414 // InternalProblem.g:1985:1: ( ( ( rule__ClassDeclaration__ReferenceDeclarationsAssignment_4_0_1_0 ) ) )
6415 // InternalProblem.g:1986:1: ( ( rule__ClassDeclaration__ReferenceDeclarationsAssignment_4_0_1_0 ) )
6416 {
6417 // InternalProblem.g:1986:1: ( ( rule__ClassDeclaration__ReferenceDeclarationsAssignment_4_0_1_0 ) )
6418 // InternalProblem.g:1987:2: ( rule__ClassDeclaration__ReferenceDeclarationsAssignment_4_0_1_0 )
6419 {
6420 before(grammarAccess.getClassDeclarationAccess().getReferenceDeclarationsAssignment_4_0_1_0());
6421 // InternalProblem.g:1988:2: ( rule__ClassDeclaration__ReferenceDeclarationsAssignment_4_0_1_0 )
6422 // InternalProblem.g:1988:3: rule__ClassDeclaration__ReferenceDeclarationsAssignment_4_0_1_0
6423 {
6424 pushFollow(FOLLOW_2);
6425 rule__ClassDeclaration__ReferenceDeclarationsAssignment_4_0_1_0();
6426
6427 state._fsp--;
6428
6429
6430 }
6431
6432 after(grammarAccess.getClassDeclarationAccess().getReferenceDeclarationsAssignment_4_0_1_0());
6433
6434 }
6435
6436
6437 }
6438
6439 }
6440 catch (RecognitionException re) {
6441 reportError(re);
6442 recover(input,re);
6443 }
6444 finally {
6445
6446 restoreStackSize(stackSize);
6447
6448 }
6449 return ;
6450 }
6451 // $ANTLR end "rule__ClassDeclaration__Group_4_0_1__0__Impl"
6452
6453
6454 // $ANTLR start "rule__ClassDeclaration__Group_4_0_1__1"
6455 // InternalProblem.g:1996:1: rule__ClassDeclaration__Group_4_0_1__1 : rule__ClassDeclaration__Group_4_0_1__1__Impl ;
6456 public final void rule__ClassDeclaration__Group_4_0_1__1() throws RecognitionException {
6457
6458 int stackSize = keepStackSize();
6459
6460 try {
6461 // InternalProblem.g:2000:1: ( rule__ClassDeclaration__Group_4_0_1__1__Impl )
6462 // InternalProblem.g:2001:2: rule__ClassDeclaration__Group_4_0_1__1__Impl
6463 {
6464 pushFollow(FOLLOW_2);
6465 rule__ClassDeclaration__Group_4_0_1__1__Impl();
6466
6467 state._fsp--;
6468
6469
6470 }
6471
6472 }
6473 catch (RecognitionException re) {
6474 reportError(re);
6475 recover(input,re);
6476 }
6477 finally {
6478
6479 restoreStackSize(stackSize);
6480
6481 }
6482 return ;
6483 }
6484 // $ANTLR end "rule__ClassDeclaration__Group_4_0_1__1"
6485
6486
6487 // $ANTLR start "rule__ClassDeclaration__Group_4_0_1__1__Impl"
6488 // InternalProblem.g:2007:1: rule__ClassDeclaration__Group_4_0_1__1__Impl : ( ( ';' )? ) ;
6489 public final void rule__ClassDeclaration__Group_4_0_1__1__Impl() throws RecognitionException {
6490
6491 int stackSize = keepStackSize();
6492
6493 try {
6494 // InternalProblem.g:2011:1: ( ( ( ';' )? ) )
6495 // InternalProblem.g:2012:1: ( ( ';' )? )
6496 {
6497 // InternalProblem.g:2012:1: ( ( ';' )? )
6498 // InternalProblem.g:2013:2: ( ';' )?
6499 {
6500 before(grammarAccess.getClassDeclarationAccess().getSemicolonKeyword_4_0_1_1());
6501 // InternalProblem.g:2014:2: ( ';' )?
6502 int alt28=2;
6503 int LA28_0 = input.LA(1);
6504
6505 if ( (LA28_0==15) ) {
6506 alt28=1;
6507 }
6508 switch (alt28) {
6509 case 1 :
6510 // InternalProblem.g:2014:3: ';'
6511 {
6512 match(input,15,FOLLOW_2);
6513
6514 }
6515 break;
6516
6517 }
6518
6519 after(grammarAccess.getClassDeclarationAccess().getSemicolonKeyword_4_0_1_1());
6520
6521 }
6522
6523
6524 }
6525
6526 }
6527 catch (RecognitionException re) {
6528 reportError(re);
6529 recover(input,re);
6530 }
6531 finally {
6532
6533 restoreStackSize(stackSize);
6534
6535 }
6536 return ;
6537 }
6538 // $ANTLR end "rule__ClassDeclaration__Group_4_0_1__1__Impl"
6539
6540
6541 // $ANTLR start "rule__EnumDeclaration__Group__0"
6542 // InternalProblem.g:2023:1: rule__EnumDeclaration__Group__0 : rule__EnumDeclaration__Group__0__Impl rule__EnumDeclaration__Group__1 ;
6543 public final void rule__EnumDeclaration__Group__0() throws RecognitionException {
6544
6545 int stackSize = keepStackSize();
6546
6547 try {
6548 // InternalProblem.g:2027:1: ( rule__EnumDeclaration__Group__0__Impl rule__EnumDeclaration__Group__1 )
6549 // InternalProblem.g:2028:2: rule__EnumDeclaration__Group__0__Impl rule__EnumDeclaration__Group__1
6550 {
6551 pushFollow(FOLLOW_5);
6552 rule__EnumDeclaration__Group__0__Impl();
6553
6554 state._fsp--;
6555
6556 pushFollow(FOLLOW_2);
6557 rule__EnumDeclaration__Group__1();
6558
6559 state._fsp--;
6560
6561
6562 }
6563
6564 }
6565 catch (RecognitionException re) {
6566 reportError(re);
6567 recover(input,re);
6568 }
6569 finally {
6570
6571 restoreStackSize(stackSize);
6572
6573 }
6574 return ;
6575 }
6576 // $ANTLR end "rule__EnumDeclaration__Group__0"
6577
6578
6579 // $ANTLR start "rule__EnumDeclaration__Group__0__Impl"
6580 // InternalProblem.g:2035:1: rule__EnumDeclaration__Group__0__Impl : ( 'enum' ) ;
6581 public final void rule__EnumDeclaration__Group__0__Impl() throws RecognitionException {
6582
6583 int stackSize = keepStackSize();
6584
6585 try {
6586 // InternalProblem.g:2039:1: ( ( 'enum' ) )
6587 // InternalProblem.g:2040:1: ( 'enum' )
6588 {
6589 // InternalProblem.g:2040:1: ( 'enum' )
6590 // InternalProblem.g:2041:2: 'enum'
6591 {
6592 before(grammarAccess.getEnumDeclarationAccess().getEnumKeyword_0());
6593 match(input,30,FOLLOW_2);
6594 after(grammarAccess.getEnumDeclarationAccess().getEnumKeyword_0());
6595
6596 }
6597
6598
6599 }
6600
6601 }
6602 catch (RecognitionException re) {
6603 reportError(re);
6604 recover(input,re);
6605 }
6606 finally {
6607
6608 restoreStackSize(stackSize);
6609
6610 }
6611 return ;
6612 }
6613 // $ANTLR end "rule__EnumDeclaration__Group__0__Impl"
6614
6615
6616 // $ANTLR start "rule__EnumDeclaration__Group__1"
6617 // InternalProblem.g:2050:1: rule__EnumDeclaration__Group__1 : rule__EnumDeclaration__Group__1__Impl rule__EnumDeclaration__Group__2 ;
6618 public final void rule__EnumDeclaration__Group__1() throws RecognitionException {
6619
6620 int stackSize = keepStackSize();
6621
6622 try {
6623 // InternalProblem.g:2054:1: ( rule__EnumDeclaration__Group__1__Impl rule__EnumDeclaration__Group__2 )
6624 // InternalProblem.g:2055:2: rule__EnumDeclaration__Group__1__Impl rule__EnumDeclaration__Group__2
6625 {
6626 pushFollow(FOLLOW_14);
6627 rule__EnumDeclaration__Group__1__Impl();
6628
6629 state._fsp--;
6630
6631 pushFollow(FOLLOW_2);
6632 rule__EnumDeclaration__Group__2();
6633
6634 state._fsp--;
6635
6636
6637 }
6638
6639 }
6640 catch (RecognitionException re) {
6641 reportError(re);
6642 recover(input,re);
6643 }
6644 finally {
6645
6646 restoreStackSize(stackSize);
6647
6648 }
6649 return ;
6650 }
6651 // $ANTLR end "rule__EnumDeclaration__Group__1"
6652
6653
6654 // $ANTLR start "rule__EnumDeclaration__Group__1__Impl"
6655 // InternalProblem.g:2062:1: rule__EnumDeclaration__Group__1__Impl : ( ( rule__EnumDeclaration__NameAssignment_1 ) ) ;
6656 public final void rule__EnumDeclaration__Group__1__Impl() throws RecognitionException {
6657
6658 int stackSize = keepStackSize();
6659
6660 try {
6661 // InternalProblem.g:2066:1: ( ( ( rule__EnumDeclaration__NameAssignment_1 ) ) )
6662 // InternalProblem.g:2067:1: ( ( rule__EnumDeclaration__NameAssignment_1 ) )
6663 {
6664 // InternalProblem.g:2067:1: ( ( rule__EnumDeclaration__NameAssignment_1 ) )
6665 // InternalProblem.g:2068:2: ( rule__EnumDeclaration__NameAssignment_1 )
6666 {
6667 before(grammarAccess.getEnumDeclarationAccess().getNameAssignment_1());
6668 // InternalProblem.g:2069:2: ( rule__EnumDeclaration__NameAssignment_1 )
6669 // InternalProblem.g:2069:3: rule__EnumDeclaration__NameAssignment_1
6670 {
6671 pushFollow(FOLLOW_2);
6672 rule__EnumDeclaration__NameAssignment_1();
6673
6674 state._fsp--;
6675
6676
6677 }
6678
6679 after(grammarAccess.getEnumDeclarationAccess().getNameAssignment_1());
6680
6681 }
6682
6683
6684 }
6685
6686 }
6687 catch (RecognitionException re) {
6688 reportError(re);
6689 recover(input,re);
6690 }
6691 finally {
6692
6693 restoreStackSize(stackSize);
6694
6695 }
6696 return ;
6697 }
6698 // $ANTLR end "rule__EnumDeclaration__Group__1__Impl"
6699
6700
6701 // $ANTLR start "rule__EnumDeclaration__Group__2"
6702 // InternalProblem.g:2077:1: rule__EnumDeclaration__Group__2 : rule__EnumDeclaration__Group__2__Impl ;
6703 public final void rule__EnumDeclaration__Group__2() throws RecognitionException {
6704
6705 int stackSize = keepStackSize();
6706
6707 try {
6708 // InternalProblem.g:2081:1: ( rule__EnumDeclaration__Group__2__Impl )
6709 // InternalProblem.g:2082:2: rule__EnumDeclaration__Group__2__Impl
6710 {
6711 pushFollow(FOLLOW_2);
6712 rule__EnumDeclaration__Group__2__Impl();
6713
6714 state._fsp--;
6715
6716
6717 }
6718
6719 }
6720 catch (RecognitionException re) {
6721 reportError(re);
6722 recover(input,re);
6723 }
6724 finally {
6725
6726 restoreStackSize(stackSize);
6727
6728 }
6729 return ;
6730 }
6731 // $ANTLR end "rule__EnumDeclaration__Group__2"
6732
6733
6734 // $ANTLR start "rule__EnumDeclaration__Group__2__Impl"
6735 // InternalProblem.g:2088:1: rule__EnumDeclaration__Group__2__Impl : ( ( rule__EnumDeclaration__Alternatives_2 ) ) ;
6736 public final void rule__EnumDeclaration__Group__2__Impl() throws RecognitionException {
6737
6738 int stackSize = keepStackSize();
6739
6740 try {
6741 // InternalProblem.g:2092:1: ( ( ( rule__EnumDeclaration__Alternatives_2 ) ) )
6742 // InternalProblem.g:2093:1: ( ( rule__EnumDeclaration__Alternatives_2 ) )
6743 {
6744 // InternalProblem.g:2093:1: ( ( rule__EnumDeclaration__Alternatives_2 ) )
6745 // InternalProblem.g:2094:2: ( rule__EnumDeclaration__Alternatives_2 )
6746 {
6747 before(grammarAccess.getEnumDeclarationAccess().getAlternatives_2());
6748 // InternalProblem.g:2095:2: ( rule__EnumDeclaration__Alternatives_2 )
6749 // InternalProblem.g:2095:3: rule__EnumDeclaration__Alternatives_2
6750 {
6751 pushFollow(FOLLOW_2);
6752 rule__EnumDeclaration__Alternatives_2();
6753
6754 state._fsp--;
6755
6756
6757 }
6758
6759 after(grammarAccess.getEnumDeclarationAccess().getAlternatives_2());
6760
6761 }
6762
6763
6764 }
6765
6766 }
6767 catch (RecognitionException re) {
6768 reportError(re);
6769 recover(input,re);
6770 }
6771 finally {
6772
6773 restoreStackSize(stackSize);
6774
6775 }
6776 return ;
6777 }
6778 // $ANTLR end "rule__EnumDeclaration__Group__2__Impl"
6779
6780
6781 // $ANTLR start "rule__EnumDeclaration__Group_2_0__0"
6782 // InternalProblem.g:2104:1: rule__EnumDeclaration__Group_2_0__0 : rule__EnumDeclaration__Group_2_0__0__Impl rule__EnumDeclaration__Group_2_0__1 ;
6783 public final void rule__EnumDeclaration__Group_2_0__0() throws RecognitionException {
6784
6785 int stackSize = keepStackSize();
6786
6787 try {
6788 // InternalProblem.g:2108:1: ( rule__EnumDeclaration__Group_2_0__0__Impl rule__EnumDeclaration__Group_2_0__1 )
6789 // InternalProblem.g:2109:2: rule__EnumDeclaration__Group_2_0__0__Impl rule__EnumDeclaration__Group_2_0__1
6790 {
6791 pushFollow(FOLLOW_15);
6792 rule__EnumDeclaration__Group_2_0__0__Impl();
6793
6794 state._fsp--;
6795
6796 pushFollow(FOLLOW_2);
6797 rule__EnumDeclaration__Group_2_0__1();
6798
6799 state._fsp--;
6800
6801
6802 }
6803
6804 }
6805 catch (RecognitionException re) {
6806 reportError(re);
6807 recover(input,re);
6808 }
6809 finally {
6810
6811 restoreStackSize(stackSize);
6812
6813 }
6814 return ;
6815 }
6816 // $ANTLR end "rule__EnumDeclaration__Group_2_0__0"
6817
6818
6819 // $ANTLR start "rule__EnumDeclaration__Group_2_0__0__Impl"
6820 // InternalProblem.g:2116:1: rule__EnumDeclaration__Group_2_0__0__Impl : ( '{' ) ;
6821 public final void rule__EnumDeclaration__Group_2_0__0__Impl() throws RecognitionException {
6822
6823 int stackSize = keepStackSize();
6824
6825 try {
6826 // InternalProblem.g:2120:1: ( ( '{' ) )
6827 // InternalProblem.g:2121:1: ( '{' )
6828 {
6829 // InternalProblem.g:2121:1: ( '{' )
6830 // InternalProblem.g:2122:2: '{'
6831 {
6832 before(grammarAccess.getEnumDeclarationAccess().getLeftCurlyBracketKeyword_2_0_0());
6833 match(input,28,FOLLOW_2);
6834 after(grammarAccess.getEnumDeclarationAccess().getLeftCurlyBracketKeyword_2_0_0());
6835
6836 }
6837
6838
6839 }
6840
6841 }
6842 catch (RecognitionException re) {
6843 reportError(re);
6844 recover(input,re);
6845 }
6846 finally {
6847
6848 restoreStackSize(stackSize);
6849
6850 }
6851 return ;
6852 }
6853 // $ANTLR end "rule__EnumDeclaration__Group_2_0__0__Impl"
6854
6855
6856 // $ANTLR start "rule__EnumDeclaration__Group_2_0__1"
6857 // InternalProblem.g:2131:1: rule__EnumDeclaration__Group_2_0__1 : rule__EnumDeclaration__Group_2_0__1__Impl rule__EnumDeclaration__Group_2_0__2 ;
6858 public final void rule__EnumDeclaration__Group_2_0__1() throws RecognitionException {
6859
6860 int stackSize = keepStackSize();
6861
6862 try {
6863 // InternalProblem.g:2135:1: ( rule__EnumDeclaration__Group_2_0__1__Impl rule__EnumDeclaration__Group_2_0__2 )
6864 // InternalProblem.g:2136:2: rule__EnumDeclaration__Group_2_0__1__Impl rule__EnumDeclaration__Group_2_0__2
6865 {
6866 pushFollow(FOLLOW_15);
6867 rule__EnumDeclaration__Group_2_0__1__Impl();
6868
6869 state._fsp--;
6870
6871 pushFollow(FOLLOW_2);
6872 rule__EnumDeclaration__Group_2_0__2();
6873
6874 state._fsp--;
6875
6876
6877 }
6878
6879 }
6880 catch (RecognitionException re) {
6881 reportError(re);
6882 recover(input,re);
6883 }
6884 finally {
6885
6886 restoreStackSize(stackSize);
6887
6888 }
6889 return ;
6890 }
6891 // $ANTLR end "rule__EnumDeclaration__Group_2_0__1"
6892
6893
6894 // $ANTLR start "rule__EnumDeclaration__Group_2_0__1__Impl"
6895 // InternalProblem.g:2143:1: rule__EnumDeclaration__Group_2_0__1__Impl : ( ( rule__EnumDeclaration__Group_2_0_1__0 )? ) ;
6896 public final void rule__EnumDeclaration__Group_2_0__1__Impl() throws RecognitionException {
6897
6898 int stackSize = keepStackSize();
6899
6900 try {
6901 // InternalProblem.g:2147:1: ( ( ( rule__EnumDeclaration__Group_2_0_1__0 )? ) )
6902 // InternalProblem.g:2148:1: ( ( rule__EnumDeclaration__Group_2_0_1__0 )? )
6903 {
6904 // InternalProblem.g:2148:1: ( ( rule__EnumDeclaration__Group_2_0_1__0 )? )
6905 // InternalProblem.g:2149:2: ( rule__EnumDeclaration__Group_2_0_1__0 )?
6906 {
6907 before(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1());
6908 // InternalProblem.g:2150:2: ( rule__EnumDeclaration__Group_2_0_1__0 )?
6909 int alt29=2;
6910 int LA29_0 = input.LA(1);
6911
6912 if ( (LA29_0==RULE_ID||(LA29_0>=20 && LA29_0<=21)) ) {
6913 alt29=1;
6914 }
6915 switch (alt29) {
6916 case 1 :
6917 // InternalProblem.g:2150:3: rule__EnumDeclaration__Group_2_0_1__0
6918 {
6919 pushFollow(FOLLOW_2);
6920 rule__EnumDeclaration__Group_2_0_1__0();
6921
6922 state._fsp--;
6923
6924
6925 }
6926 break;
6927
6928 }
6929
6930 after(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1());
6931
6932 }
6933
6934
6935 }
6936
6937 }
6938 catch (RecognitionException re) {
6939 reportError(re);
6940 recover(input,re);
6941 }
6942 finally {
6943
6944 restoreStackSize(stackSize);
6945
6946 }
6947 return ;
6948 }
6949 // $ANTLR end "rule__EnumDeclaration__Group_2_0__1__Impl"
6950
6951
6952 // $ANTLR start "rule__EnumDeclaration__Group_2_0__2"
6953 // InternalProblem.g:2158:1: rule__EnumDeclaration__Group_2_0__2 : rule__EnumDeclaration__Group_2_0__2__Impl ;
6954 public final void rule__EnumDeclaration__Group_2_0__2() throws RecognitionException {
6955
6956 int stackSize = keepStackSize();
6957
6958 try {
6959 // InternalProblem.g:2162:1: ( rule__EnumDeclaration__Group_2_0__2__Impl )
6960 // InternalProblem.g:2163:2: rule__EnumDeclaration__Group_2_0__2__Impl
6961 {
6962 pushFollow(FOLLOW_2);
6963 rule__EnumDeclaration__Group_2_0__2__Impl();
6964
6965 state._fsp--;
6966
6967
6968 }
6969
6970 }
6971 catch (RecognitionException re) {
6972 reportError(re);
6973 recover(input,re);
6974 }
6975 finally {
6976
6977 restoreStackSize(stackSize);
6978
6979 }
6980 return ;
6981 }
6982 // $ANTLR end "rule__EnumDeclaration__Group_2_0__2"
6983
6984
6985 // $ANTLR start "rule__EnumDeclaration__Group_2_0__2__Impl"
6986 // InternalProblem.g:2169:1: rule__EnumDeclaration__Group_2_0__2__Impl : ( '}' ) ;
6987 public final void rule__EnumDeclaration__Group_2_0__2__Impl() throws RecognitionException {
6988
6989 int stackSize = keepStackSize();
6990
6991 try {
6992 // InternalProblem.g:2173:1: ( ( '}' ) )
6993 // InternalProblem.g:2174:1: ( '}' )
6994 {
6995 // InternalProblem.g:2174:1: ( '}' )
6996 // InternalProblem.g:2175:2: '}'
6997 {
6998 before(grammarAccess.getEnumDeclarationAccess().getRightCurlyBracketKeyword_2_0_2());
6999 match(input,29,FOLLOW_2);
7000 after(grammarAccess.getEnumDeclarationAccess().getRightCurlyBracketKeyword_2_0_2());
7001
7002 }
7003
7004
7005 }
7006
7007 }
7008 catch (RecognitionException re) {
7009 reportError(re);
7010 recover(input,re);
7011 }
7012 finally {
7013
7014 restoreStackSize(stackSize);
7015
7016 }
7017 return ;
7018 }
7019 // $ANTLR end "rule__EnumDeclaration__Group_2_0__2__Impl"
7020
7021
7022 // $ANTLR start "rule__EnumDeclaration__Group_2_0_1__0"
7023 // InternalProblem.g:2185:1: rule__EnumDeclaration__Group_2_0_1__0 : rule__EnumDeclaration__Group_2_0_1__0__Impl rule__EnumDeclaration__Group_2_0_1__1 ;
7024 public final void rule__EnumDeclaration__Group_2_0_1__0() throws RecognitionException {
7025
7026 int stackSize = keepStackSize();
7027
7028 try {
7029 // InternalProblem.g:2189:1: ( rule__EnumDeclaration__Group_2_0_1__0__Impl rule__EnumDeclaration__Group_2_0_1__1 )
7030 // InternalProblem.g:2190:2: rule__EnumDeclaration__Group_2_0_1__0__Impl rule__EnumDeclaration__Group_2_0_1__1
7031 {
7032 pushFollow(FOLLOW_16);
7033 rule__EnumDeclaration__Group_2_0_1__0__Impl();
7034
7035 state._fsp--;
7036
7037 pushFollow(FOLLOW_2);
7038 rule__EnumDeclaration__Group_2_0_1__1();
7039
7040 state._fsp--;
7041
7042
7043 }
7044
7045 }
7046 catch (RecognitionException re) {
7047 reportError(re);
7048 recover(input,re);
7049 }
7050 finally {
7051
7052 restoreStackSize(stackSize);
7053
7054 }
7055 return ;
7056 }
7057 // $ANTLR end "rule__EnumDeclaration__Group_2_0_1__0"
7058
7059
7060 // $ANTLR start "rule__EnumDeclaration__Group_2_0_1__0__Impl"
7061 // InternalProblem.g:2197:1: rule__EnumDeclaration__Group_2_0_1__0__Impl : ( ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_0 ) ) ;
7062 public final void rule__EnumDeclaration__Group_2_0_1__0__Impl() throws RecognitionException {
7063
7064 int stackSize = keepStackSize();
7065
7066 try {
7067 // InternalProblem.g:2201:1: ( ( ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_0 ) ) )
7068 // InternalProblem.g:2202:1: ( ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_0 ) )
7069 {
7070 // InternalProblem.g:2202:1: ( ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_0 ) )
7071 // InternalProblem.g:2203:2: ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_0 )
7072 {
7073 before(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_0());
7074 // InternalProblem.g:2204:2: ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_0 )
7075 // InternalProblem.g:2204:3: rule__EnumDeclaration__LiteralsAssignment_2_0_1_0
7076 {
7077 pushFollow(FOLLOW_2);
7078 rule__EnumDeclaration__LiteralsAssignment_2_0_1_0();
7079
7080 state._fsp--;
7081
7082
7083 }
7084
7085 after(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_0());
7086
7087 }
7088
7089
7090 }
7091
7092 }
7093 catch (RecognitionException re) {
7094 reportError(re);
7095 recover(input,re);
7096 }
7097 finally {
7098
7099 restoreStackSize(stackSize);
7100
7101 }
7102 return ;
7103 }
7104 // $ANTLR end "rule__EnumDeclaration__Group_2_0_1__0__Impl"
7105
7106
7107 // $ANTLR start "rule__EnumDeclaration__Group_2_0_1__1"
7108 // InternalProblem.g:2212:1: rule__EnumDeclaration__Group_2_0_1__1 : rule__EnumDeclaration__Group_2_0_1__1__Impl rule__EnumDeclaration__Group_2_0_1__2 ;
7109 public final void rule__EnumDeclaration__Group_2_0_1__1() throws RecognitionException {
7110
7111 int stackSize = keepStackSize();
7112
7113 try {
7114 // InternalProblem.g:2216:1: ( rule__EnumDeclaration__Group_2_0_1__1__Impl rule__EnumDeclaration__Group_2_0_1__2 )
7115 // InternalProblem.g:2217:2: rule__EnumDeclaration__Group_2_0_1__1__Impl rule__EnumDeclaration__Group_2_0_1__2
7116 {
7117 pushFollow(FOLLOW_16);
7118 rule__EnumDeclaration__Group_2_0_1__1__Impl();
7119
7120 state._fsp--;
7121
7122 pushFollow(FOLLOW_2);
7123 rule__EnumDeclaration__Group_2_0_1__2();
7124
7125 state._fsp--;
7126
7127
7128 }
7129
7130 }
7131 catch (RecognitionException re) {
7132 reportError(re);
7133 recover(input,re);
7134 }
7135 finally {
7136
7137 restoreStackSize(stackSize);
7138
7139 }
7140 return ;
7141 }
7142 // $ANTLR end "rule__EnumDeclaration__Group_2_0_1__1"
7143
7144
7145 // $ANTLR start "rule__EnumDeclaration__Group_2_0_1__1__Impl"
7146 // InternalProblem.g:2224:1: rule__EnumDeclaration__Group_2_0_1__1__Impl : ( ( rule__EnumDeclaration__Group_2_0_1_1__0 )* ) ;
7147 public final void rule__EnumDeclaration__Group_2_0_1__1__Impl() throws RecognitionException {
7148
7149 int stackSize = keepStackSize();
7150
7151 try {
7152 // InternalProblem.g:2228:1: ( ( ( rule__EnumDeclaration__Group_2_0_1_1__0 )* ) )
7153 // InternalProblem.g:2229:1: ( ( rule__EnumDeclaration__Group_2_0_1_1__0 )* )
7154 {
7155 // InternalProblem.g:2229:1: ( ( rule__EnumDeclaration__Group_2_0_1_1__0 )* )
7156 // InternalProblem.g:2230:2: ( rule__EnumDeclaration__Group_2_0_1_1__0 )*
7157 {
7158 before(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1_1());
7159 // InternalProblem.g:2231:2: ( rule__EnumDeclaration__Group_2_0_1_1__0 )*
7160 loop30:
7161 do {
7162 int alt30=2;
7163 int LA30_0 = input.LA(1);
7164
7165 if ( (LA30_0==14) ) {
7166 int LA30_1 = input.LA(2);
7167
7168 if ( (LA30_1==RULE_ID||(LA30_1>=20 && LA30_1<=21)) ) {
7169 alt30=1;
7170 }
7171
7172
7173 }
7174
7175
7176 switch (alt30) {
7177 case 1 :
7178 // InternalProblem.g:2231:3: rule__EnumDeclaration__Group_2_0_1_1__0
7179 {
7180 pushFollow(FOLLOW_10);
7181 rule__EnumDeclaration__Group_2_0_1_1__0();
7182
7183 state._fsp--;
7184
7185
7186 }
7187 break;
7188
7189 default :
7190 break loop30;
7191 }
7192 } while (true);
7193
7194 after(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1_1());
7195
7196 }
7197
7198
7199 }
7200
7201 }
7202 catch (RecognitionException re) {
7203 reportError(re);
7204 recover(input,re);
7205 }
7206 finally {
7207
7208 restoreStackSize(stackSize);
7209
7210 }
7211 return ;
7212 }
7213 // $ANTLR end "rule__EnumDeclaration__Group_2_0_1__1__Impl"
7214
7215
7216 // $ANTLR start "rule__EnumDeclaration__Group_2_0_1__2"
7217 // InternalProblem.g:2239:1: rule__EnumDeclaration__Group_2_0_1__2 : rule__EnumDeclaration__Group_2_0_1__2__Impl ;
7218 public final void rule__EnumDeclaration__Group_2_0_1__2() throws RecognitionException {
7219
7220 int stackSize = keepStackSize();
7221
7222 try {
7223 // InternalProblem.g:2243:1: ( rule__EnumDeclaration__Group_2_0_1__2__Impl )
7224 // InternalProblem.g:2244:2: rule__EnumDeclaration__Group_2_0_1__2__Impl
7225 {
7226 pushFollow(FOLLOW_2);
7227 rule__EnumDeclaration__Group_2_0_1__2__Impl();
7228
7229 state._fsp--;
7230
7231
7232 }
7233
7234 }
7235 catch (RecognitionException re) {
7236 reportError(re);
7237 recover(input,re);
7238 }
7239 finally {
7240
7241 restoreStackSize(stackSize);
7242
7243 }
7244 return ;
7245 }
7246 // $ANTLR end "rule__EnumDeclaration__Group_2_0_1__2"
7247
7248
7249 // $ANTLR start "rule__EnumDeclaration__Group_2_0_1__2__Impl"
7250 // InternalProblem.g:2250:1: rule__EnumDeclaration__Group_2_0_1__2__Impl : ( ( rule__EnumDeclaration__Alternatives_2_0_1_2 )? ) ;
7251 public final void rule__EnumDeclaration__Group_2_0_1__2__Impl() throws RecognitionException {
7252
7253 int stackSize = keepStackSize();
7254
7255 try {
7256 // InternalProblem.g:2254:1: ( ( ( rule__EnumDeclaration__Alternatives_2_0_1_2 )? ) )
7257 // InternalProblem.g:2255:1: ( ( rule__EnumDeclaration__Alternatives_2_0_1_2 )? )
7258 {
7259 // InternalProblem.g:2255:1: ( ( rule__EnumDeclaration__Alternatives_2_0_1_2 )? )
7260 // InternalProblem.g:2256:2: ( rule__EnumDeclaration__Alternatives_2_0_1_2 )?
7261 {
7262 before(grammarAccess.getEnumDeclarationAccess().getAlternatives_2_0_1_2());
7263 // InternalProblem.g:2257:2: ( rule__EnumDeclaration__Alternatives_2_0_1_2 )?
7264 int alt31=2;
7265 int LA31_0 = input.LA(1);
7266
7267 if ( ((LA31_0>=14 && LA31_0<=15)) ) {
7268 alt31=1;
7269 }
7270 switch (alt31) {
7271 case 1 :
7272 // InternalProblem.g:2257:3: rule__EnumDeclaration__Alternatives_2_0_1_2
7273 {
7274 pushFollow(FOLLOW_2);
7275 rule__EnumDeclaration__Alternatives_2_0_1_2();
7276
7277 state._fsp--;
7278
7279
7280 }
7281 break;
7282
7283 }
7284
7285 after(grammarAccess.getEnumDeclarationAccess().getAlternatives_2_0_1_2());
7286
7287 }
7288
7289
7290 }
7291
7292 }
7293 catch (RecognitionException re) {
7294 reportError(re);
7295 recover(input,re);
7296 }
7297 finally {
7298
7299 restoreStackSize(stackSize);
7300
7301 }
7302 return ;
7303 }
7304 // $ANTLR end "rule__EnumDeclaration__Group_2_0_1__2__Impl"
7305
7306
7307 // $ANTLR start "rule__EnumDeclaration__Group_2_0_1_1__0"
7308 // InternalProblem.g:2266:1: rule__EnumDeclaration__Group_2_0_1_1__0 : rule__EnumDeclaration__Group_2_0_1_1__0__Impl rule__EnumDeclaration__Group_2_0_1_1__1 ;
7309 public final void rule__EnumDeclaration__Group_2_0_1_1__0() throws RecognitionException {
7310
7311 int stackSize = keepStackSize();
7312
7313 try {
7314 // InternalProblem.g:2270:1: ( rule__EnumDeclaration__Group_2_0_1_1__0__Impl rule__EnumDeclaration__Group_2_0_1_1__1 )
7315 // InternalProblem.g:2271:2: rule__EnumDeclaration__Group_2_0_1_1__0__Impl rule__EnumDeclaration__Group_2_0_1_1__1
7316 {
7317 pushFollow(FOLLOW_5);
7318 rule__EnumDeclaration__Group_2_0_1_1__0__Impl();
7319
7320 state._fsp--;
7321
7322 pushFollow(FOLLOW_2);
7323 rule__EnumDeclaration__Group_2_0_1_1__1();
7324
7325 state._fsp--;
7326
7327
7328 }
7329
7330 }
7331 catch (RecognitionException re) {
7332 reportError(re);
7333 recover(input,re);
7334 }
7335 finally {
7336
7337 restoreStackSize(stackSize);
7338
7339 }
7340 return ;
7341 }
7342 // $ANTLR end "rule__EnumDeclaration__Group_2_0_1_1__0"
7343
7344
7345 // $ANTLR start "rule__EnumDeclaration__Group_2_0_1_1__0__Impl"
7346 // InternalProblem.g:2278:1: rule__EnumDeclaration__Group_2_0_1_1__0__Impl : ( ',' ) ;
7347 public final void rule__EnumDeclaration__Group_2_0_1_1__0__Impl() throws RecognitionException {
7348
7349 int stackSize = keepStackSize();
7350
7351 try {
7352 // InternalProblem.g:2282:1: ( ( ',' ) )
7353 // InternalProblem.g:2283:1: ( ',' )
7354 {
7355 // InternalProblem.g:2283:1: ( ',' )
7356 // InternalProblem.g:2284:2: ','
7357 {
7358 before(grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_1_0());
7359 match(input,14,FOLLOW_2);
7360 after(grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_1_0());
7361
7362 }
7363
7364
7365 }
7366
7367 }
7368 catch (RecognitionException re) {
7369 reportError(re);
7370 recover(input,re);
7371 }
7372 finally {
7373
7374 restoreStackSize(stackSize);
7375
7376 }
7377 return ;
7378 }
7379 // $ANTLR end "rule__EnumDeclaration__Group_2_0_1_1__0__Impl"
7380
7381
7382 // $ANTLR start "rule__EnumDeclaration__Group_2_0_1_1__1"
7383 // InternalProblem.g:2293:1: rule__EnumDeclaration__Group_2_0_1_1__1 : rule__EnumDeclaration__Group_2_0_1_1__1__Impl ;
7384 public final void rule__EnumDeclaration__Group_2_0_1_1__1() throws RecognitionException {
7385
7386 int stackSize = keepStackSize();
7387
7388 try {
7389 // InternalProblem.g:2297:1: ( rule__EnumDeclaration__Group_2_0_1_1__1__Impl )
7390 // InternalProblem.g:2298:2: rule__EnumDeclaration__Group_2_0_1_1__1__Impl
7391 {
7392 pushFollow(FOLLOW_2);
7393 rule__EnumDeclaration__Group_2_0_1_1__1__Impl();
7394
7395 state._fsp--;
7396
7397
7398 }
7399
7400 }
7401 catch (RecognitionException re) {
7402 reportError(re);
7403 recover(input,re);
7404 }
7405 finally {
7406
7407 restoreStackSize(stackSize);
7408
7409 }
7410 return ;
7411 }
7412 // $ANTLR end "rule__EnumDeclaration__Group_2_0_1_1__1"
7413
7414
7415 // $ANTLR start "rule__EnumDeclaration__Group_2_0_1_1__1__Impl"
7416 // InternalProblem.g:2304:1: rule__EnumDeclaration__Group_2_0_1_1__1__Impl : ( ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1 ) ) ;
7417 public final void rule__EnumDeclaration__Group_2_0_1_1__1__Impl() throws RecognitionException {
7418
7419 int stackSize = keepStackSize();
7420
7421 try {
7422 // InternalProblem.g:2308:1: ( ( ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1 ) ) )
7423 // InternalProblem.g:2309:1: ( ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1 ) )
7424 {
7425 // InternalProblem.g:2309:1: ( ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1 ) )
7426 // InternalProblem.g:2310:2: ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1 )
7427 {
7428 before(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_1_1());
7429 // InternalProblem.g:2311:2: ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1 )
7430 // InternalProblem.g:2311:3: rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1
7431 {
7432 pushFollow(FOLLOW_2);
7433 rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1();
7434
7435 state._fsp--;
7436
7437
7438 }
7439
7440 after(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_1_1());
7441
7442 }
7443
7444
7445 }
7446
7447 }
7448 catch (RecognitionException re) {
7449 reportError(re);
7450 recover(input,re);
7451 }
7452 finally {
7453
7454 restoreStackSize(stackSize);
7455
7456 }
7457 return ;
7458 }
7459 // $ANTLR end "rule__EnumDeclaration__Group_2_0_1_1__1__Impl"
7460
7461
7462 // $ANTLR start "rule__ReferenceDeclaration__Group__0"
7463 // InternalProblem.g:2320:1: rule__ReferenceDeclaration__Group__0 : rule__ReferenceDeclaration__Group__0__Impl rule__ReferenceDeclaration__Group__1 ;
7464 public final void rule__ReferenceDeclaration__Group__0() throws RecognitionException {
7465
7466 int stackSize = keepStackSize();
7467
7468 try {
7469 // InternalProblem.g:2324:1: ( rule__ReferenceDeclaration__Group__0__Impl rule__ReferenceDeclaration__Group__1 )
7470 // InternalProblem.g:2325:2: rule__ReferenceDeclaration__Group__0__Impl rule__ReferenceDeclaration__Group__1
7471 {
7472 pushFollow(FOLLOW_17);
7473 rule__ReferenceDeclaration__Group__0__Impl();
7474
7475 state._fsp--;
7476
7477 pushFollow(FOLLOW_2);
7478 rule__ReferenceDeclaration__Group__1();
7479
7480 state._fsp--;
7481
7482
7483 }
7484
7485 }
7486 catch (RecognitionException re) {
7487 reportError(re);
7488 recover(input,re);
7489 }
7490 finally {
7491
7492 restoreStackSize(stackSize);
7493
7494 }
7495 return ;
7496 }
7497 // $ANTLR end "rule__ReferenceDeclaration__Group__0"
7498
7499
7500 // $ANTLR start "rule__ReferenceDeclaration__Group__0__Impl"
7501 // InternalProblem.g:2332:1: rule__ReferenceDeclaration__Group__0__Impl : ( ( rule__ReferenceDeclaration__Alternatives_0 )? ) ;
7502 public final void rule__ReferenceDeclaration__Group__0__Impl() throws RecognitionException {
7503
7504 int stackSize = keepStackSize();
7505
7506 try {
7507 // InternalProblem.g:2336:1: ( ( ( rule__ReferenceDeclaration__Alternatives_0 )? ) )
7508 // InternalProblem.g:2337:1: ( ( rule__ReferenceDeclaration__Alternatives_0 )? )
7509 {
7510 // InternalProblem.g:2337:1: ( ( rule__ReferenceDeclaration__Alternatives_0 )? )
7511 // InternalProblem.g:2338:2: ( rule__ReferenceDeclaration__Alternatives_0 )?
7512 {
7513 before(grammarAccess.getReferenceDeclarationAccess().getAlternatives_0());
7514 // InternalProblem.g:2339:2: ( rule__ReferenceDeclaration__Alternatives_0 )?
7515 int alt32=2;
7516 int LA32_0 = input.LA(1);
7517
7518 if ( (LA32_0==16||LA32_0==43) ) {
7519 alt32=1;
7520 }
7521 switch (alt32) {
7522 case 1 :
7523 // InternalProblem.g:2339:3: rule__ReferenceDeclaration__Alternatives_0
7524 {
7525 pushFollow(FOLLOW_2);
7526 rule__ReferenceDeclaration__Alternatives_0();
7527
7528 state._fsp--;
7529
7530
7531 }
7532 break;
7533
7534 }
7535
7536 after(grammarAccess.getReferenceDeclarationAccess().getAlternatives_0());
7537
7538 }
7539
7540
7541 }
7542
7543 }
7544 catch (RecognitionException re) {
7545 reportError(re);
7546 recover(input,re);
7547 }
7548 finally {
7549
7550 restoreStackSize(stackSize);
7551
7552 }
7553 return ;
7554 }
7555 // $ANTLR end "rule__ReferenceDeclaration__Group__0__Impl"
7556
7557
7558 // $ANTLR start "rule__ReferenceDeclaration__Group__1"
7559 // InternalProblem.g:2347:1: rule__ReferenceDeclaration__Group__1 : rule__ReferenceDeclaration__Group__1__Impl rule__ReferenceDeclaration__Group__2 ;
7560 public final void rule__ReferenceDeclaration__Group__1() throws RecognitionException {
7561
7562 int stackSize = keepStackSize();
7563
7564 try {
7565 // InternalProblem.g:2351:1: ( rule__ReferenceDeclaration__Group__1__Impl rule__ReferenceDeclaration__Group__2 )
7566 // InternalProblem.g:2352:2: rule__ReferenceDeclaration__Group__1__Impl rule__ReferenceDeclaration__Group__2
7567 {
7568 pushFollow(FOLLOW_18);
7569 rule__ReferenceDeclaration__Group__1__Impl();
7570
7571 state._fsp--;
7572
7573 pushFollow(FOLLOW_2);
7574 rule__ReferenceDeclaration__Group__2();
7575
7576 state._fsp--;
7577
7578
7579 }
7580
7581 }
7582 catch (RecognitionException re) {
7583 reportError(re);
7584 recover(input,re);
7585 }
7586 finally {
7587
7588 restoreStackSize(stackSize);
7589
7590 }
7591 return ;
7592 }
7593 // $ANTLR end "rule__ReferenceDeclaration__Group__1"
7594
7595
7596 // $ANTLR start "rule__ReferenceDeclaration__Group__1__Impl"
7597 // InternalProblem.g:2359:1: rule__ReferenceDeclaration__Group__1__Impl : ( ( rule__ReferenceDeclaration__ReferenceTypeAssignment_1 ) ) ;
7598 public final void rule__ReferenceDeclaration__Group__1__Impl() throws RecognitionException {
7599
7600 int stackSize = keepStackSize();
7601
7602 try {
7603 // InternalProblem.g:2363:1: ( ( ( rule__ReferenceDeclaration__ReferenceTypeAssignment_1 ) ) )
7604 // InternalProblem.g:2364:1: ( ( rule__ReferenceDeclaration__ReferenceTypeAssignment_1 ) )
7605 {
7606 // InternalProblem.g:2364:1: ( ( rule__ReferenceDeclaration__ReferenceTypeAssignment_1 ) )
7607 // InternalProblem.g:2365:2: ( rule__ReferenceDeclaration__ReferenceTypeAssignment_1 )
7608 {
7609 before(grammarAccess.getReferenceDeclarationAccess().getReferenceTypeAssignment_1());
7610 // InternalProblem.g:2366:2: ( rule__ReferenceDeclaration__ReferenceTypeAssignment_1 )
7611 // InternalProblem.g:2366:3: rule__ReferenceDeclaration__ReferenceTypeAssignment_1
7612 {
7613 pushFollow(FOLLOW_2);
7614 rule__ReferenceDeclaration__ReferenceTypeAssignment_1();
7615
7616 state._fsp--;
7617
7618
7619 }
7620
7621 after(grammarAccess.getReferenceDeclarationAccess().getReferenceTypeAssignment_1());
7622
7623 }
7624
7625
7626 }
7627
7628 }
7629 catch (RecognitionException re) {
7630 reportError(re);
7631 recover(input,re);
7632 }
7633 finally {
7634
7635 restoreStackSize(stackSize);
7636
7637 }
7638 return ;
7639 }
7640 // $ANTLR end "rule__ReferenceDeclaration__Group__1__Impl"
7641
7642
7643 // $ANTLR start "rule__ReferenceDeclaration__Group__2"
7644 // InternalProblem.g:2374:1: rule__ReferenceDeclaration__Group__2 : rule__ReferenceDeclaration__Group__2__Impl rule__ReferenceDeclaration__Group__3 ;
7645 public final void rule__ReferenceDeclaration__Group__2() throws RecognitionException {
7646
7647 int stackSize = keepStackSize();
7648
7649 try {
7650 // InternalProblem.g:2378:1: ( rule__ReferenceDeclaration__Group__2__Impl rule__ReferenceDeclaration__Group__3 )
7651 // InternalProblem.g:2379:2: rule__ReferenceDeclaration__Group__2__Impl rule__ReferenceDeclaration__Group__3
7652 {
7653 pushFollow(FOLLOW_18);
7654 rule__ReferenceDeclaration__Group__2__Impl();
7655
7656 state._fsp--;
7657
7658 pushFollow(FOLLOW_2);
7659 rule__ReferenceDeclaration__Group__3();
7660
7661 state._fsp--;
7662
7663
7664 }
7665
7666 }
7667 catch (RecognitionException re) {
7668 reportError(re);
7669 recover(input,re);
7670 }
7671 finally {
7672
7673 restoreStackSize(stackSize);
7674
7675 }
7676 return ;
7677 }
7678 // $ANTLR end "rule__ReferenceDeclaration__Group__2"
7679
7680
7681 // $ANTLR start "rule__ReferenceDeclaration__Group__2__Impl"
7682 // InternalProblem.g:2386:1: rule__ReferenceDeclaration__Group__2__Impl : ( ( rule__ReferenceDeclaration__Group_2__0 )? ) ;
7683 public final void rule__ReferenceDeclaration__Group__2__Impl() throws RecognitionException {
7684
7685 int stackSize = keepStackSize();
7686
7687 try {
7688 // InternalProblem.g:2390:1: ( ( ( rule__ReferenceDeclaration__Group_2__0 )? ) )
7689 // InternalProblem.g:2391:1: ( ( rule__ReferenceDeclaration__Group_2__0 )? )
7690 {
7691 // InternalProblem.g:2391:1: ( ( rule__ReferenceDeclaration__Group_2__0 )? )
7692 // InternalProblem.g:2392:2: ( rule__ReferenceDeclaration__Group_2__0 )?
7693 {
7694 before(grammarAccess.getReferenceDeclarationAccess().getGroup_2());
7695 // InternalProblem.g:2393:2: ( rule__ReferenceDeclaration__Group_2__0 )?
7696 int alt33=2;
7697 int LA33_0 = input.LA(1);
7698
7699 if ( (LA33_0==31) ) {
7700 alt33=1;
7701 }
7702 switch (alt33) {
7703 case 1 :
7704 // InternalProblem.g:2393:3: rule__ReferenceDeclaration__Group_2__0
7705 {
7706 pushFollow(FOLLOW_2);
7707 rule__ReferenceDeclaration__Group_2__0();
7708
7709 state._fsp--;
7710
7711
7712 }
7713 break;
7714
7715 }
7716
7717 after(grammarAccess.getReferenceDeclarationAccess().getGroup_2());
7718
7719 }
7720
7721
7722 }
7723
7724 }
7725 catch (RecognitionException re) {
7726 reportError(re);
7727 recover(input,re);
7728 }
7729 finally {
7730
7731 restoreStackSize(stackSize);
7732
7733 }
7734 return ;
7735 }
7736 // $ANTLR end "rule__ReferenceDeclaration__Group__2__Impl"
7737
7738
7739 // $ANTLR start "rule__ReferenceDeclaration__Group__3"
7740 // InternalProblem.g:2401:1: rule__ReferenceDeclaration__Group__3 : rule__ReferenceDeclaration__Group__3__Impl rule__ReferenceDeclaration__Group__4 ;
7741 public final void rule__ReferenceDeclaration__Group__3() throws RecognitionException {
7742
7743 int stackSize = keepStackSize();
7744
7745 try {
7746 // InternalProblem.g:2405:1: ( rule__ReferenceDeclaration__Group__3__Impl rule__ReferenceDeclaration__Group__4 )
7747 // InternalProblem.g:2406:2: rule__ReferenceDeclaration__Group__3__Impl rule__ReferenceDeclaration__Group__4
7748 {
7749 pushFollow(FOLLOW_19);
7750 rule__ReferenceDeclaration__Group__3__Impl();
7751
7752 state._fsp--;
7753
7754 pushFollow(FOLLOW_2);
7755 rule__ReferenceDeclaration__Group__4();
7756
7757 state._fsp--;
7758
7759
7760 }
7761
7762 }
7763 catch (RecognitionException re) {
7764 reportError(re);
7765 recover(input,re);
7766 }
7767 finally {
7768
7769 restoreStackSize(stackSize);
7770
7771 }
7772 return ;
7773 }
7774 // $ANTLR end "rule__ReferenceDeclaration__Group__3"
7775
7776
7777 // $ANTLR start "rule__ReferenceDeclaration__Group__3__Impl"
7778 // InternalProblem.g:2413:1: rule__ReferenceDeclaration__Group__3__Impl : ( ( rule__ReferenceDeclaration__NameAssignment_3 ) ) ;
7779 public final void rule__ReferenceDeclaration__Group__3__Impl() throws RecognitionException {
7780
7781 int stackSize = keepStackSize();
7782
7783 try {
7784 // InternalProblem.g:2417:1: ( ( ( rule__ReferenceDeclaration__NameAssignment_3 ) ) )
7785 // InternalProblem.g:2418:1: ( ( rule__ReferenceDeclaration__NameAssignment_3 ) )
7786 {
7787 // InternalProblem.g:2418:1: ( ( rule__ReferenceDeclaration__NameAssignment_3 ) )
7788 // InternalProblem.g:2419:2: ( rule__ReferenceDeclaration__NameAssignment_3 )
7789 {
7790 before(grammarAccess.getReferenceDeclarationAccess().getNameAssignment_3());
7791 // InternalProblem.g:2420:2: ( rule__ReferenceDeclaration__NameAssignment_3 )
7792 // InternalProblem.g:2420:3: rule__ReferenceDeclaration__NameAssignment_3
7793 {
7794 pushFollow(FOLLOW_2);
7795 rule__ReferenceDeclaration__NameAssignment_3();
7796
7797 state._fsp--;
7798
7799
7800 }
7801
7802 after(grammarAccess.getReferenceDeclarationAccess().getNameAssignment_3());
7803
7804 }
7805
7806
7807 }
7808
7809 }
7810 catch (RecognitionException re) {
7811 reportError(re);
7812 recover(input,re);
7813 }
7814 finally {
7815
7816 restoreStackSize(stackSize);
7817
7818 }
7819 return ;
7820 }
7821 // $ANTLR end "rule__ReferenceDeclaration__Group__3__Impl"
7822
7823
7824 // $ANTLR start "rule__ReferenceDeclaration__Group__4"
7825 // InternalProblem.g:2428:1: rule__ReferenceDeclaration__Group__4 : rule__ReferenceDeclaration__Group__4__Impl ;
7826 public final void rule__ReferenceDeclaration__Group__4() throws RecognitionException {
7827
7828 int stackSize = keepStackSize();
7829
7830 try {
7831 // InternalProblem.g:2432:1: ( rule__ReferenceDeclaration__Group__4__Impl )
7832 // InternalProblem.g:2433:2: rule__ReferenceDeclaration__Group__4__Impl
7833 {
7834 pushFollow(FOLLOW_2);
7835 rule__ReferenceDeclaration__Group__4__Impl();
7836
7837 state._fsp--;
7838
7839
7840 }
7841
7842 }
7843 catch (RecognitionException re) {
7844 reportError(re);
7845 recover(input,re);
7846 }
7847 finally {
7848
7849 restoreStackSize(stackSize);
7850
7851 }
7852 return ;
7853 }
7854 // $ANTLR end "rule__ReferenceDeclaration__Group__4"
7855
7856
7857 // $ANTLR start "rule__ReferenceDeclaration__Group__4__Impl"
7858 // InternalProblem.g:2439:1: rule__ReferenceDeclaration__Group__4__Impl : ( ( rule__ReferenceDeclaration__Group_4__0 )? ) ;
7859 public final void rule__ReferenceDeclaration__Group__4__Impl() throws RecognitionException {
7860
7861 int stackSize = keepStackSize();
7862
7863 try {
7864 // InternalProblem.g:2443:1: ( ( ( rule__ReferenceDeclaration__Group_4__0 )? ) )
7865 // InternalProblem.g:2444:1: ( ( rule__ReferenceDeclaration__Group_4__0 )? )
7866 {
7867 // InternalProblem.g:2444:1: ( ( rule__ReferenceDeclaration__Group_4__0 )? )
7868 // InternalProblem.g:2445:2: ( rule__ReferenceDeclaration__Group_4__0 )?
7869 {
7870 before(grammarAccess.getReferenceDeclarationAccess().getGroup_4());
7871 // InternalProblem.g:2446:2: ( rule__ReferenceDeclaration__Group_4__0 )?
7872 int alt34=2;
7873 int LA34_0 = input.LA(1);
7874
7875 if ( (LA34_0==33) ) {
7876 alt34=1;
7877 }
7878 switch (alt34) {
7879 case 1 :
7880 // InternalProblem.g:2446:3: rule__ReferenceDeclaration__Group_4__0
7881 {
7882 pushFollow(FOLLOW_2);
7883 rule__ReferenceDeclaration__Group_4__0();
7884
7885 state._fsp--;
7886
7887
7888 }
7889 break;
7890
7891 }
7892
7893 after(grammarAccess.getReferenceDeclarationAccess().getGroup_4());
7894
7895 }
7896
7897
7898 }
7899
7900 }
7901 catch (RecognitionException re) {
7902 reportError(re);
7903 recover(input,re);
7904 }
7905 finally {
7906
7907 restoreStackSize(stackSize);
7908
7909 }
7910 return ;
7911 }
7912 // $ANTLR end "rule__ReferenceDeclaration__Group__4__Impl"
7913
7914
7915 // $ANTLR start "rule__ReferenceDeclaration__Group_2__0"
7916 // InternalProblem.g:2455:1: rule__ReferenceDeclaration__Group_2__0 : rule__ReferenceDeclaration__Group_2__0__Impl rule__ReferenceDeclaration__Group_2__1 ;
7917 public final void rule__ReferenceDeclaration__Group_2__0() throws RecognitionException {
7918
7919 int stackSize = keepStackSize();
7920
7921 try {
7922 // InternalProblem.g:2459:1: ( rule__ReferenceDeclaration__Group_2__0__Impl rule__ReferenceDeclaration__Group_2__1 )
7923 // InternalProblem.g:2460:2: rule__ReferenceDeclaration__Group_2__0__Impl rule__ReferenceDeclaration__Group_2__1
7924 {
7925 pushFollow(FOLLOW_20);
7926 rule__ReferenceDeclaration__Group_2__0__Impl();
7927
7928 state._fsp--;
7929
7930 pushFollow(FOLLOW_2);
7931 rule__ReferenceDeclaration__Group_2__1();
7932
7933 state._fsp--;
7934
7935
7936 }
7937
7938 }
7939 catch (RecognitionException re) {
7940 reportError(re);
7941 recover(input,re);
7942 }
7943 finally {
7944
7945 restoreStackSize(stackSize);
7946
7947 }
7948 return ;
7949 }
7950 // $ANTLR end "rule__ReferenceDeclaration__Group_2__0"
7951
7952
7953 // $ANTLR start "rule__ReferenceDeclaration__Group_2__0__Impl"
7954 // InternalProblem.g:2467:1: rule__ReferenceDeclaration__Group_2__0__Impl : ( '[' ) ;
7955 public final void rule__ReferenceDeclaration__Group_2__0__Impl() throws RecognitionException {
7956
7957 int stackSize = keepStackSize();
7958
7959 try {
7960 // InternalProblem.g:2471:1: ( ( '[' ) )
7961 // InternalProblem.g:2472:1: ( '[' )
7962 {
7963 // InternalProblem.g:2472:1: ( '[' )
7964 // InternalProblem.g:2473:2: '['
7965 {
7966 before(grammarAccess.getReferenceDeclarationAccess().getLeftSquareBracketKeyword_2_0());
7967 match(input,31,FOLLOW_2);
7968 after(grammarAccess.getReferenceDeclarationAccess().getLeftSquareBracketKeyword_2_0());
7969
7970 }
7971
7972
7973 }
7974
7975 }
7976 catch (RecognitionException re) {
7977 reportError(re);
7978 recover(input,re);
7979 }
7980 finally {
7981
7982 restoreStackSize(stackSize);
7983
7984 }
7985 return ;
7986 }
7987 // $ANTLR end "rule__ReferenceDeclaration__Group_2__0__Impl"
7988
7989
7990 // $ANTLR start "rule__ReferenceDeclaration__Group_2__1"
7991 // InternalProblem.g:2482:1: rule__ReferenceDeclaration__Group_2__1 : rule__ReferenceDeclaration__Group_2__1__Impl rule__ReferenceDeclaration__Group_2__2 ;
7992 public final void rule__ReferenceDeclaration__Group_2__1() throws RecognitionException {
7993
7994 int stackSize = keepStackSize();
7995
7996 try {
7997 // InternalProblem.g:2486:1: ( rule__ReferenceDeclaration__Group_2__1__Impl rule__ReferenceDeclaration__Group_2__2 )
7998 // InternalProblem.g:2487:2: rule__ReferenceDeclaration__Group_2__1__Impl rule__ReferenceDeclaration__Group_2__2
7999 {
8000 pushFollow(FOLLOW_21);
8001 rule__ReferenceDeclaration__Group_2__1__Impl();
8002
8003 state._fsp--;
8004
8005 pushFollow(FOLLOW_2);
8006 rule__ReferenceDeclaration__Group_2__2();
8007
8008 state._fsp--;
8009
8010
8011 }
8012
8013 }
8014 catch (RecognitionException re) {
8015 reportError(re);
8016 recover(input,re);
8017 }
8018 finally {
8019
8020 restoreStackSize(stackSize);
8021
8022 }
8023 return ;
8024 }
8025 // $ANTLR end "rule__ReferenceDeclaration__Group_2__1"
8026
8027
8028 // $ANTLR start "rule__ReferenceDeclaration__Group_2__1__Impl"
8029 // InternalProblem.g:2494:1: rule__ReferenceDeclaration__Group_2__1__Impl : ( ( rule__ReferenceDeclaration__MultiplicityAssignment_2_1 ) ) ;
8030 public final void rule__ReferenceDeclaration__Group_2__1__Impl() throws RecognitionException {
8031
8032 int stackSize = keepStackSize();
8033
8034 try {
8035 // InternalProblem.g:2498:1: ( ( ( rule__ReferenceDeclaration__MultiplicityAssignment_2_1 ) ) )
8036 // InternalProblem.g:2499:1: ( ( rule__ReferenceDeclaration__MultiplicityAssignment_2_1 ) )
8037 {
8038 // InternalProblem.g:2499:1: ( ( rule__ReferenceDeclaration__MultiplicityAssignment_2_1 ) )
8039 // InternalProblem.g:2500:2: ( rule__ReferenceDeclaration__MultiplicityAssignment_2_1 )
8040 {
8041 before(grammarAccess.getReferenceDeclarationAccess().getMultiplicityAssignment_2_1());
8042 // InternalProblem.g:2501:2: ( rule__ReferenceDeclaration__MultiplicityAssignment_2_1 )
8043 // InternalProblem.g:2501:3: rule__ReferenceDeclaration__MultiplicityAssignment_2_1
8044 {
8045 pushFollow(FOLLOW_2);
8046 rule__ReferenceDeclaration__MultiplicityAssignment_2_1();
8047
8048 state._fsp--;
8049
8050
8051 }
8052
8053 after(grammarAccess.getReferenceDeclarationAccess().getMultiplicityAssignment_2_1());
8054
8055 }
8056
8057
8058 }
8059
8060 }
8061 catch (RecognitionException re) {
8062 reportError(re);
8063 recover(input,re);
8064 }
8065 finally {
8066
8067 restoreStackSize(stackSize);
8068
8069 }
8070 return ;
8071 }
8072 // $ANTLR end "rule__ReferenceDeclaration__Group_2__1__Impl"
8073
8074
8075 // $ANTLR start "rule__ReferenceDeclaration__Group_2__2"
8076 // InternalProblem.g:2509:1: rule__ReferenceDeclaration__Group_2__2 : rule__ReferenceDeclaration__Group_2__2__Impl ;
8077 public final void rule__ReferenceDeclaration__Group_2__2() throws RecognitionException {
8078
8079 int stackSize = keepStackSize();
8080
8081 try {
8082 // InternalProblem.g:2513:1: ( rule__ReferenceDeclaration__Group_2__2__Impl )
8083 // InternalProblem.g:2514:2: rule__ReferenceDeclaration__Group_2__2__Impl
8084 {
8085 pushFollow(FOLLOW_2);
8086 rule__ReferenceDeclaration__Group_2__2__Impl();
8087
8088 state._fsp--;
8089
8090
8091 }
8092
8093 }
8094 catch (RecognitionException re) {
8095 reportError(re);
8096 recover(input,re);
8097 }
8098 finally {
8099
8100 restoreStackSize(stackSize);
8101
8102 }
8103 return ;
8104 }
8105 // $ANTLR end "rule__ReferenceDeclaration__Group_2__2"
8106
8107
8108 // $ANTLR start "rule__ReferenceDeclaration__Group_2__2__Impl"
8109 // InternalProblem.g:2520:1: rule__ReferenceDeclaration__Group_2__2__Impl : ( ']' ) ;
8110 public final void rule__ReferenceDeclaration__Group_2__2__Impl() throws RecognitionException {
8111
8112 int stackSize = keepStackSize();
8113
8114 try {
8115 // InternalProblem.g:2524:1: ( ( ']' ) )
8116 // InternalProblem.g:2525:1: ( ']' )
8117 {
8118 // InternalProblem.g:2525:1: ( ']' )
8119 // InternalProblem.g:2526:2: ']'
8120 {
8121 before(grammarAccess.getReferenceDeclarationAccess().getRightSquareBracketKeyword_2_2());
8122 match(input,32,FOLLOW_2);
8123 after(grammarAccess.getReferenceDeclarationAccess().getRightSquareBracketKeyword_2_2());
8124
8125 }
8126
8127
8128 }
8129
8130 }
8131 catch (RecognitionException re) {
8132 reportError(re);
8133 recover(input,re);
8134 }
8135 finally {
8136
8137 restoreStackSize(stackSize);
8138
8139 }
8140 return ;
8141 }
8142 // $ANTLR end "rule__ReferenceDeclaration__Group_2__2__Impl"
8143
8144
8145 // $ANTLR start "rule__ReferenceDeclaration__Group_4__0"
8146 // InternalProblem.g:2536:1: rule__ReferenceDeclaration__Group_4__0 : rule__ReferenceDeclaration__Group_4__0__Impl rule__ReferenceDeclaration__Group_4__1 ;
8147 public final void rule__ReferenceDeclaration__Group_4__0() throws RecognitionException {
8148
8149 int stackSize = keepStackSize();
8150
8151 try {
8152 // InternalProblem.g:2540:1: ( rule__ReferenceDeclaration__Group_4__0__Impl rule__ReferenceDeclaration__Group_4__1 )
8153 // InternalProblem.g:2541:2: rule__ReferenceDeclaration__Group_4__0__Impl rule__ReferenceDeclaration__Group_4__1
8154 {
8155 pushFollow(FOLLOW_5);
8156 rule__ReferenceDeclaration__Group_4__0__Impl();
8157
8158 state._fsp--;
8159
8160 pushFollow(FOLLOW_2);
8161 rule__ReferenceDeclaration__Group_4__1();
8162
8163 state._fsp--;
8164
8165
8166 }
8167
8168 }
8169 catch (RecognitionException re) {
8170 reportError(re);
8171 recover(input,re);
8172 }
8173 finally {
8174
8175 restoreStackSize(stackSize);
8176
8177 }
8178 return ;
8179 }
8180 // $ANTLR end "rule__ReferenceDeclaration__Group_4__0"
8181
8182
8183 // $ANTLR start "rule__ReferenceDeclaration__Group_4__0__Impl"
8184 // InternalProblem.g:2548:1: rule__ReferenceDeclaration__Group_4__0__Impl : ( 'opposite' ) ;
8185 public final void rule__ReferenceDeclaration__Group_4__0__Impl() throws RecognitionException {
8186
8187 int stackSize = keepStackSize();
8188
8189 try {
8190 // InternalProblem.g:2552:1: ( ( 'opposite' ) )
8191 // InternalProblem.g:2553:1: ( 'opposite' )
8192 {
8193 // InternalProblem.g:2553:1: ( 'opposite' )
8194 // InternalProblem.g:2554:2: 'opposite'
8195 {
8196 before(grammarAccess.getReferenceDeclarationAccess().getOppositeKeyword_4_0());
8197 match(input,33,FOLLOW_2);
8198 after(grammarAccess.getReferenceDeclarationAccess().getOppositeKeyword_4_0());
8199
8200 }
8201
8202
8203 }
8204
8205 }
8206 catch (RecognitionException re) {
8207 reportError(re);
8208 recover(input,re);
8209 }
8210 finally {
8211
8212 restoreStackSize(stackSize);
8213
8214 }
8215 return ;
8216 }
8217 // $ANTLR end "rule__ReferenceDeclaration__Group_4__0__Impl"
8218
8219
8220 // $ANTLR start "rule__ReferenceDeclaration__Group_4__1"
8221 // InternalProblem.g:2563:1: rule__ReferenceDeclaration__Group_4__1 : rule__ReferenceDeclaration__Group_4__1__Impl ;
8222 public final void rule__ReferenceDeclaration__Group_4__1() throws RecognitionException {
8223
8224 int stackSize = keepStackSize();
8225
8226 try {
8227 // InternalProblem.g:2567:1: ( rule__ReferenceDeclaration__Group_4__1__Impl )
8228 // InternalProblem.g:2568:2: rule__ReferenceDeclaration__Group_4__1__Impl
8229 {
8230 pushFollow(FOLLOW_2);
8231 rule__ReferenceDeclaration__Group_4__1__Impl();
8232
8233 state._fsp--;
8234
8235
8236 }
8237
8238 }
8239 catch (RecognitionException re) {
8240 reportError(re);
8241 recover(input,re);
8242 }
8243 finally {
8244
8245 restoreStackSize(stackSize);
8246
8247 }
8248 return ;
8249 }
8250 // $ANTLR end "rule__ReferenceDeclaration__Group_4__1"
8251
8252
8253 // $ANTLR start "rule__ReferenceDeclaration__Group_4__1__Impl"
8254 // InternalProblem.g:2574:1: rule__ReferenceDeclaration__Group_4__1__Impl : ( ( rule__ReferenceDeclaration__OppositeAssignment_4_1 ) ) ;
8255 public final void rule__ReferenceDeclaration__Group_4__1__Impl() throws RecognitionException {
8256
8257 int stackSize = keepStackSize();
8258
8259 try {
8260 // InternalProblem.g:2578:1: ( ( ( rule__ReferenceDeclaration__OppositeAssignment_4_1 ) ) )
8261 // InternalProblem.g:2579:1: ( ( rule__ReferenceDeclaration__OppositeAssignment_4_1 ) )
8262 {
8263 // InternalProblem.g:2579:1: ( ( rule__ReferenceDeclaration__OppositeAssignment_4_1 ) )
8264 // InternalProblem.g:2580:2: ( rule__ReferenceDeclaration__OppositeAssignment_4_1 )
8265 {
8266 before(grammarAccess.getReferenceDeclarationAccess().getOppositeAssignment_4_1());
8267 // InternalProblem.g:2581:2: ( rule__ReferenceDeclaration__OppositeAssignment_4_1 )
8268 // InternalProblem.g:2581:3: rule__ReferenceDeclaration__OppositeAssignment_4_1
8269 {
8270 pushFollow(FOLLOW_2);
8271 rule__ReferenceDeclaration__OppositeAssignment_4_1();
8272
8273 state._fsp--;
8274
8275
8276 }
8277
8278 after(grammarAccess.getReferenceDeclarationAccess().getOppositeAssignment_4_1());
8279
8280 }
8281
8282
8283 }
8284
8285 }
8286 catch (RecognitionException re) {
8287 reportError(re);
8288 recover(input,re);
8289 }
8290 finally {
8291
8292 restoreStackSize(stackSize);
8293
8294 }
8295 return ;
8296 }
8297 // $ANTLR end "rule__ReferenceDeclaration__Group_4__1__Impl"
8298
8299
8300 // $ANTLR start "rule__PredicateDefinition__Group__0"
8301 // InternalProblem.g:2590:1: rule__PredicateDefinition__Group__0 : rule__PredicateDefinition__Group__0__Impl rule__PredicateDefinition__Group__1 ;
8302 public final void rule__PredicateDefinition__Group__0() throws RecognitionException {
8303
8304 int stackSize = keepStackSize();
8305
8306 try {
8307 // InternalProblem.g:2594:1: ( rule__PredicateDefinition__Group__0__Impl rule__PredicateDefinition__Group__1 )
8308 // InternalProblem.g:2595:2: rule__PredicateDefinition__Group__0__Impl rule__PredicateDefinition__Group__1
8309 {
8310 pushFollow(FOLLOW_5);
8311 rule__PredicateDefinition__Group__0__Impl();
8312
8313 state._fsp--;
8314
8315 pushFollow(FOLLOW_2);
8316 rule__PredicateDefinition__Group__1();
8317
8318 state._fsp--;
8319
8320
8321 }
8322
8323 }
8324 catch (RecognitionException re) {
8325 reportError(re);
8326 recover(input,re);
8327 }
8328 finally {
8329
8330 restoreStackSize(stackSize);
8331
8332 }
8333 return ;
8334 }
8335 // $ANTLR end "rule__PredicateDefinition__Group__0"
8336
8337
8338 // $ANTLR start "rule__PredicateDefinition__Group__0__Impl"
8339 // InternalProblem.g:2602:1: rule__PredicateDefinition__Group__0__Impl : ( ( rule__PredicateDefinition__Alternatives_0 ) ) ;
8340 public final void rule__PredicateDefinition__Group__0__Impl() throws RecognitionException {
8341
8342 int stackSize = keepStackSize();
8343
8344 try {
8345 // InternalProblem.g:2606:1: ( ( ( rule__PredicateDefinition__Alternatives_0 ) ) )
8346 // InternalProblem.g:2607:1: ( ( rule__PredicateDefinition__Alternatives_0 ) )
8347 {
8348 // InternalProblem.g:2607:1: ( ( rule__PredicateDefinition__Alternatives_0 ) )
8349 // InternalProblem.g:2608:2: ( rule__PredicateDefinition__Alternatives_0 )
8350 {
8351 before(grammarAccess.getPredicateDefinitionAccess().getAlternatives_0());
8352 // InternalProblem.g:2609:2: ( rule__PredicateDefinition__Alternatives_0 )
8353 // InternalProblem.g:2609:3: rule__PredicateDefinition__Alternatives_0
8354 {
8355 pushFollow(FOLLOW_2);
8356 rule__PredicateDefinition__Alternatives_0();
8357
8358 state._fsp--;
8359
8360
8361 }
8362
8363 after(grammarAccess.getPredicateDefinitionAccess().getAlternatives_0());
8364
8365 }
8366
8367
8368 }
8369
8370 }
8371 catch (RecognitionException re) {
8372 reportError(re);
8373 recover(input,re);
8374 }
8375 finally {
8376
8377 restoreStackSize(stackSize);
8378
8379 }
8380 return ;
8381 }
8382 // $ANTLR end "rule__PredicateDefinition__Group__0__Impl"
8383
8384
8385 // $ANTLR start "rule__PredicateDefinition__Group__1"
8386 // InternalProblem.g:2617:1: rule__PredicateDefinition__Group__1 : rule__PredicateDefinition__Group__1__Impl rule__PredicateDefinition__Group__2 ;
8387 public final void rule__PredicateDefinition__Group__1() throws RecognitionException {
8388
8389 int stackSize = keepStackSize();
8390
8391 try {
8392 // InternalProblem.g:2621:1: ( rule__PredicateDefinition__Group__1__Impl rule__PredicateDefinition__Group__2 )
8393 // InternalProblem.g:2622:2: rule__PredicateDefinition__Group__1__Impl rule__PredicateDefinition__Group__2
8394 {
8395 pushFollow(FOLLOW_22);
8396 rule__PredicateDefinition__Group__1__Impl();
8397
8398 state._fsp--;
8399
8400 pushFollow(FOLLOW_2);
8401 rule__PredicateDefinition__Group__2();
8402
8403 state._fsp--;
8404
8405
8406 }
8407
8408 }
8409 catch (RecognitionException re) {
8410 reportError(re);
8411 recover(input,re);
8412 }
8413 finally {
8414
8415 restoreStackSize(stackSize);
8416
8417 }
8418 return ;
8419 }
8420 // $ANTLR end "rule__PredicateDefinition__Group__1"
8421
8422
8423 // $ANTLR start "rule__PredicateDefinition__Group__1__Impl"
8424 // InternalProblem.g:2629:1: rule__PredicateDefinition__Group__1__Impl : ( ( rule__PredicateDefinition__NameAssignment_1 ) ) ;
8425 public final void rule__PredicateDefinition__Group__1__Impl() throws RecognitionException {
8426
8427 int stackSize = keepStackSize();
8428
8429 try {
8430 // InternalProblem.g:2633:1: ( ( ( rule__PredicateDefinition__NameAssignment_1 ) ) )
8431 // InternalProblem.g:2634:1: ( ( rule__PredicateDefinition__NameAssignment_1 ) )
8432 {
8433 // InternalProblem.g:2634:1: ( ( rule__PredicateDefinition__NameAssignment_1 ) )
8434 // InternalProblem.g:2635:2: ( rule__PredicateDefinition__NameAssignment_1 )
8435 {
8436 before(grammarAccess.getPredicateDefinitionAccess().getNameAssignment_1());
8437 // InternalProblem.g:2636:2: ( rule__PredicateDefinition__NameAssignment_1 )
8438 // InternalProblem.g:2636:3: rule__PredicateDefinition__NameAssignment_1
8439 {
8440 pushFollow(FOLLOW_2);
8441 rule__PredicateDefinition__NameAssignment_1();
8442
8443 state._fsp--;
8444
8445
8446 }
8447
8448 after(grammarAccess.getPredicateDefinitionAccess().getNameAssignment_1());
8449
8450 }
8451
8452
8453 }
8454
8455 }
8456 catch (RecognitionException re) {
8457 reportError(re);
8458 recover(input,re);
8459 }
8460 finally {
8461
8462 restoreStackSize(stackSize);
8463
8464 }
8465 return ;
8466 }
8467 // $ANTLR end "rule__PredicateDefinition__Group__1__Impl"
8468
8469
8470 // $ANTLR start "rule__PredicateDefinition__Group__2"
8471 // InternalProblem.g:2644:1: rule__PredicateDefinition__Group__2 : rule__PredicateDefinition__Group__2__Impl rule__PredicateDefinition__Group__3 ;
8472 public final void rule__PredicateDefinition__Group__2() throws RecognitionException {
8473
8474 int stackSize = keepStackSize();
8475
8476 try {
8477 // InternalProblem.g:2648:1: ( rule__PredicateDefinition__Group__2__Impl rule__PredicateDefinition__Group__3 )
8478 // InternalProblem.g:2649:2: rule__PredicateDefinition__Group__2__Impl rule__PredicateDefinition__Group__3
8479 {
8480 pushFollow(FOLLOW_23);
8481 rule__PredicateDefinition__Group__2__Impl();
8482
8483 state._fsp--;
8484
8485 pushFollow(FOLLOW_2);
8486 rule__PredicateDefinition__Group__3();
8487
8488 state._fsp--;
8489
8490
8491 }
8492
8493 }
8494 catch (RecognitionException re) {
8495 reportError(re);
8496 recover(input,re);
8497 }
8498 finally {
8499
8500 restoreStackSize(stackSize);
8501
8502 }
8503 return ;
8504 }
8505 // $ANTLR end "rule__PredicateDefinition__Group__2"
8506
8507
8508 // $ANTLR start "rule__PredicateDefinition__Group__2__Impl"
8509 // InternalProblem.g:2656:1: rule__PredicateDefinition__Group__2__Impl : ( '(' ) ;
8510 public final void rule__PredicateDefinition__Group__2__Impl() throws RecognitionException {
8511
8512 int stackSize = keepStackSize();
8513
8514 try {
8515 // InternalProblem.g:2660:1: ( ( '(' ) )
8516 // InternalProblem.g:2661:1: ( '(' )
8517 {
8518 // InternalProblem.g:2661:1: ( '(' )
8519 // InternalProblem.g:2662:2: '('
8520 {
8521 before(grammarAccess.getPredicateDefinitionAccess().getLeftParenthesisKeyword_2());
8522 match(input,34,FOLLOW_2);
8523 after(grammarAccess.getPredicateDefinitionAccess().getLeftParenthesisKeyword_2());
8524
8525 }
8526
8527
8528 }
8529
8530 }
8531 catch (RecognitionException re) {
8532 reportError(re);
8533 recover(input,re);
8534 }
8535 finally {
8536
8537 restoreStackSize(stackSize);
8538
8539 }
8540 return ;
8541 }
8542 // $ANTLR end "rule__PredicateDefinition__Group__2__Impl"
8543
8544
8545 // $ANTLR start "rule__PredicateDefinition__Group__3"
8546 // InternalProblem.g:2671:1: rule__PredicateDefinition__Group__3 : rule__PredicateDefinition__Group__3__Impl rule__PredicateDefinition__Group__4 ;
8547 public final void rule__PredicateDefinition__Group__3() throws RecognitionException {
8548
8549 int stackSize = keepStackSize();
8550
8551 try {
8552 // InternalProblem.g:2675:1: ( rule__PredicateDefinition__Group__3__Impl rule__PredicateDefinition__Group__4 )
8553 // InternalProblem.g:2676:2: rule__PredicateDefinition__Group__3__Impl rule__PredicateDefinition__Group__4
8554 {
8555 pushFollow(FOLLOW_23);
8556 rule__PredicateDefinition__Group__3__Impl();
8557
8558 state._fsp--;
8559
8560 pushFollow(FOLLOW_2);
8561 rule__PredicateDefinition__Group__4();
8562
8563 state._fsp--;
8564
8565
8566 }
8567
8568 }
8569 catch (RecognitionException re) {
8570 reportError(re);
8571 recover(input,re);
8572 }
8573 finally {
8574
8575 restoreStackSize(stackSize);
8576
8577 }
8578 return ;
8579 }
8580 // $ANTLR end "rule__PredicateDefinition__Group__3"
8581
8582
8583 // $ANTLR start "rule__PredicateDefinition__Group__3__Impl"
8584 // InternalProblem.g:2683:1: rule__PredicateDefinition__Group__3__Impl : ( ( rule__PredicateDefinition__Group_3__0 )? ) ;
8585 public final void rule__PredicateDefinition__Group__3__Impl() throws RecognitionException {
8586
8587 int stackSize = keepStackSize();
8588
8589 try {
8590 // InternalProblem.g:2687:1: ( ( ( rule__PredicateDefinition__Group_3__0 )? ) )
8591 // InternalProblem.g:2688:1: ( ( rule__PredicateDefinition__Group_3__0 )? )
8592 {
8593 // InternalProblem.g:2688:1: ( ( rule__PredicateDefinition__Group_3__0 )? )
8594 // InternalProblem.g:2689:2: ( rule__PredicateDefinition__Group_3__0 )?
8595 {
8596 before(grammarAccess.getPredicateDefinitionAccess().getGroup_3());
8597 // InternalProblem.g:2690:2: ( rule__PredicateDefinition__Group_3__0 )?
8598 int alt35=2;
8599 int LA35_0 = input.LA(1);
8600
8601 if ( ((LA35_0>=RULE_QUOTED_ID && LA35_0<=RULE_ID)||(LA35_0>=20 && LA35_0<=21)) ) {
8602 alt35=1;
8603 }
8604 switch (alt35) {
8605 case 1 :
8606 // InternalProblem.g:2690:3: rule__PredicateDefinition__Group_3__0
8607 {
8608 pushFollow(FOLLOW_2);
8609 rule__PredicateDefinition__Group_3__0();
8610
8611 state._fsp--;
8612
8613
8614 }
8615 break;
8616
8617 }
8618
8619 after(grammarAccess.getPredicateDefinitionAccess().getGroup_3());
8620
8621 }
8622
8623
8624 }
8625
8626 }
8627 catch (RecognitionException re) {
8628 reportError(re);
8629 recover(input,re);
8630 }
8631 finally {
8632
8633 restoreStackSize(stackSize);
8634
8635 }
8636 return ;
8637 }
8638 // $ANTLR end "rule__PredicateDefinition__Group__3__Impl"
8639
8640
8641 // $ANTLR start "rule__PredicateDefinition__Group__4"
8642 // InternalProblem.g:2698:1: rule__PredicateDefinition__Group__4 : rule__PredicateDefinition__Group__4__Impl rule__PredicateDefinition__Group__5 ;
8643 public final void rule__PredicateDefinition__Group__4() throws RecognitionException {
8644
8645 int stackSize = keepStackSize();
8646
8647 try {
8648 // InternalProblem.g:2702:1: ( rule__PredicateDefinition__Group__4__Impl rule__PredicateDefinition__Group__5 )
8649 // InternalProblem.g:2703:2: rule__PredicateDefinition__Group__4__Impl rule__PredicateDefinition__Group__5
8650 {
8651 pushFollow(FOLLOW_24);
8652 rule__PredicateDefinition__Group__4__Impl();
8653
8654 state._fsp--;
8655
8656 pushFollow(FOLLOW_2);
8657 rule__PredicateDefinition__Group__5();
8658
8659 state._fsp--;
8660
8661
8662 }
8663
8664 }
8665 catch (RecognitionException re) {
8666 reportError(re);
8667 recover(input,re);
8668 }
8669 finally {
8670
8671 restoreStackSize(stackSize);
8672
8673 }
8674 return ;
8675 }
8676 // $ANTLR end "rule__PredicateDefinition__Group__4"
8677
8678
8679 // $ANTLR start "rule__PredicateDefinition__Group__4__Impl"
8680 // InternalProblem.g:2710:1: rule__PredicateDefinition__Group__4__Impl : ( ')' ) ;
8681 public final void rule__PredicateDefinition__Group__4__Impl() throws RecognitionException {
8682
8683 int stackSize = keepStackSize();
8684
8685 try {
8686 // InternalProblem.g:2714:1: ( ( ')' ) )
8687 // InternalProblem.g:2715:1: ( ')' )
8688 {
8689 // InternalProblem.g:2715:1: ( ')' )
8690 // InternalProblem.g:2716:2: ')'
8691 {
8692 before(grammarAccess.getPredicateDefinitionAccess().getRightParenthesisKeyword_4());
8693 match(input,35,FOLLOW_2);
8694 after(grammarAccess.getPredicateDefinitionAccess().getRightParenthesisKeyword_4());
8695
8696 }
8697
8698
8699 }
8700
8701 }
8702 catch (RecognitionException re) {
8703 reportError(re);
8704 recover(input,re);
8705 }
8706 finally {
8707
8708 restoreStackSize(stackSize);
8709
8710 }
8711 return ;
8712 }
8713 // $ANTLR end "rule__PredicateDefinition__Group__4__Impl"
8714
8715
8716 // $ANTLR start "rule__PredicateDefinition__Group__5"
8717 // InternalProblem.g:2725:1: rule__PredicateDefinition__Group__5 : rule__PredicateDefinition__Group__5__Impl rule__PredicateDefinition__Group__6 ;
8718 public final void rule__PredicateDefinition__Group__5() throws RecognitionException {
8719
8720 int stackSize = keepStackSize();
8721
8722 try {
8723 // InternalProblem.g:2729:1: ( rule__PredicateDefinition__Group__5__Impl rule__PredicateDefinition__Group__6 )
8724 // InternalProblem.g:2730:2: rule__PredicateDefinition__Group__5__Impl rule__PredicateDefinition__Group__6
8725 {
8726 pushFollow(FOLLOW_24);
8727 rule__PredicateDefinition__Group__5__Impl();
8728
8729 state._fsp--;
8730
8731 pushFollow(FOLLOW_2);
8732 rule__PredicateDefinition__Group__6();
8733
8734 state._fsp--;
8735
8736
8737 }
8738
8739 }
8740 catch (RecognitionException re) {
8741 reportError(re);
8742 recover(input,re);
8743 }
8744 finally {
8745
8746 restoreStackSize(stackSize);
8747
8748 }
8749 return ;
8750 }
8751 // $ANTLR end "rule__PredicateDefinition__Group__5"
8752
8753
8754 // $ANTLR start "rule__PredicateDefinition__Group__5__Impl"
8755 // InternalProblem.g:2737:1: rule__PredicateDefinition__Group__5__Impl : ( ( rule__PredicateDefinition__Group_5__0 )? ) ;
8756 public final void rule__PredicateDefinition__Group__5__Impl() throws RecognitionException {
8757
8758 int stackSize = keepStackSize();
8759
8760 try {
8761 // InternalProblem.g:2741:1: ( ( ( rule__PredicateDefinition__Group_5__0 )? ) )
8762 // InternalProblem.g:2742:1: ( ( rule__PredicateDefinition__Group_5__0 )? )
8763 {
8764 // InternalProblem.g:2742:1: ( ( rule__PredicateDefinition__Group_5__0 )? )
8765 // InternalProblem.g:2743:2: ( rule__PredicateDefinition__Group_5__0 )?
8766 {
8767 before(grammarAccess.getPredicateDefinitionAccess().getGroup_5());
8768 // InternalProblem.g:2744:2: ( rule__PredicateDefinition__Group_5__0 )?
8769 int alt36=2;
8770 int LA36_0 = input.LA(1);
8771
8772 if ( (LA36_0==36) ) {
8773 alt36=1;
8774 }
8775 switch (alt36) {
8776 case 1 :
8777 // InternalProblem.g:2744:3: rule__PredicateDefinition__Group_5__0
8778 {
8779 pushFollow(FOLLOW_2);
8780 rule__PredicateDefinition__Group_5__0();
8781
8782 state._fsp--;
8783
8784
8785 }
8786 break;
8787
8788 }
8789
8790 after(grammarAccess.getPredicateDefinitionAccess().getGroup_5());
8791
8792 }
8793
8794
8795 }
8796
8797 }
8798 catch (RecognitionException re) {
8799 reportError(re);
8800 recover(input,re);
8801 }
8802 finally {
8803
8804 restoreStackSize(stackSize);
8805
8806 }
8807 return ;
8808 }
8809 // $ANTLR end "rule__PredicateDefinition__Group__5__Impl"
8810
8811
8812 // $ANTLR start "rule__PredicateDefinition__Group__6"
8813 // InternalProblem.g:2752:1: rule__PredicateDefinition__Group__6 : rule__PredicateDefinition__Group__6__Impl ;
8814 public final void rule__PredicateDefinition__Group__6() throws RecognitionException {
8815
8816 int stackSize = keepStackSize();
8817
8818 try {
8819 // InternalProblem.g:2756:1: ( rule__PredicateDefinition__Group__6__Impl )
8820 // InternalProblem.g:2757:2: rule__PredicateDefinition__Group__6__Impl
8821 {
8822 pushFollow(FOLLOW_2);
8823 rule__PredicateDefinition__Group__6__Impl();
8824
8825 state._fsp--;
8826
8827
8828 }
8829
8830 }
8831 catch (RecognitionException re) {
8832 reportError(re);
8833 recover(input,re);
8834 }
8835 finally {
8836
8837 restoreStackSize(stackSize);
8838
8839 }
8840 return ;
8841 }
8842 // $ANTLR end "rule__PredicateDefinition__Group__6"
8843
8844
8845 // $ANTLR start "rule__PredicateDefinition__Group__6__Impl"
8846 // InternalProblem.g:2763:1: rule__PredicateDefinition__Group__6__Impl : ( '.' ) ;
8847 public final void rule__PredicateDefinition__Group__6__Impl() throws RecognitionException {
8848
8849 int stackSize = keepStackSize();
8850
8851 try {
8852 // InternalProblem.g:2767:1: ( ( '.' ) )
8853 // InternalProblem.g:2768:1: ( '.' )
8854 {
8855 // InternalProblem.g:2768:1: ( '.' )
8856 // InternalProblem.g:2769:2: '.'
8857 {
8858 before(grammarAccess.getPredicateDefinitionAccess().getFullStopKeyword_6());
8859 match(input,13,FOLLOW_2);
8860 after(grammarAccess.getPredicateDefinitionAccess().getFullStopKeyword_6());
8861
8862 }
8863
8864
8865 }
8866
8867 }
8868 catch (RecognitionException re) {
8869 reportError(re);
8870 recover(input,re);
8871 }
8872 finally {
8873
8874 restoreStackSize(stackSize);
8875
8876 }
8877 return ;
8878 }
8879 // $ANTLR end "rule__PredicateDefinition__Group__6__Impl"
8880
8881
8882 // $ANTLR start "rule__PredicateDefinition__Group_0_0__0"
8883 // InternalProblem.g:2779:1: rule__PredicateDefinition__Group_0_0__0 : rule__PredicateDefinition__Group_0_0__0__Impl rule__PredicateDefinition__Group_0_0__1 ;
8884 public final void rule__PredicateDefinition__Group_0_0__0() throws RecognitionException {
8885
8886 int stackSize = keepStackSize();
8887
8888 try {
8889 // InternalProblem.g:2783:1: ( rule__PredicateDefinition__Group_0_0__0__Impl rule__PredicateDefinition__Group_0_0__1 )
8890 // InternalProblem.g:2784:2: rule__PredicateDefinition__Group_0_0__0__Impl rule__PredicateDefinition__Group_0_0__1
8891 {
8892 pushFollow(FOLLOW_25);
8893 rule__PredicateDefinition__Group_0_0__0__Impl();
8894
8895 state._fsp--;
8896
8897 pushFollow(FOLLOW_2);
8898 rule__PredicateDefinition__Group_0_0__1();
8899
8900 state._fsp--;
8901
8902
8903 }
8904
8905 }
8906 catch (RecognitionException re) {
8907 reportError(re);
8908 recover(input,re);
8909 }
8910 finally {
8911
8912 restoreStackSize(stackSize);
8913
8914 }
8915 return ;
8916 }
8917 // $ANTLR end "rule__PredicateDefinition__Group_0_0__0"
8918
8919
8920 // $ANTLR start "rule__PredicateDefinition__Group_0_0__0__Impl"
8921 // InternalProblem.g:2791:1: rule__PredicateDefinition__Group_0_0__0__Impl : ( ( rule__PredicateDefinition__ErrorAssignment_0_0_0 ) ) ;
8922 public final void rule__PredicateDefinition__Group_0_0__0__Impl() throws RecognitionException {
8923
8924 int stackSize = keepStackSize();
8925
8926 try {
8927 // InternalProblem.g:2795:1: ( ( ( rule__PredicateDefinition__ErrorAssignment_0_0_0 ) ) )
8928 // InternalProblem.g:2796:1: ( ( rule__PredicateDefinition__ErrorAssignment_0_0_0 ) )
8929 {
8930 // InternalProblem.g:2796:1: ( ( rule__PredicateDefinition__ErrorAssignment_0_0_0 ) )
8931 // InternalProblem.g:2797:2: ( rule__PredicateDefinition__ErrorAssignment_0_0_0 )
8932 {
8933 before(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_0_0());
8934 // InternalProblem.g:2798:2: ( rule__PredicateDefinition__ErrorAssignment_0_0_0 )
8935 // InternalProblem.g:2798:3: rule__PredicateDefinition__ErrorAssignment_0_0_0
8936 {
8937 pushFollow(FOLLOW_2);
8938 rule__PredicateDefinition__ErrorAssignment_0_0_0();
8939
8940 state._fsp--;
8941
8942
8943 }
8944
8945 after(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_0_0());
8946
8947 }
8948
8949
8950 }
8951
8952 }
8953 catch (RecognitionException re) {
8954 reportError(re);
8955 recover(input,re);
8956 }
8957 finally {
8958
8959 restoreStackSize(stackSize);
8960
8961 }
8962 return ;
8963 }
8964 // $ANTLR end "rule__PredicateDefinition__Group_0_0__0__Impl"
8965
8966
8967 // $ANTLR start "rule__PredicateDefinition__Group_0_0__1"
8968 // InternalProblem.g:2806:1: rule__PredicateDefinition__Group_0_0__1 : rule__PredicateDefinition__Group_0_0__1__Impl ;
8969 public final void rule__PredicateDefinition__Group_0_0__1() throws RecognitionException {
8970
8971 int stackSize = keepStackSize();
8972
8973 try {
8974 // InternalProblem.g:2810:1: ( rule__PredicateDefinition__Group_0_0__1__Impl )
8975 // InternalProblem.g:2811:2: rule__PredicateDefinition__Group_0_0__1__Impl
8976 {
8977 pushFollow(FOLLOW_2);
8978 rule__PredicateDefinition__Group_0_0__1__Impl();
8979
8980 state._fsp--;
8981
8982
8983 }
8984
8985 }
8986 catch (RecognitionException re) {
8987 reportError(re);
8988 recover(input,re);
8989 }
8990 finally {
8991
8992 restoreStackSize(stackSize);
8993
8994 }
8995 return ;
8996 }
8997 // $ANTLR end "rule__PredicateDefinition__Group_0_0__1"
8998
8999
9000 // $ANTLR start "rule__PredicateDefinition__Group_0_0__1__Impl"
9001 // InternalProblem.g:2817:1: rule__PredicateDefinition__Group_0_0__1__Impl : ( ( 'pred' )? ) ;
9002 public final void rule__PredicateDefinition__Group_0_0__1__Impl() throws RecognitionException {
9003
9004 int stackSize = keepStackSize();
9005
9006 try {
9007 // InternalProblem.g:2821:1: ( ( ( 'pred' )? ) )
9008 // InternalProblem.g:2822:1: ( ( 'pred' )? )
9009 {
9010 // InternalProblem.g:2822:1: ( ( 'pred' )? )
9011 // InternalProblem.g:2823:2: ( 'pred' )?
9012 {
9013 before(grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_0_1());
9014 // InternalProblem.g:2824:2: ( 'pred' )?
9015 int alt37=2;
9016 int LA37_0 = input.LA(1);
9017
9018 if ( (LA37_0==17) ) {
9019 alt37=1;
9020 }
9021 switch (alt37) {
9022 case 1 :
9023 // InternalProblem.g:2824:3: 'pred'
9024 {
9025 match(input,17,FOLLOW_2);
9026
9027 }
9028 break;
9029
9030 }
9031
9032 after(grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_0_1());
9033
9034 }
9035
9036
9037 }
9038
9039 }
9040 catch (RecognitionException re) {
9041 reportError(re);
9042 recover(input,re);
9043 }
9044 finally {
9045
9046 restoreStackSize(stackSize);
9047
9048 }
9049 return ;
9050 }
9051 // $ANTLR end "rule__PredicateDefinition__Group_0_0__1__Impl"
9052
9053
9054 // $ANTLR start "rule__PredicateDefinition__Group_3__0"
9055 // InternalProblem.g:2833:1: rule__PredicateDefinition__Group_3__0 : rule__PredicateDefinition__Group_3__0__Impl rule__PredicateDefinition__Group_3__1 ;
9056 public final void rule__PredicateDefinition__Group_3__0() throws RecognitionException {
9057
9058 int stackSize = keepStackSize();
9059
9060 try {
9061 // InternalProblem.g:2837:1: ( rule__PredicateDefinition__Group_3__0__Impl rule__PredicateDefinition__Group_3__1 )
9062 // InternalProblem.g:2838:2: rule__PredicateDefinition__Group_3__0__Impl rule__PredicateDefinition__Group_3__1
9063 {
9064 pushFollow(FOLLOW_9);
9065 rule__PredicateDefinition__Group_3__0__Impl();
9066
9067 state._fsp--;
9068
9069 pushFollow(FOLLOW_2);
9070 rule__PredicateDefinition__Group_3__1();
9071
9072 state._fsp--;
9073
9074
9075 }
9076
9077 }
9078 catch (RecognitionException re) {
9079 reportError(re);
9080 recover(input,re);
9081 }
9082 finally {
9083
9084 restoreStackSize(stackSize);
9085
9086 }
9087 return ;
9088 }
9089 // $ANTLR end "rule__PredicateDefinition__Group_3__0"
9090
9091
9092 // $ANTLR start "rule__PredicateDefinition__Group_3__0__Impl"
9093 // InternalProblem.g:2845:1: rule__PredicateDefinition__Group_3__0__Impl : ( ( rule__PredicateDefinition__ParametersAssignment_3_0 ) ) ;
9094 public final void rule__PredicateDefinition__Group_3__0__Impl() throws RecognitionException {
9095
9096 int stackSize = keepStackSize();
9097
9098 try {
9099 // InternalProblem.g:2849:1: ( ( ( rule__PredicateDefinition__ParametersAssignment_3_0 ) ) )
9100 // InternalProblem.g:2850:1: ( ( rule__PredicateDefinition__ParametersAssignment_3_0 ) )
9101 {
9102 // InternalProblem.g:2850:1: ( ( rule__PredicateDefinition__ParametersAssignment_3_0 ) )
9103 // InternalProblem.g:2851:2: ( rule__PredicateDefinition__ParametersAssignment_3_0 )
9104 {
9105 before(grammarAccess.getPredicateDefinitionAccess().getParametersAssignment_3_0());
9106 // InternalProblem.g:2852:2: ( rule__PredicateDefinition__ParametersAssignment_3_0 )
9107 // InternalProblem.g:2852:3: rule__PredicateDefinition__ParametersAssignment_3_0
9108 {
9109 pushFollow(FOLLOW_2);
9110 rule__PredicateDefinition__ParametersAssignment_3_0();
9111
9112 state._fsp--;
9113
9114
9115 }
9116
9117 after(grammarAccess.getPredicateDefinitionAccess().getParametersAssignment_3_0());
9118
9119 }
9120
9121
9122 }
9123
9124 }
9125 catch (RecognitionException re) {
9126 reportError(re);
9127 recover(input,re);
9128 }
9129 finally {
9130
9131 restoreStackSize(stackSize);
9132
9133 }
9134 return ;
9135 }
9136 // $ANTLR end "rule__PredicateDefinition__Group_3__0__Impl"
9137
9138
9139 // $ANTLR start "rule__PredicateDefinition__Group_3__1"
9140 // InternalProblem.g:2860:1: rule__PredicateDefinition__Group_3__1 : rule__PredicateDefinition__Group_3__1__Impl ;
9141 public final void rule__PredicateDefinition__Group_3__1() throws RecognitionException {
9142
9143 int stackSize = keepStackSize();
9144
9145 try {
9146 // InternalProblem.g:2864:1: ( rule__PredicateDefinition__Group_3__1__Impl )
9147 // InternalProblem.g:2865:2: rule__PredicateDefinition__Group_3__1__Impl
9148 {
9149 pushFollow(FOLLOW_2);
9150 rule__PredicateDefinition__Group_3__1__Impl();
9151
9152 state._fsp--;
9153
9154
9155 }
9156
9157 }
9158 catch (RecognitionException re) {
9159 reportError(re);
9160 recover(input,re);
9161 }
9162 finally {
9163
9164 restoreStackSize(stackSize);
9165
9166 }
9167 return ;
9168 }
9169 // $ANTLR end "rule__PredicateDefinition__Group_3__1"
9170
9171
9172 // $ANTLR start "rule__PredicateDefinition__Group_3__1__Impl"
9173 // InternalProblem.g:2871:1: rule__PredicateDefinition__Group_3__1__Impl : ( ( rule__PredicateDefinition__Group_3_1__0 )* ) ;
9174 public final void rule__PredicateDefinition__Group_3__1__Impl() throws RecognitionException {
9175
9176 int stackSize = keepStackSize();
9177
9178 try {
9179 // InternalProblem.g:2875:1: ( ( ( rule__PredicateDefinition__Group_3_1__0 )* ) )
9180 // InternalProblem.g:2876:1: ( ( rule__PredicateDefinition__Group_3_1__0 )* )
9181 {
9182 // InternalProblem.g:2876:1: ( ( rule__PredicateDefinition__Group_3_1__0 )* )
9183 // InternalProblem.g:2877:2: ( rule__PredicateDefinition__Group_3_1__0 )*
9184 {
9185 before(grammarAccess.getPredicateDefinitionAccess().getGroup_3_1());
9186 // InternalProblem.g:2878:2: ( rule__PredicateDefinition__Group_3_1__0 )*
9187 loop38:
9188 do {
9189 int alt38=2;
9190 int LA38_0 = input.LA(1);
9191
9192 if ( (LA38_0==14) ) {
9193 alt38=1;
9194 }
9195
9196
9197 switch (alt38) {
9198 case 1 :
9199 // InternalProblem.g:2878:3: rule__PredicateDefinition__Group_3_1__0
9200 {
9201 pushFollow(FOLLOW_10);
9202 rule__PredicateDefinition__Group_3_1__0();
9203
9204 state._fsp--;
9205
9206
9207 }
9208 break;
9209
9210 default :
9211 break loop38;
9212 }
9213 } while (true);
9214
9215 after(grammarAccess.getPredicateDefinitionAccess().getGroup_3_1());
9216
9217 }
9218
9219
9220 }
9221
9222 }
9223 catch (RecognitionException re) {
9224 reportError(re);
9225 recover(input,re);
9226 }
9227 finally {
9228
9229 restoreStackSize(stackSize);
9230
9231 }
9232 return ;
9233 }
9234 // $ANTLR end "rule__PredicateDefinition__Group_3__1__Impl"
9235
9236
9237 // $ANTLR start "rule__PredicateDefinition__Group_3_1__0"
9238 // InternalProblem.g:2887:1: rule__PredicateDefinition__Group_3_1__0 : rule__PredicateDefinition__Group_3_1__0__Impl rule__PredicateDefinition__Group_3_1__1 ;
9239 public final void rule__PredicateDefinition__Group_3_1__0() throws RecognitionException {
9240
9241 int stackSize = keepStackSize();
9242
9243 try {
9244 // InternalProblem.g:2891:1: ( rule__PredicateDefinition__Group_3_1__0__Impl rule__PredicateDefinition__Group_3_1__1 )
9245 // InternalProblem.g:2892:2: rule__PredicateDefinition__Group_3_1__0__Impl rule__PredicateDefinition__Group_3_1__1
9246 {
9247 pushFollow(FOLLOW_5);
9248 rule__PredicateDefinition__Group_3_1__0__Impl();
9249
9250 state._fsp--;
9251
9252 pushFollow(FOLLOW_2);
9253 rule__PredicateDefinition__Group_3_1__1();
9254
9255 state._fsp--;
9256
9257
9258 }
9259
9260 }
9261 catch (RecognitionException re) {
9262 reportError(re);
9263 recover(input,re);
9264 }
9265 finally {
9266
9267 restoreStackSize(stackSize);
9268
9269 }
9270 return ;
9271 }
9272 // $ANTLR end "rule__PredicateDefinition__Group_3_1__0"
9273
9274
9275 // $ANTLR start "rule__PredicateDefinition__Group_3_1__0__Impl"
9276 // InternalProblem.g:2899:1: rule__PredicateDefinition__Group_3_1__0__Impl : ( ',' ) ;
9277 public final void rule__PredicateDefinition__Group_3_1__0__Impl() throws RecognitionException {
9278
9279 int stackSize = keepStackSize();
9280
9281 try {
9282 // InternalProblem.g:2903:1: ( ( ',' ) )
9283 // InternalProblem.g:2904:1: ( ',' )
9284 {
9285 // InternalProblem.g:2904:1: ( ',' )
9286 // InternalProblem.g:2905:2: ','
9287 {
9288 before(grammarAccess.getPredicateDefinitionAccess().getCommaKeyword_3_1_0());
9289 match(input,14,FOLLOW_2);
9290 after(grammarAccess.getPredicateDefinitionAccess().getCommaKeyword_3_1_0());
9291
9292 }
9293
9294
9295 }
9296
9297 }
9298 catch (RecognitionException re) {
9299 reportError(re);
9300 recover(input,re);
9301 }
9302 finally {
9303
9304 restoreStackSize(stackSize);
9305
9306 }
9307 return ;
9308 }
9309 // $ANTLR end "rule__PredicateDefinition__Group_3_1__0__Impl"
9310
9311
9312 // $ANTLR start "rule__PredicateDefinition__Group_3_1__1"
9313 // InternalProblem.g:2914:1: rule__PredicateDefinition__Group_3_1__1 : rule__PredicateDefinition__Group_3_1__1__Impl ;
9314 public final void rule__PredicateDefinition__Group_3_1__1() throws RecognitionException {
9315
9316 int stackSize = keepStackSize();
9317
9318 try {
9319 // InternalProblem.g:2918:1: ( rule__PredicateDefinition__Group_3_1__1__Impl )
9320 // InternalProblem.g:2919:2: rule__PredicateDefinition__Group_3_1__1__Impl
9321 {
9322 pushFollow(FOLLOW_2);
9323 rule__PredicateDefinition__Group_3_1__1__Impl();
9324
9325 state._fsp--;
9326
9327
9328 }
9329
9330 }
9331 catch (RecognitionException re) {
9332 reportError(re);
9333 recover(input,re);
9334 }
9335 finally {
9336
9337 restoreStackSize(stackSize);
9338
9339 }
9340 return ;
9341 }
9342 // $ANTLR end "rule__PredicateDefinition__Group_3_1__1"
9343
9344
9345 // $ANTLR start "rule__PredicateDefinition__Group_3_1__1__Impl"
9346 // InternalProblem.g:2925:1: rule__PredicateDefinition__Group_3_1__1__Impl : ( ( rule__PredicateDefinition__ParametersAssignment_3_1_1 ) ) ;
9347 public final void rule__PredicateDefinition__Group_3_1__1__Impl() throws RecognitionException {
9348
9349 int stackSize = keepStackSize();
9350
9351 try {
9352 // InternalProblem.g:2929:1: ( ( ( rule__PredicateDefinition__ParametersAssignment_3_1_1 ) ) )
9353 // InternalProblem.g:2930:1: ( ( rule__PredicateDefinition__ParametersAssignment_3_1_1 ) )
9354 {
9355 // InternalProblem.g:2930:1: ( ( rule__PredicateDefinition__ParametersAssignment_3_1_1 ) )
9356 // InternalProblem.g:2931:2: ( rule__PredicateDefinition__ParametersAssignment_3_1_1 )
9357 {
9358 before(grammarAccess.getPredicateDefinitionAccess().getParametersAssignment_3_1_1());
9359 // InternalProblem.g:2932:2: ( rule__PredicateDefinition__ParametersAssignment_3_1_1 )
9360 // InternalProblem.g:2932:3: rule__PredicateDefinition__ParametersAssignment_3_1_1
9361 {
9362 pushFollow(FOLLOW_2);
9363 rule__PredicateDefinition__ParametersAssignment_3_1_1();
9364
9365 state._fsp--;
9366
9367
9368 }
9369
9370 after(grammarAccess.getPredicateDefinitionAccess().getParametersAssignment_3_1_1());
9371
9372 }
9373
9374
9375 }
9376
9377 }
9378 catch (RecognitionException re) {
9379 reportError(re);
9380 recover(input,re);
9381 }
9382 finally {
9383
9384 restoreStackSize(stackSize);
9385
9386 }
9387 return ;
9388 }
9389 // $ANTLR end "rule__PredicateDefinition__Group_3_1__1__Impl"
9390
9391
9392 // $ANTLR start "rule__PredicateDefinition__Group_5__0"
9393 // InternalProblem.g:2941:1: rule__PredicateDefinition__Group_5__0 : rule__PredicateDefinition__Group_5__0__Impl rule__PredicateDefinition__Group_5__1 ;
9394 public final void rule__PredicateDefinition__Group_5__0() throws RecognitionException {
9395
9396 int stackSize = keepStackSize();
9397
9398 try {
9399 // InternalProblem.g:2945:1: ( rule__PredicateDefinition__Group_5__0__Impl rule__PredicateDefinition__Group_5__1 )
9400 // InternalProblem.g:2946:2: rule__PredicateDefinition__Group_5__0__Impl rule__PredicateDefinition__Group_5__1
9401 {
9402 pushFollow(FOLLOW_26);
9403 rule__PredicateDefinition__Group_5__0__Impl();
9404
9405 state._fsp--;
9406
9407 pushFollow(FOLLOW_2);
9408 rule__PredicateDefinition__Group_5__1();
9409
9410 state._fsp--;
9411
9412
9413 }
9414
9415 }
9416 catch (RecognitionException re) {
9417 reportError(re);
9418 recover(input,re);
9419 }
9420 finally {
9421
9422 restoreStackSize(stackSize);
9423
9424 }
9425 return ;
9426 }
9427 // $ANTLR end "rule__PredicateDefinition__Group_5__0"
9428
9429
9430 // $ANTLR start "rule__PredicateDefinition__Group_5__0__Impl"
9431 // InternalProblem.g:2953:1: rule__PredicateDefinition__Group_5__0__Impl : ( ':-' ) ;
9432 public final void rule__PredicateDefinition__Group_5__0__Impl() throws RecognitionException {
9433
9434 int stackSize = keepStackSize();
9435
9436 try {
9437 // InternalProblem.g:2957:1: ( ( ':-' ) )
9438 // InternalProblem.g:2958:1: ( ':-' )
9439 {
9440 // InternalProblem.g:2958:1: ( ':-' )
9441 // InternalProblem.g:2959:2: ':-'
9442 {
9443 before(grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_5_0());
9444 match(input,36,FOLLOW_2);
9445 after(grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_5_0());
9446
9447 }
9448
9449
9450 }
9451
9452 }
9453 catch (RecognitionException re) {
9454 reportError(re);
9455 recover(input,re);
9456 }
9457 finally {
9458
9459 restoreStackSize(stackSize);
9460
9461 }
9462 return ;
9463 }
9464 // $ANTLR end "rule__PredicateDefinition__Group_5__0__Impl"
9465
9466
9467 // $ANTLR start "rule__PredicateDefinition__Group_5__1"
9468 // InternalProblem.g:2968:1: rule__PredicateDefinition__Group_5__1 : rule__PredicateDefinition__Group_5__1__Impl rule__PredicateDefinition__Group_5__2 ;
9469 public final void rule__PredicateDefinition__Group_5__1() throws RecognitionException {
9470
9471 int stackSize = keepStackSize();
9472
9473 try {
9474 // InternalProblem.g:2972:1: ( rule__PredicateDefinition__Group_5__1__Impl rule__PredicateDefinition__Group_5__2 )
9475 // InternalProblem.g:2973:2: rule__PredicateDefinition__Group_5__1__Impl rule__PredicateDefinition__Group_5__2
9476 {
9477 pushFollow(FOLLOW_13);
9478 rule__PredicateDefinition__Group_5__1__Impl();
9479
9480 state._fsp--;
9481
9482 pushFollow(FOLLOW_2);
9483 rule__PredicateDefinition__Group_5__2();
9484
9485 state._fsp--;
9486
9487
9488 }
9489
9490 }
9491 catch (RecognitionException re) {
9492 reportError(re);
9493 recover(input,re);
9494 }
9495 finally {
9496
9497 restoreStackSize(stackSize);
9498
9499 }
9500 return ;
9501 }
9502 // $ANTLR end "rule__PredicateDefinition__Group_5__1"
9503
9504
9505 // $ANTLR start "rule__PredicateDefinition__Group_5__1__Impl"
9506 // InternalProblem.g:2980:1: rule__PredicateDefinition__Group_5__1__Impl : ( ( rule__PredicateDefinition__BodiesAssignment_5_1 ) ) ;
9507 public final void rule__PredicateDefinition__Group_5__1__Impl() throws RecognitionException {
9508
9509 int stackSize = keepStackSize();
9510
9511 try {
9512 // InternalProblem.g:2984:1: ( ( ( rule__PredicateDefinition__BodiesAssignment_5_1 ) ) )
9513 // InternalProblem.g:2985:1: ( ( rule__PredicateDefinition__BodiesAssignment_5_1 ) )
9514 {
9515 // InternalProblem.g:2985:1: ( ( rule__PredicateDefinition__BodiesAssignment_5_1 ) )
9516 // InternalProblem.g:2986:2: ( rule__PredicateDefinition__BodiesAssignment_5_1 )
9517 {
9518 before(grammarAccess.getPredicateDefinitionAccess().getBodiesAssignment_5_1());
9519 // InternalProblem.g:2987:2: ( rule__PredicateDefinition__BodiesAssignment_5_1 )
9520 // InternalProblem.g:2987:3: rule__PredicateDefinition__BodiesAssignment_5_1
9521 {
9522 pushFollow(FOLLOW_2);
9523 rule__PredicateDefinition__BodiesAssignment_5_1();
9524
9525 state._fsp--;
9526
9527
9528 }
9529
9530 after(grammarAccess.getPredicateDefinitionAccess().getBodiesAssignment_5_1());
9531
9532 }
9533
9534
9535 }
9536
9537 }
9538 catch (RecognitionException re) {
9539 reportError(re);
9540 recover(input,re);
9541 }
9542 finally {
9543
9544 restoreStackSize(stackSize);
9545
9546 }
9547 return ;
9548 }
9549 // $ANTLR end "rule__PredicateDefinition__Group_5__1__Impl"
9550
9551
9552 // $ANTLR start "rule__PredicateDefinition__Group_5__2"
9553 // InternalProblem.g:2995:1: rule__PredicateDefinition__Group_5__2 : rule__PredicateDefinition__Group_5__2__Impl ;
9554 public final void rule__PredicateDefinition__Group_5__2() throws RecognitionException {
9555
9556 int stackSize = keepStackSize();
9557
9558 try {
9559 // InternalProblem.g:2999:1: ( rule__PredicateDefinition__Group_5__2__Impl )
9560 // InternalProblem.g:3000:2: rule__PredicateDefinition__Group_5__2__Impl
9561 {
9562 pushFollow(FOLLOW_2);
9563 rule__PredicateDefinition__Group_5__2__Impl();
9564
9565 state._fsp--;
9566
9567
9568 }
9569
9570 }
9571 catch (RecognitionException re) {
9572 reportError(re);
9573 recover(input,re);
9574 }
9575 finally {
9576
9577 restoreStackSize(stackSize);
9578
9579 }
9580 return ;
9581 }
9582 // $ANTLR end "rule__PredicateDefinition__Group_5__2"
9583
9584
9585 // $ANTLR start "rule__PredicateDefinition__Group_5__2__Impl"
9586 // InternalProblem.g:3006:1: rule__PredicateDefinition__Group_5__2__Impl : ( ( rule__PredicateDefinition__Group_5_2__0 )* ) ;
9587 public final void rule__PredicateDefinition__Group_5__2__Impl() throws RecognitionException {
9588
9589 int stackSize = keepStackSize();
9590
9591 try {
9592 // InternalProblem.g:3010:1: ( ( ( rule__PredicateDefinition__Group_5_2__0 )* ) )
9593 // InternalProblem.g:3011:1: ( ( rule__PredicateDefinition__Group_5_2__0 )* )
9594 {
9595 // InternalProblem.g:3011:1: ( ( rule__PredicateDefinition__Group_5_2__0 )* )
9596 // InternalProblem.g:3012:2: ( rule__PredicateDefinition__Group_5_2__0 )*
9597 {
9598 before(grammarAccess.getPredicateDefinitionAccess().getGroup_5_2());
9599 // InternalProblem.g:3013:2: ( rule__PredicateDefinition__Group_5_2__0 )*
9600 loop39:
9601 do {
9602 int alt39=2;
9603 int LA39_0 = input.LA(1);
9604
9605 if ( (LA39_0==15) ) {
9606 alt39=1;
9607 }
9608
9609
9610 switch (alt39) {
9611 case 1 :
9612 // InternalProblem.g:3013:3: rule__PredicateDefinition__Group_5_2__0
9613 {
9614 pushFollow(FOLLOW_27);
9615 rule__PredicateDefinition__Group_5_2__0();
9616
9617 state._fsp--;
9618
9619
9620 }
9621 break;
9622
9623 default :
9624 break loop39;
9625 }
9626 } while (true);
9627
9628 after(grammarAccess.getPredicateDefinitionAccess().getGroup_5_2());
9629
9630 }
9631
9632
9633 }
9634
9635 }
9636 catch (RecognitionException re) {
9637 reportError(re);
9638 recover(input,re);
9639 }
9640 finally {
9641
9642 restoreStackSize(stackSize);
9643
9644 }
9645 return ;
9646 }
9647 // $ANTLR end "rule__PredicateDefinition__Group_5__2__Impl"
9648
9649
9650 // $ANTLR start "rule__PredicateDefinition__Group_5_2__0"
9651 // InternalProblem.g:3022:1: rule__PredicateDefinition__Group_5_2__0 : rule__PredicateDefinition__Group_5_2__0__Impl rule__PredicateDefinition__Group_5_2__1 ;
9652 public final void rule__PredicateDefinition__Group_5_2__0() throws RecognitionException {
9653
9654 int stackSize = keepStackSize();
9655
9656 try {
9657 // InternalProblem.g:3026:1: ( rule__PredicateDefinition__Group_5_2__0__Impl rule__PredicateDefinition__Group_5_2__1 )
9658 // InternalProblem.g:3027:2: rule__PredicateDefinition__Group_5_2__0__Impl rule__PredicateDefinition__Group_5_2__1
9659 {
9660 pushFollow(FOLLOW_26);
9661 rule__PredicateDefinition__Group_5_2__0__Impl();
9662
9663 state._fsp--;
9664
9665 pushFollow(FOLLOW_2);
9666 rule__PredicateDefinition__Group_5_2__1();
9667
9668 state._fsp--;
9669
9670
9671 }
9672
9673 }
9674 catch (RecognitionException re) {
9675 reportError(re);
9676 recover(input,re);
9677 }
9678 finally {
9679
9680 restoreStackSize(stackSize);
9681
9682 }
9683 return ;
9684 }
9685 // $ANTLR end "rule__PredicateDefinition__Group_5_2__0"
9686
9687
9688 // $ANTLR start "rule__PredicateDefinition__Group_5_2__0__Impl"
9689 // InternalProblem.g:3034:1: rule__PredicateDefinition__Group_5_2__0__Impl : ( ';' ) ;
9690 public final void rule__PredicateDefinition__Group_5_2__0__Impl() throws RecognitionException {
9691
9692 int stackSize = keepStackSize();
9693
9694 try {
9695 // InternalProblem.g:3038:1: ( ( ';' ) )
9696 // InternalProblem.g:3039:1: ( ';' )
9697 {
9698 // InternalProblem.g:3039:1: ( ';' )
9699 // InternalProblem.g:3040:2: ';'
9700 {
9701 before(grammarAccess.getPredicateDefinitionAccess().getSemicolonKeyword_5_2_0());
9702 match(input,15,FOLLOW_2);
9703 after(grammarAccess.getPredicateDefinitionAccess().getSemicolonKeyword_5_2_0());
9704
9705 }
9706
9707
9708 }
9709
9710 }
9711 catch (RecognitionException re) {
9712 reportError(re);
9713 recover(input,re);
9714 }
9715 finally {
9716
9717 restoreStackSize(stackSize);
9718
9719 }
9720 return ;
9721 }
9722 // $ANTLR end "rule__PredicateDefinition__Group_5_2__0__Impl"
9723
9724
9725 // $ANTLR start "rule__PredicateDefinition__Group_5_2__1"
9726 // InternalProblem.g:3049:1: rule__PredicateDefinition__Group_5_2__1 : rule__PredicateDefinition__Group_5_2__1__Impl ;
9727 public final void rule__PredicateDefinition__Group_5_2__1() throws RecognitionException {
9728
9729 int stackSize = keepStackSize();
9730
9731 try {
9732 // InternalProblem.g:3053:1: ( rule__PredicateDefinition__Group_5_2__1__Impl )
9733 // InternalProblem.g:3054:2: rule__PredicateDefinition__Group_5_2__1__Impl
9734 {
9735 pushFollow(FOLLOW_2);
9736 rule__PredicateDefinition__Group_5_2__1__Impl();
9737
9738 state._fsp--;
9739
9740
9741 }
9742
9743 }
9744 catch (RecognitionException re) {
9745 reportError(re);
9746 recover(input,re);
9747 }
9748 finally {
9749
9750 restoreStackSize(stackSize);
9751
9752 }
9753 return ;
9754 }
9755 // $ANTLR end "rule__PredicateDefinition__Group_5_2__1"
9756
9757
9758 // $ANTLR start "rule__PredicateDefinition__Group_5_2__1__Impl"
9759 // InternalProblem.g:3060:1: rule__PredicateDefinition__Group_5_2__1__Impl : ( ( rule__PredicateDefinition__BodiesAssignment_5_2_1 ) ) ;
9760 public final void rule__PredicateDefinition__Group_5_2__1__Impl() throws RecognitionException {
9761
9762 int stackSize = keepStackSize();
9763
9764 try {
9765 // InternalProblem.g:3064:1: ( ( ( rule__PredicateDefinition__BodiesAssignment_5_2_1 ) ) )
9766 // InternalProblem.g:3065:1: ( ( rule__PredicateDefinition__BodiesAssignment_5_2_1 ) )
9767 {
9768 // InternalProblem.g:3065:1: ( ( rule__PredicateDefinition__BodiesAssignment_5_2_1 ) )
9769 // InternalProblem.g:3066:2: ( rule__PredicateDefinition__BodiesAssignment_5_2_1 )
9770 {
9771 before(grammarAccess.getPredicateDefinitionAccess().getBodiesAssignment_5_2_1());
9772 // InternalProblem.g:3067:2: ( rule__PredicateDefinition__BodiesAssignment_5_2_1 )
9773 // InternalProblem.g:3067:3: rule__PredicateDefinition__BodiesAssignment_5_2_1
9774 {
9775 pushFollow(FOLLOW_2);
9776 rule__PredicateDefinition__BodiesAssignment_5_2_1();
9777
9778 state._fsp--;
9779
9780
9781 }
9782
9783 after(grammarAccess.getPredicateDefinitionAccess().getBodiesAssignment_5_2_1());
9784
9785 }
9786
9787
9788 }
9789
9790 }
9791 catch (RecognitionException re) {
9792 reportError(re);
9793 recover(input,re);
9794 }
9795 finally {
9796
9797 restoreStackSize(stackSize);
9798
9799 }
9800 return ;
9801 }
9802 // $ANTLR end "rule__PredicateDefinition__Group_5_2__1__Impl"
9803
9804
9805 // $ANTLR start "rule__Parameter__Group__0"
9806 // InternalProblem.g:3076:1: rule__Parameter__Group__0 : rule__Parameter__Group__0__Impl rule__Parameter__Group__1 ;
9807 public final void rule__Parameter__Group__0() throws RecognitionException {
9808
9809 int stackSize = keepStackSize();
9810
9811 try {
9812 // InternalProblem.g:3080:1: ( rule__Parameter__Group__0__Impl rule__Parameter__Group__1 )
9813 // InternalProblem.g:3081:2: rule__Parameter__Group__0__Impl rule__Parameter__Group__1
9814 {
9815 pushFollow(FOLLOW_5);
9816 rule__Parameter__Group__0__Impl();
9817
9818 state._fsp--;
9819
9820 pushFollow(FOLLOW_2);
9821 rule__Parameter__Group__1();
9822
9823 state._fsp--;
9824
9825
9826 }
9827
9828 }
9829 catch (RecognitionException re) {
9830 reportError(re);
9831 recover(input,re);
9832 }
9833 finally {
9834
9835 restoreStackSize(stackSize);
9836
9837 }
9838 return ;
9839 }
9840 // $ANTLR end "rule__Parameter__Group__0"
9841
9842
9843 // $ANTLR start "rule__Parameter__Group__0__Impl"
9844 // InternalProblem.g:3088:1: rule__Parameter__Group__0__Impl : ( ( rule__Parameter__ParameterTypeAssignment_0 )? ) ;
9845 public final void rule__Parameter__Group__0__Impl() throws RecognitionException {
9846
9847 int stackSize = keepStackSize();
9848
9849 try {
9850 // InternalProblem.g:3092:1: ( ( ( rule__Parameter__ParameterTypeAssignment_0 )? ) )
9851 // InternalProblem.g:3093:1: ( ( rule__Parameter__ParameterTypeAssignment_0 )? )
9852 {
9853 // InternalProblem.g:3093:1: ( ( rule__Parameter__ParameterTypeAssignment_0 )? )
9854 // InternalProblem.g:3094:2: ( rule__Parameter__ParameterTypeAssignment_0 )?
9855 {
9856 before(grammarAccess.getParameterAccess().getParameterTypeAssignment_0());
9857 // InternalProblem.g:3095:2: ( rule__Parameter__ParameterTypeAssignment_0 )?
9858 int alt40=2;
9859 switch ( input.LA(1) ) {
9860 case RULE_QUOTED_ID:
9861 {
9862 alt40=1;
9863 }
9864 break;
9865 case RULE_ID:
9866 {
9867 int LA40_2 = input.LA(2);
9868
9869 if ( (LA40_2==RULE_ID||(LA40_2>=20 && LA40_2<=21)||LA40_2==40) ) {
9870 alt40=1;
9871 }
9872 }
9873 break;
9874 case 20:
9875 {
9876 int LA40_3 = input.LA(2);
9877
9878 if ( (LA40_3==RULE_ID||(LA40_3>=20 && LA40_3<=21)||LA40_3==40) ) {
9879 alt40=1;
9880 }
9881 }
9882 break;
9883 case 21:
9884 {
9885 int LA40_4 = input.LA(2);
9886
9887 if ( (LA40_4==RULE_ID||(LA40_4>=20 && LA40_4<=21)||LA40_4==40) ) {
9888 alt40=1;
9889 }
9890 }
9891 break;
9892 }
9893
9894 switch (alt40) {
9895 case 1 :
9896 // InternalProblem.g:3095:3: rule__Parameter__ParameterTypeAssignment_0
9897 {
9898 pushFollow(FOLLOW_2);
9899 rule__Parameter__ParameterTypeAssignment_0();
9900
9901 state._fsp--;
9902
9903
9904 }
9905 break;
9906
9907 }
9908
9909 after(grammarAccess.getParameterAccess().getParameterTypeAssignment_0());
9910
9911 }
9912
9913
9914 }
9915
9916 }
9917 catch (RecognitionException re) {
9918 reportError(re);
9919 recover(input,re);
9920 }
9921 finally {
9922
9923 restoreStackSize(stackSize);
9924
9925 }
9926 return ;
9927 }
9928 // $ANTLR end "rule__Parameter__Group__0__Impl"
9929
9930
9931 // $ANTLR start "rule__Parameter__Group__1"
9932 // InternalProblem.g:3103:1: rule__Parameter__Group__1 : rule__Parameter__Group__1__Impl ;
9933 public final void rule__Parameter__Group__1() throws RecognitionException {
9934
9935 int stackSize = keepStackSize();
9936
9937 try {
9938 // InternalProblem.g:3107:1: ( rule__Parameter__Group__1__Impl )
9939 // InternalProblem.g:3108:2: rule__Parameter__Group__1__Impl
9940 {
9941 pushFollow(FOLLOW_2);
9942 rule__Parameter__Group__1__Impl();
9943
9944 state._fsp--;
9945
9946
9947 }
9948
9949 }
9950 catch (RecognitionException re) {
9951 reportError(re);
9952 recover(input,re);
9953 }
9954 finally {
9955
9956 restoreStackSize(stackSize);
9957
9958 }
9959 return ;
9960 }
9961 // $ANTLR end "rule__Parameter__Group__1"
9962
9963
9964 // $ANTLR start "rule__Parameter__Group__1__Impl"
9965 // InternalProblem.g:3114:1: rule__Parameter__Group__1__Impl : ( ( rule__Parameter__NameAssignment_1 ) ) ;
9966 public final void rule__Parameter__Group__1__Impl() throws RecognitionException {
9967
9968 int stackSize = keepStackSize();
9969
9970 try {
9971 // InternalProblem.g:3118:1: ( ( ( rule__Parameter__NameAssignment_1 ) ) )
9972 // InternalProblem.g:3119:1: ( ( rule__Parameter__NameAssignment_1 ) )
9973 {
9974 // InternalProblem.g:3119:1: ( ( rule__Parameter__NameAssignment_1 ) )
9975 // InternalProblem.g:3120:2: ( rule__Parameter__NameAssignment_1 )
9976 {
9977 before(grammarAccess.getParameterAccess().getNameAssignment_1());
9978 // InternalProblem.g:3121:2: ( rule__Parameter__NameAssignment_1 )
9979 // InternalProblem.g:3121:3: rule__Parameter__NameAssignment_1
9980 {
9981 pushFollow(FOLLOW_2);
9982 rule__Parameter__NameAssignment_1();
9983
9984 state._fsp--;
9985
9986
9987 }
9988
9989 after(grammarAccess.getParameterAccess().getNameAssignment_1());
9990
9991 }
9992
9993
9994 }
9995
9996 }
9997 catch (RecognitionException re) {
9998 reportError(re);
9999 recover(input,re);
10000 }
10001 finally {
10002
10003 restoreStackSize(stackSize);
10004
10005 }
10006 return ;
10007 }
10008 // $ANTLR end "rule__Parameter__Group__1__Impl"
10009
10010
10011 // $ANTLR start "rule__Conjunction__Group__0"
10012 // InternalProblem.g:3130:1: rule__Conjunction__Group__0 : rule__Conjunction__Group__0__Impl rule__Conjunction__Group__1 ;
10013 public final void rule__Conjunction__Group__0() throws RecognitionException {
10014
10015 int stackSize = keepStackSize();
10016
10017 try {
10018 // InternalProblem.g:3134:1: ( rule__Conjunction__Group__0__Impl rule__Conjunction__Group__1 )
10019 // InternalProblem.g:3135:2: rule__Conjunction__Group__0__Impl rule__Conjunction__Group__1
10020 {
10021 pushFollow(FOLLOW_9);
10022 rule__Conjunction__Group__0__Impl();
10023
10024 state._fsp--;
10025
10026 pushFollow(FOLLOW_2);
10027 rule__Conjunction__Group__1();
10028
10029 state._fsp--;
10030
10031
10032 }
10033
10034 }
10035 catch (RecognitionException re) {
10036 reportError(re);
10037 recover(input,re);
10038 }
10039 finally {
10040
10041 restoreStackSize(stackSize);
10042
10043 }
10044 return ;
10045 }
10046 // $ANTLR end "rule__Conjunction__Group__0"
10047
10048
10049 // $ANTLR start "rule__Conjunction__Group__0__Impl"
10050 // InternalProblem.g:3142:1: rule__Conjunction__Group__0__Impl : ( ( rule__Conjunction__LiteralsAssignment_0 ) ) ;
10051 public final void rule__Conjunction__Group__0__Impl() throws RecognitionException {
10052
10053 int stackSize = keepStackSize();
10054
10055 try {
10056 // InternalProblem.g:3146:1: ( ( ( rule__Conjunction__LiteralsAssignment_0 ) ) )
10057 // InternalProblem.g:3147:1: ( ( rule__Conjunction__LiteralsAssignment_0 ) )
10058 {
10059 // InternalProblem.g:3147:1: ( ( rule__Conjunction__LiteralsAssignment_0 ) )
10060 // InternalProblem.g:3148:2: ( rule__Conjunction__LiteralsAssignment_0 )
10061 {
10062 before(grammarAccess.getConjunctionAccess().getLiteralsAssignment_0());
10063 // InternalProblem.g:3149:2: ( rule__Conjunction__LiteralsAssignment_0 )
10064 // InternalProblem.g:3149:3: rule__Conjunction__LiteralsAssignment_0
10065 {
10066 pushFollow(FOLLOW_2);
10067 rule__Conjunction__LiteralsAssignment_0();
10068
10069 state._fsp--;
10070
10071
10072 }
10073
10074 after(grammarAccess.getConjunctionAccess().getLiteralsAssignment_0());
10075
10076 }
10077
10078
10079 }
10080
10081 }
10082 catch (RecognitionException re) {
10083 reportError(re);
10084 recover(input,re);
10085 }
10086 finally {
10087
10088 restoreStackSize(stackSize);
10089
10090 }
10091 return ;
10092 }
10093 // $ANTLR end "rule__Conjunction__Group__0__Impl"
10094
10095
10096 // $ANTLR start "rule__Conjunction__Group__1"
10097 // InternalProblem.g:3157:1: rule__Conjunction__Group__1 : rule__Conjunction__Group__1__Impl ;
10098 public final void rule__Conjunction__Group__1() throws RecognitionException {
10099
10100 int stackSize = keepStackSize();
10101
10102 try {
10103 // InternalProblem.g:3161:1: ( rule__Conjunction__Group__1__Impl )
10104 // InternalProblem.g:3162:2: rule__Conjunction__Group__1__Impl
10105 {
10106 pushFollow(FOLLOW_2);
10107 rule__Conjunction__Group__1__Impl();
10108
10109 state._fsp--;
10110
10111
10112 }
10113
10114 }
10115 catch (RecognitionException re) {
10116 reportError(re);
10117 recover(input,re);
10118 }
10119 finally {
10120
10121 restoreStackSize(stackSize);
10122
10123 }
10124 return ;
10125 }
10126 // $ANTLR end "rule__Conjunction__Group__1"
10127
10128
10129 // $ANTLR start "rule__Conjunction__Group__1__Impl"
10130 // InternalProblem.g:3168:1: rule__Conjunction__Group__1__Impl : ( ( rule__Conjunction__Group_1__0 )* ) ;
10131 public final void rule__Conjunction__Group__1__Impl() throws RecognitionException {
10132
10133 int stackSize = keepStackSize();
10134
10135 try {
10136 // InternalProblem.g:3172:1: ( ( ( rule__Conjunction__Group_1__0 )* ) )
10137 // InternalProblem.g:3173:1: ( ( rule__Conjunction__Group_1__0 )* )
10138 {
10139 // InternalProblem.g:3173:1: ( ( rule__Conjunction__Group_1__0 )* )
10140 // InternalProblem.g:3174:2: ( rule__Conjunction__Group_1__0 )*
10141 {
10142 before(grammarAccess.getConjunctionAccess().getGroup_1());
10143 // InternalProblem.g:3175:2: ( rule__Conjunction__Group_1__0 )*
10144 loop41:
10145 do {
10146 int alt41=2;
10147 int LA41_0 = input.LA(1);
10148
10149 if ( (LA41_0==14) ) {
10150 alt41=1;
10151 }
10152
10153
10154 switch (alt41) {
10155 case 1 :
10156 // InternalProblem.g:3175:3: rule__Conjunction__Group_1__0
10157 {
10158 pushFollow(FOLLOW_10);
10159 rule__Conjunction__Group_1__0();
10160
10161 state._fsp--;
10162
10163
10164 }
10165 break;
10166
10167 default :
10168 break loop41;
10169 }
10170 } while (true);
10171
10172 after(grammarAccess.getConjunctionAccess().getGroup_1());
10173
10174 }
10175
10176
10177 }
10178
10179 }
10180 catch (RecognitionException re) {
10181 reportError(re);
10182 recover(input,re);
10183 }
10184 finally {
10185
10186 restoreStackSize(stackSize);
10187
10188 }
10189 return ;
10190 }
10191 // $ANTLR end "rule__Conjunction__Group__1__Impl"
10192
10193
10194 // $ANTLR start "rule__Conjunction__Group_1__0"
10195 // InternalProblem.g:3184:1: rule__Conjunction__Group_1__0 : rule__Conjunction__Group_1__0__Impl rule__Conjunction__Group_1__1 ;
10196 public final void rule__Conjunction__Group_1__0() throws RecognitionException {
10197
10198 int stackSize = keepStackSize();
10199
10200 try {
10201 // InternalProblem.g:3188:1: ( rule__Conjunction__Group_1__0__Impl rule__Conjunction__Group_1__1 )
10202 // InternalProblem.g:3189:2: rule__Conjunction__Group_1__0__Impl rule__Conjunction__Group_1__1
10203 {
10204 pushFollow(FOLLOW_26);
10205 rule__Conjunction__Group_1__0__Impl();
10206
10207 state._fsp--;
10208
10209 pushFollow(FOLLOW_2);
10210 rule__Conjunction__Group_1__1();
10211
10212 state._fsp--;
10213
10214
10215 }
10216
10217 }
10218 catch (RecognitionException re) {
10219 reportError(re);
10220 recover(input,re);
10221 }
10222 finally {
10223
10224 restoreStackSize(stackSize);
10225
10226 }
10227 return ;
10228 }
10229 // $ANTLR end "rule__Conjunction__Group_1__0"
10230
10231
10232 // $ANTLR start "rule__Conjunction__Group_1__0__Impl"
10233 // InternalProblem.g:3196:1: rule__Conjunction__Group_1__0__Impl : ( ',' ) ;
10234 public final void rule__Conjunction__Group_1__0__Impl() throws RecognitionException {
10235
10236 int stackSize = keepStackSize();
10237
10238 try {
10239 // InternalProblem.g:3200:1: ( ( ',' ) )
10240 // InternalProblem.g:3201:1: ( ',' )
10241 {
10242 // InternalProblem.g:3201:1: ( ',' )
10243 // InternalProblem.g:3202:2: ','
10244 {
10245 before(grammarAccess.getConjunctionAccess().getCommaKeyword_1_0());
10246 match(input,14,FOLLOW_2);
10247 after(grammarAccess.getConjunctionAccess().getCommaKeyword_1_0());
10248
10249 }
10250
10251
10252 }
10253
10254 }
10255 catch (RecognitionException re) {
10256 reportError(re);
10257 recover(input,re);
10258 }
10259 finally {
10260
10261 restoreStackSize(stackSize);
10262
10263 }
10264 return ;
10265 }
10266 // $ANTLR end "rule__Conjunction__Group_1__0__Impl"
10267
10268
10269 // $ANTLR start "rule__Conjunction__Group_1__1"
10270 // InternalProblem.g:3211:1: rule__Conjunction__Group_1__1 : rule__Conjunction__Group_1__1__Impl ;
10271 public final void rule__Conjunction__Group_1__1() throws RecognitionException {
10272
10273 int stackSize = keepStackSize();
10274
10275 try {
10276 // InternalProblem.g:3215:1: ( rule__Conjunction__Group_1__1__Impl )
10277 // InternalProblem.g:3216:2: rule__Conjunction__Group_1__1__Impl
10278 {
10279 pushFollow(FOLLOW_2);
10280 rule__Conjunction__Group_1__1__Impl();
10281
10282 state._fsp--;
10283
10284
10285 }
10286
10287 }
10288 catch (RecognitionException re) {
10289 reportError(re);
10290 recover(input,re);
10291 }
10292 finally {
10293
10294 restoreStackSize(stackSize);
10295
10296 }
10297 return ;
10298 }
10299 // $ANTLR end "rule__Conjunction__Group_1__1"
10300
10301
10302 // $ANTLR start "rule__Conjunction__Group_1__1__Impl"
10303 // InternalProblem.g:3222:1: rule__Conjunction__Group_1__1__Impl : ( ( rule__Conjunction__LiteralsAssignment_1_1 ) ) ;
10304 public final void rule__Conjunction__Group_1__1__Impl() throws RecognitionException {
10305
10306 int stackSize = keepStackSize();
10307
10308 try {
10309 // InternalProblem.g:3226:1: ( ( ( rule__Conjunction__LiteralsAssignment_1_1 ) ) )
10310 // InternalProblem.g:3227:1: ( ( rule__Conjunction__LiteralsAssignment_1_1 ) )
10311 {
10312 // InternalProblem.g:3227:1: ( ( rule__Conjunction__LiteralsAssignment_1_1 ) )
10313 // InternalProblem.g:3228:2: ( rule__Conjunction__LiteralsAssignment_1_1 )
10314 {
10315 before(grammarAccess.getConjunctionAccess().getLiteralsAssignment_1_1());
10316 // InternalProblem.g:3229:2: ( rule__Conjunction__LiteralsAssignment_1_1 )
10317 // InternalProblem.g:3229:3: rule__Conjunction__LiteralsAssignment_1_1
10318 {
10319 pushFollow(FOLLOW_2);
10320 rule__Conjunction__LiteralsAssignment_1_1();
10321
10322 state._fsp--;
10323
10324
10325 }
10326
10327 after(grammarAccess.getConjunctionAccess().getLiteralsAssignment_1_1());
10328
10329 }
10330
10331
10332 }
10333
10334 }
10335 catch (RecognitionException re) {
10336 reportError(re);
10337 recover(input,re);
10338 }
10339 finally {
10340
10341 restoreStackSize(stackSize);
10342
10343 }
10344 return ;
10345 }
10346 // $ANTLR end "rule__Conjunction__Group_1__1__Impl"
10347
10348
10349 // $ANTLR start "rule__NegativeLiteral__Group__0"
10350 // InternalProblem.g:3238:1: rule__NegativeLiteral__Group__0 : rule__NegativeLiteral__Group__0__Impl rule__NegativeLiteral__Group__1 ;
10351 public final void rule__NegativeLiteral__Group__0() throws RecognitionException {
10352
10353 int stackSize = keepStackSize();
10354
10355 try {
10356 // InternalProblem.g:3242:1: ( rule__NegativeLiteral__Group__0__Impl rule__NegativeLiteral__Group__1 )
10357 // InternalProblem.g:3243:2: rule__NegativeLiteral__Group__0__Impl rule__NegativeLiteral__Group__1
10358 {
10359 pushFollow(FOLLOW_5);
10360 rule__NegativeLiteral__Group__0__Impl();
10361
10362 state._fsp--;
10363
10364 pushFollow(FOLLOW_2);
10365 rule__NegativeLiteral__Group__1();
10366
10367 state._fsp--;
10368
10369
10370 }
10371
10372 }
10373 catch (RecognitionException re) {
10374 reportError(re);
10375 recover(input,re);
10376 }
10377 finally {
10378
10379 restoreStackSize(stackSize);
10380
10381 }
10382 return ;
10383 }
10384 // $ANTLR end "rule__NegativeLiteral__Group__0"
10385
10386
10387 // $ANTLR start "rule__NegativeLiteral__Group__0__Impl"
10388 // InternalProblem.g:3250:1: rule__NegativeLiteral__Group__0__Impl : ( '!' ) ;
10389 public final void rule__NegativeLiteral__Group__0__Impl() throws RecognitionException {
10390
10391 int stackSize = keepStackSize();
10392
10393 try {
10394 // InternalProblem.g:3254:1: ( ( '!' ) )
10395 // InternalProblem.g:3255:1: ( '!' )
10396 {
10397 // InternalProblem.g:3255:1: ( '!' )
10398 // InternalProblem.g:3256:2: '!'
10399 {
10400 before(grammarAccess.getNegativeLiteralAccess().getExclamationMarkKeyword_0());
10401 match(input,23,FOLLOW_2);
10402 after(grammarAccess.getNegativeLiteralAccess().getExclamationMarkKeyword_0());
10403
10404 }
10405
10406
10407 }
10408
10409 }
10410 catch (RecognitionException re) {
10411 reportError(re);
10412 recover(input,re);
10413 }
10414 finally {
10415
10416 restoreStackSize(stackSize);
10417
10418 }
10419 return ;
10420 }
10421 // $ANTLR end "rule__NegativeLiteral__Group__0__Impl"
10422
10423
10424 // $ANTLR start "rule__NegativeLiteral__Group__1"
10425 // InternalProblem.g:3265:1: rule__NegativeLiteral__Group__1 : rule__NegativeLiteral__Group__1__Impl ;
10426 public final void rule__NegativeLiteral__Group__1() throws RecognitionException {
10427
10428 int stackSize = keepStackSize();
10429
10430 try {
10431 // InternalProblem.g:3269:1: ( rule__NegativeLiteral__Group__1__Impl )
10432 // InternalProblem.g:3270:2: rule__NegativeLiteral__Group__1__Impl
10433 {
10434 pushFollow(FOLLOW_2);
10435 rule__NegativeLiteral__Group__1__Impl();
10436
10437 state._fsp--;
10438
10439
10440 }
10441
10442 }
10443 catch (RecognitionException re) {
10444 reportError(re);
10445 recover(input,re);
10446 }
10447 finally {
10448
10449 restoreStackSize(stackSize);
10450
10451 }
10452 return ;
10453 }
10454 // $ANTLR end "rule__NegativeLiteral__Group__1"
10455
10456
10457 // $ANTLR start "rule__NegativeLiteral__Group__1__Impl"
10458 // InternalProblem.g:3276:1: rule__NegativeLiteral__Group__1__Impl : ( ( rule__NegativeLiteral__AtomAssignment_1 ) ) ;
10459 public final void rule__NegativeLiteral__Group__1__Impl() throws RecognitionException {
10460
10461 int stackSize = keepStackSize();
10462
10463 try {
10464 // InternalProblem.g:3280:1: ( ( ( rule__NegativeLiteral__AtomAssignment_1 ) ) )
10465 // InternalProblem.g:3281:1: ( ( rule__NegativeLiteral__AtomAssignment_1 ) )
10466 {
10467 // InternalProblem.g:3281:1: ( ( rule__NegativeLiteral__AtomAssignment_1 ) )
10468 // InternalProblem.g:3282:2: ( rule__NegativeLiteral__AtomAssignment_1 )
10469 {
10470 before(grammarAccess.getNegativeLiteralAccess().getAtomAssignment_1());
10471 // InternalProblem.g:3283:2: ( rule__NegativeLiteral__AtomAssignment_1 )
10472 // InternalProblem.g:3283:3: rule__NegativeLiteral__AtomAssignment_1
10473 {
10474 pushFollow(FOLLOW_2);
10475 rule__NegativeLiteral__AtomAssignment_1();
10476
10477 state._fsp--;
10478
10479
10480 }
10481
10482 after(grammarAccess.getNegativeLiteralAccess().getAtomAssignment_1());
10483
10484 }
10485
10486
10487 }
10488
10489 }
10490 catch (RecognitionException re) {
10491 reportError(re);
10492 recover(input,re);
10493 }
10494 finally {
10495
10496 restoreStackSize(stackSize);
10497
10498 }
10499 return ;
10500 }
10501 // $ANTLR end "rule__NegativeLiteral__Group__1__Impl"
10502
10503
10504 // $ANTLR start "rule__Atom__Group__0"
10505 // InternalProblem.g:3292:1: rule__Atom__Group__0 : rule__Atom__Group__0__Impl rule__Atom__Group__1 ;
10506 public final void rule__Atom__Group__0() throws RecognitionException {
10507
10508 int stackSize = keepStackSize();
10509
10510 try {
10511 // InternalProblem.g:3296:1: ( rule__Atom__Group__0__Impl rule__Atom__Group__1 )
10512 // InternalProblem.g:3297:2: rule__Atom__Group__0__Impl rule__Atom__Group__1
10513 {
10514 pushFollow(FOLLOW_28);
10515 rule__Atom__Group__0__Impl();
10516
10517 state._fsp--;
10518
10519 pushFollow(FOLLOW_2);
10520 rule__Atom__Group__1();
10521
10522 state._fsp--;
10523
10524
10525 }
10526
10527 }
10528 catch (RecognitionException re) {
10529 reportError(re);
10530 recover(input,re);
10531 }
10532 finally {
10533
10534 restoreStackSize(stackSize);
10535
10536 }
10537 return ;
10538 }
10539 // $ANTLR end "rule__Atom__Group__0"
10540
10541
10542 // $ANTLR start "rule__Atom__Group__0__Impl"
10543 // InternalProblem.g:3304:1: rule__Atom__Group__0__Impl : ( ( rule__Atom__RelationAssignment_0 ) ) ;
10544 public final void rule__Atom__Group__0__Impl() throws RecognitionException {
10545
10546 int stackSize = keepStackSize();
10547
10548 try {
10549 // InternalProblem.g:3308:1: ( ( ( rule__Atom__RelationAssignment_0 ) ) )
10550 // InternalProblem.g:3309:1: ( ( rule__Atom__RelationAssignment_0 ) )
10551 {
10552 // InternalProblem.g:3309:1: ( ( rule__Atom__RelationAssignment_0 ) )
10553 // InternalProblem.g:3310:2: ( rule__Atom__RelationAssignment_0 )
10554 {
10555 before(grammarAccess.getAtomAccess().getRelationAssignment_0());
10556 // InternalProblem.g:3311:2: ( rule__Atom__RelationAssignment_0 )
10557 // InternalProblem.g:3311:3: rule__Atom__RelationAssignment_0
10558 {
10559 pushFollow(FOLLOW_2);
10560 rule__Atom__RelationAssignment_0();
10561
10562 state._fsp--;
10563
10564
10565 }
10566
10567 after(grammarAccess.getAtomAccess().getRelationAssignment_0());
10568
10569 }
10570
10571
10572 }
10573
10574 }
10575 catch (RecognitionException re) {
10576 reportError(re);
10577 recover(input,re);
10578 }
10579 finally {
10580
10581 restoreStackSize(stackSize);
10582
10583 }
10584 return ;
10585 }
10586 // $ANTLR end "rule__Atom__Group__0__Impl"
10587
10588
10589 // $ANTLR start "rule__Atom__Group__1"
10590 // InternalProblem.g:3319:1: rule__Atom__Group__1 : rule__Atom__Group__1__Impl rule__Atom__Group__2 ;
10591 public final void rule__Atom__Group__1() throws RecognitionException {
10592
10593 int stackSize = keepStackSize();
10594
10595 try {
10596 // InternalProblem.g:3323:1: ( rule__Atom__Group__1__Impl rule__Atom__Group__2 )
10597 // InternalProblem.g:3324:2: rule__Atom__Group__1__Impl rule__Atom__Group__2
10598 {
10599 pushFollow(FOLLOW_28);
10600 rule__Atom__Group__1__Impl();
10601
10602 state._fsp--;
10603
10604 pushFollow(FOLLOW_2);
10605 rule__Atom__Group__2();
10606
10607 state._fsp--;
10608
10609
10610 }
10611
10612 }
10613 catch (RecognitionException re) {
10614 reportError(re);
10615 recover(input,re);
10616 }
10617 finally {
10618
10619 restoreStackSize(stackSize);
10620
10621 }
10622 return ;
10623 }
10624 // $ANTLR end "rule__Atom__Group__1"
10625
10626
10627 // $ANTLR start "rule__Atom__Group__1__Impl"
10628 // InternalProblem.g:3331:1: rule__Atom__Group__1__Impl : ( ( rule__Atom__TransitiveClosureAssignment_1 )? ) ;
10629 public final void rule__Atom__Group__1__Impl() throws RecognitionException {
10630
10631 int stackSize = keepStackSize();
10632
10633 try {
10634 // InternalProblem.g:3335:1: ( ( ( rule__Atom__TransitiveClosureAssignment_1 )? ) )
10635 // InternalProblem.g:3336:1: ( ( rule__Atom__TransitiveClosureAssignment_1 )? )
10636 {
10637 // InternalProblem.g:3336:1: ( ( rule__Atom__TransitiveClosureAssignment_1 )? )
10638 // InternalProblem.g:3337:2: ( rule__Atom__TransitiveClosureAssignment_1 )?
10639 {
10640 before(grammarAccess.getAtomAccess().getTransitiveClosureAssignment_1());
10641 // InternalProblem.g:3338:2: ( rule__Atom__TransitiveClosureAssignment_1 )?
10642 int alt42=2;
10643 int LA42_0 = input.LA(1);
10644
10645 if ( (LA42_0==45) ) {
10646 alt42=1;
10647 }
10648 switch (alt42) {
10649 case 1 :
10650 // InternalProblem.g:3338:3: rule__Atom__TransitiveClosureAssignment_1
10651 {
10652 pushFollow(FOLLOW_2);
10653 rule__Atom__TransitiveClosureAssignment_1();
10654
10655 state._fsp--;
10656
10657
10658 }
10659 break;
10660
10661 }
10662
10663 after(grammarAccess.getAtomAccess().getTransitiveClosureAssignment_1());
10664
10665 }
10666
10667
10668 }
10669
10670 }
10671 catch (RecognitionException re) {
10672 reportError(re);
10673 recover(input,re);
10674 }
10675 finally {
10676
10677 restoreStackSize(stackSize);
10678
10679 }
10680 return ;
10681 }
10682 // $ANTLR end "rule__Atom__Group__1__Impl"
10683
10684
10685 // $ANTLR start "rule__Atom__Group__2"
10686 // InternalProblem.g:3346:1: rule__Atom__Group__2 : rule__Atom__Group__2__Impl rule__Atom__Group__3 ;
10687 public final void rule__Atom__Group__2() throws RecognitionException {
10688
10689 int stackSize = keepStackSize();
10690
10691 try {
10692 // InternalProblem.g:3350:1: ( rule__Atom__Group__2__Impl rule__Atom__Group__3 )
10693 // InternalProblem.g:3351:2: rule__Atom__Group__2__Impl rule__Atom__Group__3
10694 {
10695 pushFollow(FOLLOW_29);
10696 rule__Atom__Group__2__Impl();
10697
10698 state._fsp--;
10699
10700 pushFollow(FOLLOW_2);
10701 rule__Atom__Group__3();
10702
10703 state._fsp--;
10704
10705
10706 }
10707
10708 }
10709 catch (RecognitionException re) {
10710 reportError(re);
10711 recover(input,re);
10712 }
10713 finally {
10714
10715 restoreStackSize(stackSize);
10716
10717 }
10718 return ;
10719 }
10720 // $ANTLR end "rule__Atom__Group__2"
10721
10722
10723 // $ANTLR start "rule__Atom__Group__2__Impl"
10724 // InternalProblem.g:3358:1: rule__Atom__Group__2__Impl : ( '(' ) ;
10725 public final void rule__Atom__Group__2__Impl() throws RecognitionException {
10726
10727 int stackSize = keepStackSize();
10728
10729 try {
10730 // InternalProblem.g:3362:1: ( ( '(' ) )
10731 // InternalProblem.g:3363:1: ( '(' )
10732 {
10733 // InternalProblem.g:3363:1: ( '(' )
10734 // InternalProblem.g:3364:2: '('
10735 {
10736 before(grammarAccess.getAtomAccess().getLeftParenthesisKeyword_2());
10737 match(input,34,FOLLOW_2);
10738 after(grammarAccess.getAtomAccess().getLeftParenthesisKeyword_2());
10739
10740 }
10741
10742
10743 }
10744
10745 }
10746 catch (RecognitionException re) {
10747 reportError(re);
10748 recover(input,re);
10749 }
10750 finally {
10751
10752 restoreStackSize(stackSize);
10753
10754 }
10755 return ;
10756 }
10757 // $ANTLR end "rule__Atom__Group__2__Impl"
10758
10759
10760 // $ANTLR start "rule__Atom__Group__3"
10761 // InternalProblem.g:3373:1: rule__Atom__Group__3 : rule__Atom__Group__3__Impl rule__Atom__Group__4 ;
10762 public final void rule__Atom__Group__3() throws RecognitionException {
10763
10764 int stackSize = keepStackSize();
10765
10766 try {
10767 // InternalProblem.g:3377:1: ( rule__Atom__Group__3__Impl rule__Atom__Group__4 )
10768 // InternalProblem.g:3378:2: rule__Atom__Group__3__Impl rule__Atom__Group__4
10769 {
10770 pushFollow(FOLLOW_29);
10771 rule__Atom__Group__3__Impl();
10772
10773 state._fsp--;
10774
10775 pushFollow(FOLLOW_2);
10776 rule__Atom__Group__4();
10777
10778 state._fsp--;
10779
10780
10781 }
10782
10783 }
10784 catch (RecognitionException re) {
10785 reportError(re);
10786 recover(input,re);
10787 }
10788 finally {
10789
10790 restoreStackSize(stackSize);
10791
10792 }
10793 return ;
10794 }
10795 // $ANTLR end "rule__Atom__Group__3"
10796
10797
10798 // $ANTLR start "rule__Atom__Group__3__Impl"
10799 // InternalProblem.g:3385:1: rule__Atom__Group__3__Impl : ( ( rule__Atom__Group_3__0 )? ) ;
10800 public final void rule__Atom__Group__3__Impl() throws RecognitionException {
10801
10802 int stackSize = keepStackSize();
10803
10804 try {
10805 // InternalProblem.g:3389:1: ( ( ( rule__Atom__Group_3__0 )? ) )
10806 // InternalProblem.g:3390:1: ( ( rule__Atom__Group_3__0 )? )
10807 {
10808 // InternalProblem.g:3390:1: ( ( rule__Atom__Group_3__0 )? )
10809 // InternalProblem.g:3391:2: ( rule__Atom__Group_3__0 )?
10810 {
10811 before(grammarAccess.getAtomAccess().getGroup_3());
10812 // InternalProblem.g:3392:2: ( rule__Atom__Group_3__0 )?
10813 int alt43=2;
10814 int LA43_0 = input.LA(1);
10815
10816 if ( ((LA43_0>=RULE_INT && LA43_0<=RULE_STRING)||(LA43_0>=20 && LA43_0<=21)||LA43_0==41) ) {
10817 alt43=1;
10818 }
10819 switch (alt43) {
10820 case 1 :
10821 // InternalProblem.g:3392:3: rule__Atom__Group_3__0
10822 {
10823 pushFollow(FOLLOW_2);
10824 rule__Atom__Group_3__0();
10825
10826 state._fsp--;
10827
10828
10829 }
10830 break;
10831
10832 }
10833
10834 after(grammarAccess.getAtomAccess().getGroup_3());
10835
10836 }
10837
10838
10839 }
10840
10841 }
10842 catch (RecognitionException re) {
10843 reportError(re);
10844 recover(input,re);
10845 }
10846 finally {
10847
10848 restoreStackSize(stackSize);
10849
10850 }
10851 return ;
10852 }
10853 // $ANTLR end "rule__Atom__Group__3__Impl"
10854
10855
10856 // $ANTLR start "rule__Atom__Group__4"
10857 // InternalProblem.g:3400:1: rule__Atom__Group__4 : rule__Atom__Group__4__Impl ;
10858 public final void rule__Atom__Group__4() throws RecognitionException {
10859
10860 int stackSize = keepStackSize();
10861
10862 try {
10863 // InternalProblem.g:3404:1: ( rule__Atom__Group__4__Impl )
10864 // InternalProblem.g:3405:2: rule__Atom__Group__4__Impl
10865 {
10866 pushFollow(FOLLOW_2);
10867 rule__Atom__Group__4__Impl();
10868
10869 state._fsp--;
10870
10871
10872 }
10873
10874 }
10875 catch (RecognitionException re) {
10876 reportError(re);
10877 recover(input,re);
10878 }
10879 finally {
10880
10881 restoreStackSize(stackSize);
10882
10883 }
10884 return ;
10885 }
10886 // $ANTLR end "rule__Atom__Group__4"
10887
10888
10889 // $ANTLR start "rule__Atom__Group__4__Impl"
10890 // InternalProblem.g:3411:1: rule__Atom__Group__4__Impl : ( ')' ) ;
10891 public final void rule__Atom__Group__4__Impl() throws RecognitionException {
10892
10893 int stackSize = keepStackSize();
10894
10895 try {
10896 // InternalProblem.g:3415:1: ( ( ')' ) )
10897 // InternalProblem.g:3416:1: ( ')' )
10898 {
10899 // InternalProblem.g:3416:1: ( ')' )
10900 // InternalProblem.g:3417:2: ')'
10901 {
10902 before(grammarAccess.getAtomAccess().getRightParenthesisKeyword_4());
10903 match(input,35,FOLLOW_2);
10904 after(grammarAccess.getAtomAccess().getRightParenthesisKeyword_4());
10905
10906 }
10907
10908
10909 }
10910
10911 }
10912 catch (RecognitionException re) {
10913 reportError(re);
10914 recover(input,re);
10915 }
10916 finally {
10917
10918 restoreStackSize(stackSize);
10919
10920 }
10921 return ;
10922 }
10923 // $ANTLR end "rule__Atom__Group__4__Impl"
10924
10925
10926 // $ANTLR start "rule__Atom__Group_3__0"
10927 // InternalProblem.g:3427:1: rule__Atom__Group_3__0 : rule__Atom__Group_3__0__Impl rule__Atom__Group_3__1 ;
10928 public final void rule__Atom__Group_3__0() throws RecognitionException {
10929
10930 int stackSize = keepStackSize();
10931
10932 try {
10933 // InternalProblem.g:3431:1: ( rule__Atom__Group_3__0__Impl rule__Atom__Group_3__1 )
10934 // InternalProblem.g:3432:2: rule__Atom__Group_3__0__Impl rule__Atom__Group_3__1
10935 {
10936 pushFollow(FOLLOW_9);
10937 rule__Atom__Group_3__0__Impl();
10938
10939 state._fsp--;
10940
10941 pushFollow(FOLLOW_2);
10942 rule__Atom__Group_3__1();
10943
10944 state._fsp--;
10945
10946
10947 }
10948
10949 }
10950 catch (RecognitionException re) {
10951 reportError(re);
10952 recover(input,re);
10953 }
10954 finally {
10955
10956 restoreStackSize(stackSize);
10957
10958 }
10959 return ;
10960 }
10961 // $ANTLR end "rule__Atom__Group_3__0"
10962
10963
10964 // $ANTLR start "rule__Atom__Group_3__0__Impl"
10965 // InternalProblem.g:3439:1: rule__Atom__Group_3__0__Impl : ( ( rule__Atom__ArgumentsAssignment_3_0 ) ) ;
10966 public final void rule__Atom__Group_3__0__Impl() throws RecognitionException {
10967
10968 int stackSize = keepStackSize();
10969
10970 try {
10971 // InternalProblem.g:3443:1: ( ( ( rule__Atom__ArgumentsAssignment_3_0 ) ) )
10972 // InternalProblem.g:3444:1: ( ( rule__Atom__ArgumentsAssignment_3_0 ) )
10973 {
10974 // InternalProblem.g:3444:1: ( ( rule__Atom__ArgumentsAssignment_3_0 ) )
10975 // InternalProblem.g:3445:2: ( rule__Atom__ArgumentsAssignment_3_0 )
10976 {
10977 before(grammarAccess.getAtomAccess().getArgumentsAssignment_3_0());
10978 // InternalProblem.g:3446:2: ( rule__Atom__ArgumentsAssignment_3_0 )
10979 // InternalProblem.g:3446:3: rule__Atom__ArgumentsAssignment_3_0
10980 {
10981 pushFollow(FOLLOW_2);
10982 rule__Atom__ArgumentsAssignment_3_0();
10983
10984 state._fsp--;
10985
10986
10987 }
10988
10989 after(grammarAccess.getAtomAccess().getArgumentsAssignment_3_0());
10990
10991 }
10992
10993
10994 }
10995
10996 }
10997 catch (RecognitionException re) {
10998 reportError(re);
10999 recover(input,re);
11000 }
11001 finally {
11002
11003 restoreStackSize(stackSize);
11004
11005 }
11006 return ;
11007 }
11008 // $ANTLR end "rule__Atom__Group_3__0__Impl"
11009
11010
11011 // $ANTLR start "rule__Atom__Group_3__1"
11012 // InternalProblem.g:3454:1: rule__Atom__Group_3__1 : rule__Atom__Group_3__1__Impl ;
11013 public final void rule__Atom__Group_3__1() throws RecognitionException {
11014
11015 int stackSize = keepStackSize();
11016
11017 try {
11018 // InternalProblem.g:3458:1: ( rule__Atom__Group_3__1__Impl )
11019 // InternalProblem.g:3459:2: rule__Atom__Group_3__1__Impl
11020 {
11021 pushFollow(FOLLOW_2);
11022 rule__Atom__Group_3__1__Impl();
11023
11024 state._fsp--;
11025
11026
11027 }
11028
11029 }
11030 catch (RecognitionException re) {
11031 reportError(re);
11032 recover(input,re);
11033 }
11034 finally {
11035
11036 restoreStackSize(stackSize);
11037
11038 }
11039 return ;
11040 }
11041 // $ANTLR end "rule__Atom__Group_3__1"
11042
11043
11044 // $ANTLR start "rule__Atom__Group_3__1__Impl"
11045 // InternalProblem.g:3465:1: rule__Atom__Group_3__1__Impl : ( ( rule__Atom__Group_3_1__0 )* ) ;
11046 public final void rule__Atom__Group_3__1__Impl() throws RecognitionException {
11047
11048 int stackSize = keepStackSize();
11049
11050 try {
11051 // InternalProblem.g:3469:1: ( ( ( rule__Atom__Group_3_1__0 )* ) )
11052 // InternalProblem.g:3470:1: ( ( rule__Atom__Group_3_1__0 )* )
11053 {
11054 // InternalProblem.g:3470:1: ( ( rule__Atom__Group_3_1__0 )* )
11055 // InternalProblem.g:3471:2: ( rule__Atom__Group_3_1__0 )*
11056 {
11057 before(grammarAccess.getAtomAccess().getGroup_3_1());
11058 // InternalProblem.g:3472:2: ( rule__Atom__Group_3_1__0 )*
11059 loop44:
11060 do {
11061 int alt44=2;
11062 int LA44_0 = input.LA(1);
11063
11064 if ( (LA44_0==14) ) {
11065 alt44=1;
11066 }
11067
11068
11069 switch (alt44) {
11070 case 1 :
11071 // InternalProblem.g:3472:3: rule__Atom__Group_3_1__0
11072 {
11073 pushFollow(FOLLOW_10);
11074 rule__Atom__Group_3_1__0();
11075
11076 state._fsp--;
11077
11078
11079 }
11080 break;
11081
11082 default :
11083 break loop44;
11084 }
11085 } while (true);
11086
11087 after(grammarAccess.getAtomAccess().getGroup_3_1());
11088
11089 }
11090
11091
11092 }
11093
11094 }
11095 catch (RecognitionException re) {
11096 reportError(re);
11097 recover(input,re);
11098 }
11099 finally {
11100
11101 restoreStackSize(stackSize);
11102
11103 }
11104 return ;
11105 }
11106 // $ANTLR end "rule__Atom__Group_3__1__Impl"
11107
11108
11109 // $ANTLR start "rule__Atom__Group_3_1__0"
11110 // InternalProblem.g:3481:1: rule__Atom__Group_3_1__0 : rule__Atom__Group_3_1__0__Impl rule__Atom__Group_3_1__1 ;
11111 public final void rule__Atom__Group_3_1__0() throws RecognitionException {
11112
11113 int stackSize = keepStackSize();
11114
11115 try {
11116 // InternalProblem.g:3485:1: ( rule__Atom__Group_3_1__0__Impl rule__Atom__Group_3_1__1 )
11117 // InternalProblem.g:3486:2: rule__Atom__Group_3_1__0__Impl rule__Atom__Group_3_1__1
11118 {
11119 pushFollow(FOLLOW_30);
11120 rule__Atom__Group_3_1__0__Impl();
11121
11122 state._fsp--;
11123
11124 pushFollow(FOLLOW_2);
11125 rule__Atom__Group_3_1__1();
11126
11127 state._fsp--;
11128
11129
11130 }
11131
11132 }
11133 catch (RecognitionException re) {
11134 reportError(re);
11135 recover(input,re);
11136 }
11137 finally {
11138
11139 restoreStackSize(stackSize);
11140
11141 }
11142 return ;
11143 }
11144 // $ANTLR end "rule__Atom__Group_3_1__0"
11145
11146
11147 // $ANTLR start "rule__Atom__Group_3_1__0__Impl"
11148 // InternalProblem.g:3493:1: rule__Atom__Group_3_1__0__Impl : ( ',' ) ;
11149 public final void rule__Atom__Group_3_1__0__Impl() throws RecognitionException {
11150
11151 int stackSize = keepStackSize();
11152
11153 try {
11154 // InternalProblem.g:3497:1: ( ( ',' ) )
11155 // InternalProblem.g:3498:1: ( ',' )
11156 {
11157 // InternalProblem.g:3498:1: ( ',' )
11158 // InternalProblem.g:3499:2: ','
11159 {
11160 before(grammarAccess.getAtomAccess().getCommaKeyword_3_1_0());
11161 match(input,14,FOLLOW_2);
11162 after(grammarAccess.getAtomAccess().getCommaKeyword_3_1_0());
11163
11164 }
11165
11166
11167 }
11168
11169 }
11170 catch (RecognitionException re) {
11171 reportError(re);
11172 recover(input,re);
11173 }
11174 finally {
11175
11176 restoreStackSize(stackSize);
11177
11178 }
11179 return ;
11180 }
11181 // $ANTLR end "rule__Atom__Group_3_1__0__Impl"
11182
11183
11184 // $ANTLR start "rule__Atom__Group_3_1__1"
11185 // InternalProblem.g:3508:1: rule__Atom__Group_3_1__1 : rule__Atom__Group_3_1__1__Impl ;
11186 public final void rule__Atom__Group_3_1__1() throws RecognitionException {
11187
11188 int stackSize = keepStackSize();
11189
11190 try {
11191 // InternalProblem.g:3512:1: ( rule__Atom__Group_3_1__1__Impl )
11192 // InternalProblem.g:3513:2: rule__Atom__Group_3_1__1__Impl
11193 {
11194 pushFollow(FOLLOW_2);
11195 rule__Atom__Group_3_1__1__Impl();
11196
11197 state._fsp--;
11198
11199
11200 }
11201
11202 }
11203 catch (RecognitionException re) {
11204 reportError(re);
11205 recover(input,re);
11206 }
11207 finally {
11208
11209 restoreStackSize(stackSize);
11210
11211 }
11212 return ;
11213 }
11214 // $ANTLR end "rule__Atom__Group_3_1__1"
11215
11216
11217 // $ANTLR start "rule__Atom__Group_3_1__1__Impl"
11218 // InternalProblem.g:3519:1: rule__Atom__Group_3_1__1__Impl : ( ( rule__Atom__ArgumentsAssignment_3_1_1 ) ) ;
11219 public final void rule__Atom__Group_3_1__1__Impl() throws RecognitionException {
11220
11221 int stackSize = keepStackSize();
11222
11223 try {
11224 // InternalProblem.g:3523:1: ( ( ( rule__Atom__ArgumentsAssignment_3_1_1 ) ) )
11225 // InternalProblem.g:3524:1: ( ( rule__Atom__ArgumentsAssignment_3_1_1 ) )
11226 {
11227 // InternalProblem.g:3524:1: ( ( rule__Atom__ArgumentsAssignment_3_1_1 ) )
11228 // InternalProblem.g:3525:2: ( rule__Atom__ArgumentsAssignment_3_1_1 )
11229 {
11230 before(grammarAccess.getAtomAccess().getArgumentsAssignment_3_1_1());
11231 // InternalProblem.g:3526:2: ( rule__Atom__ArgumentsAssignment_3_1_1 )
11232 // InternalProblem.g:3526:3: rule__Atom__ArgumentsAssignment_3_1_1
11233 {
11234 pushFollow(FOLLOW_2);
11235 rule__Atom__ArgumentsAssignment_3_1_1();
11236
11237 state._fsp--;
11238
11239
11240 }
11241
11242 after(grammarAccess.getAtomAccess().getArgumentsAssignment_3_1_1());
11243
11244 }
11245
11246
11247 }
11248
11249 }
11250 catch (RecognitionException re) {
11251 reportError(re);
11252 recover(input,re);
11253 }
11254 finally {
11255
11256 restoreStackSize(stackSize);
11257
11258 }
11259 return ;
11260 }
11261 // $ANTLR end "rule__Atom__Group_3_1__1__Impl"
11262
11263
11264 // $ANTLR start "rule__Assertion__Group__0"
11265 // InternalProblem.g:3535:1: rule__Assertion__Group__0 : rule__Assertion__Group__0__Impl rule__Assertion__Group__1 ;
11266 public final void rule__Assertion__Group__0() throws RecognitionException {
11267
11268 int stackSize = keepStackSize();
11269
11270 try {
11271 // InternalProblem.g:3539:1: ( rule__Assertion__Group__0__Impl rule__Assertion__Group__1 )
11272 // InternalProblem.g:3540:2: rule__Assertion__Group__0__Impl rule__Assertion__Group__1
11273 {
11274 pushFollow(FOLLOW_6);
11275 rule__Assertion__Group__0__Impl();
11276
11277 state._fsp--;
11278
11279 pushFollow(FOLLOW_2);
11280 rule__Assertion__Group__1();
11281
11282 state._fsp--;
11283
11284
11285 }
11286
11287 }
11288 catch (RecognitionException re) {
11289 reportError(re);
11290 recover(input,re);
11291 }
11292 finally {
11293
11294 restoreStackSize(stackSize);
11295
11296 }
11297 return ;
11298 }
11299 // $ANTLR end "rule__Assertion__Group__0"
11300
11301
11302 // $ANTLR start "rule__Assertion__Group__0__Impl"
11303 // InternalProblem.g:3547:1: rule__Assertion__Group__0__Impl : ( ( rule__Assertion__Alternatives_0 ) ) ;
11304 public final void rule__Assertion__Group__0__Impl() throws RecognitionException {
11305
11306 int stackSize = keepStackSize();
11307
11308 try {
11309 // InternalProblem.g:3551:1: ( ( ( rule__Assertion__Alternatives_0 ) ) )
11310 // InternalProblem.g:3552:1: ( ( rule__Assertion__Alternatives_0 ) )
11311 {
11312 // InternalProblem.g:3552:1: ( ( rule__Assertion__Alternatives_0 ) )
11313 // InternalProblem.g:3553:2: ( rule__Assertion__Alternatives_0 )
11314 {
11315 before(grammarAccess.getAssertionAccess().getAlternatives_0());
11316 // InternalProblem.g:3554:2: ( rule__Assertion__Alternatives_0 )
11317 // InternalProblem.g:3554:3: rule__Assertion__Alternatives_0
11318 {
11319 pushFollow(FOLLOW_2);
11320 rule__Assertion__Alternatives_0();
11321
11322 state._fsp--;
11323
11324
11325 }
11326
11327 after(grammarAccess.getAssertionAccess().getAlternatives_0());
11328
11329 }
11330
11331
11332 }
11333
11334 }
11335 catch (RecognitionException re) {
11336 reportError(re);
11337 recover(input,re);
11338 }
11339 finally {
11340
11341 restoreStackSize(stackSize);
11342
11343 }
11344 return ;
11345 }
11346 // $ANTLR end "rule__Assertion__Group__0__Impl"
11347
11348
11349 // $ANTLR start "rule__Assertion__Group__1"
11350 // InternalProblem.g:3562:1: rule__Assertion__Group__1 : rule__Assertion__Group__1__Impl ;
11351 public final void rule__Assertion__Group__1() throws RecognitionException {
11352
11353 int stackSize = keepStackSize();
11354
11355 try {
11356 // InternalProblem.g:3566:1: ( rule__Assertion__Group__1__Impl )
11357 // InternalProblem.g:3567:2: rule__Assertion__Group__1__Impl
11358 {
11359 pushFollow(FOLLOW_2);
11360 rule__Assertion__Group__1__Impl();
11361
11362 state._fsp--;
11363
11364
11365 }
11366
11367 }
11368 catch (RecognitionException re) {
11369 reportError(re);
11370 recover(input,re);
11371 }
11372 finally {
11373
11374 restoreStackSize(stackSize);
11375
11376 }
11377 return ;
11378 }
11379 // $ANTLR end "rule__Assertion__Group__1"
11380
11381
11382 // $ANTLR start "rule__Assertion__Group__1__Impl"
11383 // InternalProblem.g:3573:1: rule__Assertion__Group__1__Impl : ( '.' ) ;
11384 public final void rule__Assertion__Group__1__Impl() throws RecognitionException {
11385
11386 int stackSize = keepStackSize();
11387
11388 try {
11389 // InternalProblem.g:3577:1: ( ( '.' ) )
11390 // InternalProblem.g:3578:1: ( '.' )
11391 {
11392 // InternalProblem.g:3578:1: ( '.' )
11393 // InternalProblem.g:3579:2: '.'
11394 {
11395 before(grammarAccess.getAssertionAccess().getFullStopKeyword_1());
11396 match(input,13,FOLLOW_2);
11397 after(grammarAccess.getAssertionAccess().getFullStopKeyword_1());
11398
11399 }
11400
11401
11402 }
11403
11404 }
11405 catch (RecognitionException re) {
11406 reportError(re);
11407 recover(input,re);
11408 }
11409 finally {
11410
11411 restoreStackSize(stackSize);
11412
11413 }
11414 return ;
11415 }
11416 // $ANTLR end "rule__Assertion__Group__1__Impl"
11417
11418
11419 // $ANTLR start "rule__Assertion__Group_0_0__0"
11420 // InternalProblem.g:3589:1: rule__Assertion__Group_0_0__0 : rule__Assertion__Group_0_0__0__Impl rule__Assertion__Group_0_0__1 ;
11421 public final void rule__Assertion__Group_0_0__0() throws RecognitionException {
11422
11423 int stackSize = keepStackSize();
11424
11425 try {
11426 // InternalProblem.g:3593:1: ( rule__Assertion__Group_0_0__0__Impl rule__Assertion__Group_0_0__1 )
11427 // InternalProblem.g:3594:2: rule__Assertion__Group_0_0__0__Impl rule__Assertion__Group_0_0__1
11428 {
11429 pushFollow(FOLLOW_22);
11430 rule__Assertion__Group_0_0__0__Impl();
11431
11432 state._fsp--;
11433
11434 pushFollow(FOLLOW_2);
11435 rule__Assertion__Group_0_0__1();
11436
11437 state._fsp--;
11438
11439
11440 }
11441
11442 }
11443 catch (RecognitionException re) {
11444 reportError(re);
11445 recover(input,re);
11446 }
11447 finally {
11448
11449 restoreStackSize(stackSize);
11450
11451 }
11452 return ;
11453 }
11454 // $ANTLR end "rule__Assertion__Group_0_0__0"
11455
11456
11457 // $ANTLR start "rule__Assertion__Group_0_0__0__Impl"
11458 // InternalProblem.g:3601:1: rule__Assertion__Group_0_0__0__Impl : ( ( rule__Assertion__RelationAssignment_0_0_0 ) ) ;
11459 public final void rule__Assertion__Group_0_0__0__Impl() throws RecognitionException {
11460
11461 int stackSize = keepStackSize();
11462
11463 try {
11464 // InternalProblem.g:3605:1: ( ( ( rule__Assertion__RelationAssignment_0_0_0 ) ) )
11465 // InternalProblem.g:3606:1: ( ( rule__Assertion__RelationAssignment_0_0_0 ) )
11466 {
11467 // InternalProblem.g:3606:1: ( ( rule__Assertion__RelationAssignment_0_0_0 ) )
11468 // InternalProblem.g:3607:2: ( rule__Assertion__RelationAssignment_0_0_0 )
11469 {
11470 before(grammarAccess.getAssertionAccess().getRelationAssignment_0_0_0());
11471 // InternalProblem.g:3608:2: ( rule__Assertion__RelationAssignment_0_0_0 )
11472 // InternalProblem.g:3608:3: rule__Assertion__RelationAssignment_0_0_0
11473 {
11474 pushFollow(FOLLOW_2);
11475 rule__Assertion__RelationAssignment_0_0_0();
11476
11477 state._fsp--;
11478
11479
11480 }
11481
11482 after(grammarAccess.getAssertionAccess().getRelationAssignment_0_0_0());
11483
11484 }
11485
11486
11487 }
11488
11489 }
11490 catch (RecognitionException re) {
11491 reportError(re);
11492 recover(input,re);
11493 }
11494 finally {
11495
11496 restoreStackSize(stackSize);
11497
11498 }
11499 return ;
11500 }
11501 // $ANTLR end "rule__Assertion__Group_0_0__0__Impl"
11502
11503
11504 // $ANTLR start "rule__Assertion__Group_0_0__1"
11505 // InternalProblem.g:3616:1: rule__Assertion__Group_0_0__1 : rule__Assertion__Group_0_0__1__Impl rule__Assertion__Group_0_0__2 ;
11506 public final void rule__Assertion__Group_0_0__1() throws RecognitionException {
11507
11508 int stackSize = keepStackSize();
11509
11510 try {
11511 // InternalProblem.g:3620:1: ( rule__Assertion__Group_0_0__1__Impl rule__Assertion__Group_0_0__2 )
11512 // InternalProblem.g:3621:2: rule__Assertion__Group_0_0__1__Impl rule__Assertion__Group_0_0__2
11513 {
11514 pushFollow(FOLLOW_29);
11515 rule__Assertion__Group_0_0__1__Impl();
11516
11517 state._fsp--;
11518
11519 pushFollow(FOLLOW_2);
11520 rule__Assertion__Group_0_0__2();
11521
11522 state._fsp--;
11523
11524
11525 }
11526
11527 }
11528 catch (RecognitionException re) {
11529 reportError(re);
11530 recover(input,re);
11531 }
11532 finally {
11533
11534 restoreStackSize(stackSize);
11535
11536 }
11537 return ;
11538 }
11539 // $ANTLR end "rule__Assertion__Group_0_0__1"
11540
11541
11542 // $ANTLR start "rule__Assertion__Group_0_0__1__Impl"
11543 // InternalProblem.g:3628:1: rule__Assertion__Group_0_0__1__Impl : ( '(' ) ;
11544 public final void rule__Assertion__Group_0_0__1__Impl() throws RecognitionException {
11545
11546 int stackSize = keepStackSize();
11547
11548 try {
11549 // InternalProblem.g:3632:1: ( ( '(' ) )
11550 // InternalProblem.g:3633:1: ( '(' )
11551 {
11552 // InternalProblem.g:3633:1: ( '(' )
11553 // InternalProblem.g:3634:2: '('
11554 {
11555 before(grammarAccess.getAssertionAccess().getLeftParenthesisKeyword_0_0_1());
11556 match(input,34,FOLLOW_2);
11557 after(grammarAccess.getAssertionAccess().getLeftParenthesisKeyword_0_0_1());
11558
11559 }
11560
11561
11562 }
11563
11564 }
11565 catch (RecognitionException re) {
11566 reportError(re);
11567 recover(input,re);
11568 }
11569 finally {
11570
11571 restoreStackSize(stackSize);
11572
11573 }
11574 return ;
11575 }
11576 // $ANTLR end "rule__Assertion__Group_0_0__1__Impl"
11577
11578
11579 // $ANTLR start "rule__Assertion__Group_0_0__2"
11580 // InternalProblem.g:3643:1: rule__Assertion__Group_0_0__2 : rule__Assertion__Group_0_0__2__Impl rule__Assertion__Group_0_0__3 ;
11581 public final void rule__Assertion__Group_0_0__2() throws RecognitionException {
11582
11583 int stackSize = keepStackSize();
11584
11585 try {
11586 // InternalProblem.g:3647:1: ( rule__Assertion__Group_0_0__2__Impl rule__Assertion__Group_0_0__3 )
11587 // InternalProblem.g:3648:2: rule__Assertion__Group_0_0__2__Impl rule__Assertion__Group_0_0__3
11588 {
11589 pushFollow(FOLLOW_29);
11590 rule__Assertion__Group_0_0__2__Impl();
11591
11592 state._fsp--;
11593
11594 pushFollow(FOLLOW_2);
11595 rule__Assertion__Group_0_0__3();
11596
11597 state._fsp--;
11598
11599
11600 }
11601
11602 }
11603 catch (RecognitionException re) {
11604 reportError(re);
11605 recover(input,re);
11606 }
11607 finally {
11608
11609 restoreStackSize(stackSize);
11610
11611 }
11612 return ;
11613 }
11614 // $ANTLR end "rule__Assertion__Group_0_0__2"
11615
11616
11617 // $ANTLR start "rule__Assertion__Group_0_0__2__Impl"
11618 // InternalProblem.g:3655:1: rule__Assertion__Group_0_0__2__Impl : ( ( rule__Assertion__Group_0_0_2__0 )? ) ;
11619 public final void rule__Assertion__Group_0_0__2__Impl() throws RecognitionException {
11620
11621 int stackSize = keepStackSize();
11622
11623 try {
11624 // InternalProblem.g:3659:1: ( ( ( rule__Assertion__Group_0_0_2__0 )? ) )
11625 // InternalProblem.g:3660:1: ( ( rule__Assertion__Group_0_0_2__0 )? )
11626 {
11627 // InternalProblem.g:3660:1: ( ( rule__Assertion__Group_0_0_2__0 )? )
11628 // InternalProblem.g:3661:2: ( rule__Assertion__Group_0_0_2__0 )?
11629 {
11630 before(grammarAccess.getAssertionAccess().getGroup_0_0_2());
11631 // InternalProblem.g:3662:2: ( rule__Assertion__Group_0_0_2__0 )?
11632 int alt45=2;
11633 int LA45_0 = input.LA(1);
11634
11635 if ( ((LA45_0>=RULE_INT && LA45_0<=RULE_STRING)||(LA45_0>=20 && LA45_0<=21)||LA45_0==41) ) {
11636 alt45=1;
11637 }
11638 switch (alt45) {
11639 case 1 :
11640 // InternalProblem.g:3662:3: rule__Assertion__Group_0_0_2__0
11641 {
11642 pushFollow(FOLLOW_2);
11643 rule__Assertion__Group_0_0_2__0();
11644
11645 state._fsp--;
11646
11647
11648 }
11649 break;
11650
11651 }
11652
11653 after(grammarAccess.getAssertionAccess().getGroup_0_0_2());
11654
11655 }
11656
11657
11658 }
11659
11660 }
11661 catch (RecognitionException re) {
11662 reportError(re);
11663 recover(input,re);
11664 }
11665 finally {
11666
11667 restoreStackSize(stackSize);
11668
11669 }
11670 return ;
11671 }
11672 // $ANTLR end "rule__Assertion__Group_0_0__2__Impl"
11673
11674
11675 // $ANTLR start "rule__Assertion__Group_0_0__3"
11676 // InternalProblem.g:3670:1: rule__Assertion__Group_0_0__3 : rule__Assertion__Group_0_0__3__Impl rule__Assertion__Group_0_0__4 ;
11677 public final void rule__Assertion__Group_0_0__3() throws RecognitionException {
11678
11679 int stackSize = keepStackSize();
11680
11681 try {
11682 // InternalProblem.g:3674:1: ( rule__Assertion__Group_0_0__3__Impl rule__Assertion__Group_0_0__4 )
11683 // InternalProblem.g:3675:2: rule__Assertion__Group_0_0__3__Impl rule__Assertion__Group_0_0__4
11684 {
11685 pushFollow(FOLLOW_31);
11686 rule__Assertion__Group_0_0__3__Impl();
11687
11688 state._fsp--;
11689
11690 pushFollow(FOLLOW_2);
11691 rule__Assertion__Group_0_0__4();
11692
11693 state._fsp--;
11694
11695
11696 }
11697
11698 }
11699 catch (RecognitionException re) {
11700 reportError(re);
11701 recover(input,re);
11702 }
11703 finally {
11704
11705 restoreStackSize(stackSize);
11706
11707 }
11708 return ;
11709 }
11710 // $ANTLR end "rule__Assertion__Group_0_0__3"
11711
11712
11713 // $ANTLR start "rule__Assertion__Group_0_0__3__Impl"
11714 // InternalProblem.g:3682:1: rule__Assertion__Group_0_0__3__Impl : ( ')' ) ;
11715 public final void rule__Assertion__Group_0_0__3__Impl() throws RecognitionException {
11716
11717 int stackSize = keepStackSize();
11718
11719 try {
11720 // InternalProblem.g:3686:1: ( ( ')' ) )
11721 // InternalProblem.g:3687:1: ( ')' )
11722 {
11723 // InternalProblem.g:3687:1: ( ')' )
11724 // InternalProblem.g:3688:2: ')'
11725 {
11726 before(grammarAccess.getAssertionAccess().getRightParenthesisKeyword_0_0_3());
11727 match(input,35,FOLLOW_2);
11728 after(grammarAccess.getAssertionAccess().getRightParenthesisKeyword_0_0_3());
11729
11730 }
11731
11732
11733 }
11734
11735 }
11736 catch (RecognitionException re) {
11737 reportError(re);
11738 recover(input,re);
11739 }
11740 finally {
11741
11742 restoreStackSize(stackSize);
11743
11744 }
11745 return ;
11746 }
11747 // $ANTLR end "rule__Assertion__Group_0_0__3__Impl"
11748
11749
11750 // $ANTLR start "rule__Assertion__Group_0_0__4"
11751 // InternalProblem.g:3697:1: rule__Assertion__Group_0_0__4 : rule__Assertion__Group_0_0__4__Impl rule__Assertion__Group_0_0__5 ;
11752 public final void rule__Assertion__Group_0_0__4() throws RecognitionException {
11753
11754 int stackSize = keepStackSize();
11755
11756 try {
11757 // InternalProblem.g:3701:1: ( rule__Assertion__Group_0_0__4__Impl rule__Assertion__Group_0_0__5 )
11758 // InternalProblem.g:3702:2: rule__Assertion__Group_0_0__4__Impl rule__Assertion__Group_0_0__5
11759 {
11760 pushFollow(FOLLOW_32);
11761 rule__Assertion__Group_0_0__4__Impl();
11762
11763 state._fsp--;
11764
11765 pushFollow(FOLLOW_2);
11766 rule__Assertion__Group_0_0__5();
11767
11768 state._fsp--;
11769
11770
11771 }
11772
11773 }
11774 catch (RecognitionException re) {
11775 reportError(re);
11776 recover(input,re);
11777 }
11778 finally {
11779
11780 restoreStackSize(stackSize);
11781
11782 }
11783 return ;
11784 }
11785 // $ANTLR end "rule__Assertion__Group_0_0__4"
11786
11787
11788 // $ANTLR start "rule__Assertion__Group_0_0__4__Impl"
11789 // InternalProblem.g:3709:1: rule__Assertion__Group_0_0__4__Impl : ( ':' ) ;
11790 public final void rule__Assertion__Group_0_0__4__Impl() throws RecognitionException {
11791
11792 int stackSize = keepStackSize();
11793
11794 try {
11795 // InternalProblem.g:3713:1: ( ( ':' ) )
11796 // InternalProblem.g:3714:1: ( ':' )
11797 {
11798 // InternalProblem.g:3714:1: ( ':' )
11799 // InternalProblem.g:3715:2: ':'
11800 {
11801 before(grammarAccess.getAssertionAccess().getColonKeyword_0_0_4());
11802 match(input,37,FOLLOW_2);
11803 after(grammarAccess.getAssertionAccess().getColonKeyword_0_0_4());
11804
11805 }
11806
11807
11808 }
11809
11810 }
11811 catch (RecognitionException re) {
11812 reportError(re);
11813 recover(input,re);
11814 }
11815 finally {
11816
11817 restoreStackSize(stackSize);
11818
11819 }
11820 return ;
11821 }
11822 // $ANTLR end "rule__Assertion__Group_0_0__4__Impl"
11823
11824
11825 // $ANTLR start "rule__Assertion__Group_0_0__5"
11826 // InternalProblem.g:3724:1: rule__Assertion__Group_0_0__5 : rule__Assertion__Group_0_0__5__Impl ;
11827 public final void rule__Assertion__Group_0_0__5() throws RecognitionException {
11828
11829 int stackSize = keepStackSize();
11830
11831 try {
11832 // InternalProblem.g:3728:1: ( rule__Assertion__Group_0_0__5__Impl )
11833 // InternalProblem.g:3729:2: rule__Assertion__Group_0_0__5__Impl
11834 {
11835 pushFollow(FOLLOW_2);
11836 rule__Assertion__Group_0_0__5__Impl();
11837
11838 state._fsp--;
11839
11840
11841 }
11842
11843 }
11844 catch (RecognitionException re) {
11845 reportError(re);
11846 recover(input,re);
11847 }
11848 finally {
11849
11850 restoreStackSize(stackSize);
11851
11852 }
11853 return ;
11854 }
11855 // $ANTLR end "rule__Assertion__Group_0_0__5"
11856
11857
11858 // $ANTLR start "rule__Assertion__Group_0_0__5__Impl"
11859 // InternalProblem.g:3735:1: rule__Assertion__Group_0_0__5__Impl : ( ( rule__Assertion__ValueAssignment_0_0_5 ) ) ;
11860 public final void rule__Assertion__Group_0_0__5__Impl() throws RecognitionException {
11861
11862 int stackSize = keepStackSize();
11863
11864 try {
11865 // InternalProblem.g:3739:1: ( ( ( rule__Assertion__ValueAssignment_0_0_5 ) ) )
11866 // InternalProblem.g:3740:1: ( ( rule__Assertion__ValueAssignment_0_0_5 ) )
11867 {
11868 // InternalProblem.g:3740:1: ( ( rule__Assertion__ValueAssignment_0_0_5 ) )
11869 // InternalProblem.g:3741:2: ( rule__Assertion__ValueAssignment_0_0_5 )
11870 {
11871 before(grammarAccess.getAssertionAccess().getValueAssignment_0_0_5());
11872 // InternalProblem.g:3742:2: ( rule__Assertion__ValueAssignment_0_0_5 )
11873 // InternalProblem.g:3742:3: rule__Assertion__ValueAssignment_0_0_5
11874 {
11875 pushFollow(FOLLOW_2);
11876 rule__Assertion__ValueAssignment_0_0_5();
11877
11878 state._fsp--;
11879
11880
11881 }
11882
11883 after(grammarAccess.getAssertionAccess().getValueAssignment_0_0_5());
11884
11885 }
11886
11887
11888 }
11889
11890 }
11891 catch (RecognitionException re) {
11892 reportError(re);
11893 recover(input,re);
11894 }
11895 finally {
11896
11897 restoreStackSize(stackSize);
11898
11899 }
11900 return ;
11901 }
11902 // $ANTLR end "rule__Assertion__Group_0_0__5__Impl"
11903
11904
11905 // $ANTLR start "rule__Assertion__Group_0_0_2__0"
11906 // InternalProblem.g:3751:1: rule__Assertion__Group_0_0_2__0 : rule__Assertion__Group_0_0_2__0__Impl rule__Assertion__Group_0_0_2__1 ;
11907 public final void rule__Assertion__Group_0_0_2__0() throws RecognitionException {
11908
11909 int stackSize = keepStackSize();
11910
11911 try {
11912 // InternalProblem.g:3755:1: ( rule__Assertion__Group_0_0_2__0__Impl rule__Assertion__Group_0_0_2__1 )
11913 // InternalProblem.g:3756:2: rule__Assertion__Group_0_0_2__0__Impl rule__Assertion__Group_0_0_2__1
11914 {
11915 pushFollow(FOLLOW_9);
11916 rule__Assertion__Group_0_0_2__0__Impl();
11917
11918 state._fsp--;
11919
11920 pushFollow(FOLLOW_2);
11921 rule__Assertion__Group_0_0_2__1();
11922
11923 state._fsp--;
11924
11925
11926 }
11927
11928 }
11929 catch (RecognitionException re) {
11930 reportError(re);
11931 recover(input,re);
11932 }
11933 finally {
11934
11935 restoreStackSize(stackSize);
11936
11937 }
11938 return ;
11939 }
11940 // $ANTLR end "rule__Assertion__Group_0_0_2__0"
11941
11942
11943 // $ANTLR start "rule__Assertion__Group_0_0_2__0__Impl"
11944 // InternalProblem.g:3763:1: rule__Assertion__Group_0_0_2__0__Impl : ( ( rule__Assertion__ArgumentsAssignment_0_0_2_0 ) ) ;
11945 public final void rule__Assertion__Group_0_0_2__0__Impl() throws RecognitionException {
11946
11947 int stackSize = keepStackSize();
11948
11949 try {
11950 // InternalProblem.g:3767:1: ( ( ( rule__Assertion__ArgumentsAssignment_0_0_2_0 ) ) )
11951 // InternalProblem.g:3768:1: ( ( rule__Assertion__ArgumentsAssignment_0_0_2_0 ) )
11952 {
11953 // InternalProblem.g:3768:1: ( ( rule__Assertion__ArgumentsAssignment_0_0_2_0 ) )
11954 // InternalProblem.g:3769:2: ( rule__Assertion__ArgumentsAssignment_0_0_2_0 )
11955 {
11956 before(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_0_2_0());
11957 // InternalProblem.g:3770:2: ( rule__Assertion__ArgumentsAssignment_0_0_2_0 )
11958 // InternalProblem.g:3770:3: rule__Assertion__ArgumentsAssignment_0_0_2_0
11959 {
11960 pushFollow(FOLLOW_2);
11961 rule__Assertion__ArgumentsAssignment_0_0_2_0();
11962
11963 state._fsp--;
11964
11965
11966 }
11967
11968 after(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_0_2_0());
11969
11970 }
11971
11972
11973 }
11974
11975 }
11976 catch (RecognitionException re) {
11977 reportError(re);
11978 recover(input,re);
11979 }
11980 finally {
11981
11982 restoreStackSize(stackSize);
11983
11984 }
11985 return ;
11986 }
11987 // $ANTLR end "rule__Assertion__Group_0_0_2__0__Impl"
11988
11989
11990 // $ANTLR start "rule__Assertion__Group_0_0_2__1"
11991 // InternalProblem.g:3778:1: rule__Assertion__Group_0_0_2__1 : rule__Assertion__Group_0_0_2__1__Impl ;
11992 public final void rule__Assertion__Group_0_0_2__1() throws RecognitionException {
11993
11994 int stackSize = keepStackSize();
11995
11996 try {
11997 // InternalProblem.g:3782:1: ( rule__Assertion__Group_0_0_2__1__Impl )
11998 // InternalProblem.g:3783:2: rule__Assertion__Group_0_0_2__1__Impl
11999 {
12000 pushFollow(FOLLOW_2);
12001 rule__Assertion__Group_0_0_2__1__Impl();
12002
12003 state._fsp--;
12004
12005
12006 }
12007
12008 }
12009 catch (RecognitionException re) {
12010 reportError(re);
12011 recover(input,re);
12012 }
12013 finally {
12014
12015 restoreStackSize(stackSize);
12016
12017 }
12018 return ;
12019 }
12020 // $ANTLR end "rule__Assertion__Group_0_0_2__1"
12021
12022
12023 // $ANTLR start "rule__Assertion__Group_0_0_2__1__Impl"
12024 // InternalProblem.g:3789:1: rule__Assertion__Group_0_0_2__1__Impl : ( ( rule__Assertion__Group_0_0_2_1__0 )* ) ;
12025 public final void rule__Assertion__Group_0_0_2__1__Impl() throws RecognitionException {
12026
12027 int stackSize = keepStackSize();
12028
12029 try {
12030 // InternalProblem.g:3793:1: ( ( ( rule__Assertion__Group_0_0_2_1__0 )* ) )
12031 // InternalProblem.g:3794:1: ( ( rule__Assertion__Group_0_0_2_1__0 )* )
12032 {
12033 // InternalProblem.g:3794:1: ( ( rule__Assertion__Group_0_0_2_1__0 )* )
12034 // InternalProblem.g:3795:2: ( rule__Assertion__Group_0_0_2_1__0 )*
12035 {
12036 before(grammarAccess.getAssertionAccess().getGroup_0_0_2_1());
12037 // InternalProblem.g:3796:2: ( rule__Assertion__Group_0_0_2_1__0 )*
12038 loop46:
12039 do {
12040 int alt46=2;
12041 int LA46_0 = input.LA(1);
12042
12043 if ( (LA46_0==14) ) {
12044 alt46=1;
12045 }
12046
12047
12048 switch (alt46) {
12049 case 1 :
12050 // InternalProblem.g:3796:3: rule__Assertion__Group_0_0_2_1__0
12051 {
12052 pushFollow(FOLLOW_10);
12053 rule__Assertion__Group_0_0_2_1__0();
12054
12055 state._fsp--;
12056
12057
12058 }
12059 break;
12060
12061 default :
12062 break loop46;
12063 }
12064 } while (true);
12065
12066 after(grammarAccess.getAssertionAccess().getGroup_0_0_2_1());
12067
12068 }
12069
12070
12071 }
12072
12073 }
12074 catch (RecognitionException re) {
12075 reportError(re);
12076 recover(input,re);
12077 }
12078 finally {
12079
12080 restoreStackSize(stackSize);
12081
12082 }
12083 return ;
12084 }
12085 // $ANTLR end "rule__Assertion__Group_0_0_2__1__Impl"
12086
12087
12088 // $ANTLR start "rule__Assertion__Group_0_0_2_1__0"
12089 // InternalProblem.g:3805:1: rule__Assertion__Group_0_0_2_1__0 : rule__Assertion__Group_0_0_2_1__0__Impl rule__Assertion__Group_0_0_2_1__1 ;
12090 public final void rule__Assertion__Group_0_0_2_1__0() throws RecognitionException {
12091
12092 int stackSize = keepStackSize();
12093
12094 try {
12095 // InternalProblem.g:3809:1: ( rule__Assertion__Group_0_0_2_1__0__Impl rule__Assertion__Group_0_0_2_1__1 )
12096 // InternalProblem.g:3810:2: rule__Assertion__Group_0_0_2_1__0__Impl rule__Assertion__Group_0_0_2_1__1
12097 {
12098 pushFollow(FOLLOW_30);
12099 rule__Assertion__Group_0_0_2_1__0__Impl();
12100
12101 state._fsp--;
12102
12103 pushFollow(FOLLOW_2);
12104 rule__Assertion__Group_0_0_2_1__1();
12105
12106 state._fsp--;
12107
12108
12109 }
12110
12111 }
12112 catch (RecognitionException re) {
12113 reportError(re);
12114 recover(input,re);
12115 }
12116 finally {
12117
12118 restoreStackSize(stackSize);
12119
12120 }
12121 return ;
12122 }
12123 // $ANTLR end "rule__Assertion__Group_0_0_2_1__0"
12124
12125
12126 // $ANTLR start "rule__Assertion__Group_0_0_2_1__0__Impl"
12127 // InternalProblem.g:3817:1: rule__Assertion__Group_0_0_2_1__0__Impl : ( ',' ) ;
12128 public final void rule__Assertion__Group_0_0_2_1__0__Impl() throws RecognitionException {
12129
12130 int stackSize = keepStackSize();
12131
12132 try {
12133 // InternalProblem.g:3821:1: ( ( ',' ) )
12134 // InternalProblem.g:3822:1: ( ',' )
12135 {
12136 // InternalProblem.g:3822:1: ( ',' )
12137 // InternalProblem.g:3823:2: ','
12138 {
12139 before(grammarAccess.getAssertionAccess().getCommaKeyword_0_0_2_1_0());
12140 match(input,14,FOLLOW_2);
12141 after(grammarAccess.getAssertionAccess().getCommaKeyword_0_0_2_1_0());
12142
12143 }
12144
12145
12146 }
12147
12148 }
12149 catch (RecognitionException re) {
12150 reportError(re);
12151 recover(input,re);
12152 }
12153 finally {
12154
12155 restoreStackSize(stackSize);
12156
12157 }
12158 return ;
12159 }
12160 // $ANTLR end "rule__Assertion__Group_0_0_2_1__0__Impl"
12161
12162
12163 // $ANTLR start "rule__Assertion__Group_0_0_2_1__1"
12164 // InternalProblem.g:3832:1: rule__Assertion__Group_0_0_2_1__1 : rule__Assertion__Group_0_0_2_1__1__Impl ;
12165 public final void rule__Assertion__Group_0_0_2_1__1() throws RecognitionException {
12166
12167 int stackSize = keepStackSize();
12168
12169 try {
12170 // InternalProblem.g:3836:1: ( rule__Assertion__Group_0_0_2_1__1__Impl )
12171 // InternalProblem.g:3837:2: rule__Assertion__Group_0_0_2_1__1__Impl
12172 {
12173 pushFollow(FOLLOW_2);
12174 rule__Assertion__Group_0_0_2_1__1__Impl();
12175
12176 state._fsp--;
12177
12178
12179 }
12180
12181 }
12182 catch (RecognitionException re) {
12183 reportError(re);
12184 recover(input,re);
12185 }
12186 finally {
12187
12188 restoreStackSize(stackSize);
12189
12190 }
12191 return ;
12192 }
12193 // $ANTLR end "rule__Assertion__Group_0_0_2_1__1"
12194
12195
12196 // $ANTLR start "rule__Assertion__Group_0_0_2_1__1__Impl"
12197 // InternalProblem.g:3843:1: rule__Assertion__Group_0_0_2_1__1__Impl : ( ( rule__Assertion__ArgumentsAssignment_0_0_2_1_1 ) ) ;
12198 public final void rule__Assertion__Group_0_0_2_1__1__Impl() throws RecognitionException {
12199
12200 int stackSize = keepStackSize();
12201
12202 try {
12203 // InternalProblem.g:3847:1: ( ( ( rule__Assertion__ArgumentsAssignment_0_0_2_1_1 ) ) )
12204 // InternalProblem.g:3848:1: ( ( rule__Assertion__ArgumentsAssignment_0_0_2_1_1 ) )
12205 {
12206 // InternalProblem.g:3848:1: ( ( rule__Assertion__ArgumentsAssignment_0_0_2_1_1 ) )
12207 // InternalProblem.g:3849:2: ( rule__Assertion__ArgumentsAssignment_0_0_2_1_1 )
12208 {
12209 before(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_0_2_1_1());
12210 // InternalProblem.g:3850:2: ( rule__Assertion__ArgumentsAssignment_0_0_2_1_1 )
12211 // InternalProblem.g:3850:3: rule__Assertion__ArgumentsAssignment_0_0_2_1_1
12212 {
12213 pushFollow(FOLLOW_2);
12214 rule__Assertion__ArgumentsAssignment_0_0_2_1_1();
12215
12216 state._fsp--;
12217
12218
12219 }
12220
12221 after(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_0_2_1_1());
12222
12223 }
12224
12225
12226 }
12227
12228 }
12229 catch (RecognitionException re) {
12230 reportError(re);
12231 recover(input,re);
12232 }
12233 finally {
12234
12235 restoreStackSize(stackSize);
12236
12237 }
12238 return ;
12239 }
12240 // $ANTLR end "rule__Assertion__Group_0_0_2_1__1__Impl"
12241
12242
12243 // $ANTLR start "rule__Assertion__Group_0_1__0"
12244 // InternalProblem.g:3859:1: rule__Assertion__Group_0_1__0 : rule__Assertion__Group_0_1__0__Impl rule__Assertion__Group_0_1__1 ;
12245 public final void rule__Assertion__Group_0_1__0() throws RecognitionException {
12246
12247 int stackSize = keepStackSize();
12248
12249 try {
12250 // InternalProblem.g:3863:1: ( rule__Assertion__Group_0_1__0__Impl rule__Assertion__Group_0_1__1 )
12251 // InternalProblem.g:3864:2: rule__Assertion__Group_0_1__0__Impl rule__Assertion__Group_0_1__1
12252 {
12253 pushFollow(FOLLOW_33);
12254 rule__Assertion__Group_0_1__0__Impl();
12255
12256 state._fsp--;
12257
12258 pushFollow(FOLLOW_2);
12259 rule__Assertion__Group_0_1__1();
12260
12261 state._fsp--;
12262
12263
12264 }
12265
12266 }
12267 catch (RecognitionException re) {
12268 reportError(re);
12269 recover(input,re);
12270 }
12271 finally {
12272
12273 restoreStackSize(stackSize);
12274
12275 }
12276 return ;
12277 }
12278 // $ANTLR end "rule__Assertion__Group_0_1__0"
12279
12280
12281 // $ANTLR start "rule__Assertion__Group_0_1__0__Impl"
12282 // InternalProblem.g:3871:1: rule__Assertion__Group_0_1__0__Impl : ( ( rule__Assertion__ValueAssignment_0_1_0 )? ) ;
12283 public final void rule__Assertion__Group_0_1__0__Impl() throws RecognitionException {
12284
12285 int stackSize = keepStackSize();
12286
12287 try {
12288 // InternalProblem.g:3875:1: ( ( ( rule__Assertion__ValueAssignment_0_1_0 )? ) )
12289 // InternalProblem.g:3876:1: ( ( rule__Assertion__ValueAssignment_0_1_0 )? )
12290 {
12291 // InternalProblem.g:3876:1: ( ( rule__Assertion__ValueAssignment_0_1_0 )? )
12292 // InternalProblem.g:3877:2: ( rule__Assertion__ValueAssignment_0_1_0 )?
12293 {
12294 before(grammarAccess.getAssertionAccess().getValueAssignment_0_1_0());
12295 // InternalProblem.g:3878:2: ( rule__Assertion__ValueAssignment_0_1_0 )?
12296 int alt47=2;
12297 int LA47_0 = input.LA(1);
12298
12299 if ( ((LA47_0>=23 && LA47_0<=24)) ) {
12300 alt47=1;
12301 }
12302 switch (alt47) {
12303 case 1 :
12304 // InternalProblem.g:3878:3: rule__Assertion__ValueAssignment_0_1_0
12305 {
12306 pushFollow(FOLLOW_2);
12307 rule__Assertion__ValueAssignment_0_1_0();
12308
12309 state._fsp--;
12310
12311
12312 }
12313 break;
12314
12315 }
12316
12317 after(grammarAccess.getAssertionAccess().getValueAssignment_0_1_0());
12318
12319 }
12320
12321
12322 }
12323
12324 }
12325 catch (RecognitionException re) {
12326 reportError(re);
12327 recover(input,re);
12328 }
12329 finally {
12330
12331 restoreStackSize(stackSize);
12332
12333 }
12334 return ;
12335 }
12336 // $ANTLR end "rule__Assertion__Group_0_1__0__Impl"
12337
12338
12339 // $ANTLR start "rule__Assertion__Group_0_1__1"
12340 // InternalProblem.g:3886:1: rule__Assertion__Group_0_1__1 : rule__Assertion__Group_0_1__1__Impl rule__Assertion__Group_0_1__2 ;
12341 public final void rule__Assertion__Group_0_1__1() throws RecognitionException {
12342
12343 int stackSize = keepStackSize();
12344
12345 try {
12346 // InternalProblem.g:3890:1: ( rule__Assertion__Group_0_1__1__Impl rule__Assertion__Group_0_1__2 )
12347 // InternalProblem.g:3891:2: rule__Assertion__Group_0_1__1__Impl rule__Assertion__Group_0_1__2
12348 {
12349 pushFollow(FOLLOW_22);
12350 rule__Assertion__Group_0_1__1__Impl();
12351
12352 state._fsp--;
12353
12354 pushFollow(FOLLOW_2);
12355 rule__Assertion__Group_0_1__2();
12356
12357 state._fsp--;
12358
12359
12360 }
12361
12362 }
12363 catch (RecognitionException re) {
12364 reportError(re);
12365 recover(input,re);
12366 }
12367 finally {
12368
12369 restoreStackSize(stackSize);
12370
12371 }
12372 return ;
12373 }
12374 // $ANTLR end "rule__Assertion__Group_0_1__1"
12375
12376
12377 // $ANTLR start "rule__Assertion__Group_0_1__1__Impl"
12378 // InternalProblem.g:3898:1: rule__Assertion__Group_0_1__1__Impl : ( ( rule__Assertion__RelationAssignment_0_1_1 ) ) ;
12379 public final void rule__Assertion__Group_0_1__1__Impl() throws RecognitionException {
12380
12381 int stackSize = keepStackSize();
12382
12383 try {
12384 // InternalProblem.g:3902:1: ( ( ( rule__Assertion__RelationAssignment_0_1_1 ) ) )
12385 // InternalProblem.g:3903:1: ( ( rule__Assertion__RelationAssignment_0_1_1 ) )
12386 {
12387 // InternalProblem.g:3903:1: ( ( rule__Assertion__RelationAssignment_0_1_1 ) )
12388 // InternalProblem.g:3904:2: ( rule__Assertion__RelationAssignment_0_1_1 )
12389 {
12390 before(grammarAccess.getAssertionAccess().getRelationAssignment_0_1_1());
12391 // InternalProblem.g:3905:2: ( rule__Assertion__RelationAssignment_0_1_1 )
12392 // InternalProblem.g:3905:3: rule__Assertion__RelationAssignment_0_1_1
12393 {
12394 pushFollow(FOLLOW_2);
12395 rule__Assertion__RelationAssignment_0_1_1();
12396
12397 state._fsp--;
12398
12399
12400 }
12401
12402 after(grammarAccess.getAssertionAccess().getRelationAssignment_0_1_1());
12403
12404 }
12405
12406
12407 }
12408
12409 }
12410 catch (RecognitionException re) {
12411 reportError(re);
12412 recover(input,re);
12413 }
12414 finally {
12415
12416 restoreStackSize(stackSize);
12417
12418 }
12419 return ;
12420 }
12421 // $ANTLR end "rule__Assertion__Group_0_1__1__Impl"
12422
12423
12424 // $ANTLR start "rule__Assertion__Group_0_1__2"
12425 // InternalProblem.g:3913:1: rule__Assertion__Group_0_1__2 : rule__Assertion__Group_0_1__2__Impl rule__Assertion__Group_0_1__3 ;
12426 public final void rule__Assertion__Group_0_1__2() throws RecognitionException {
12427
12428 int stackSize = keepStackSize();
12429
12430 try {
12431 // InternalProblem.g:3917:1: ( rule__Assertion__Group_0_1__2__Impl rule__Assertion__Group_0_1__3 )
12432 // InternalProblem.g:3918:2: rule__Assertion__Group_0_1__2__Impl rule__Assertion__Group_0_1__3
12433 {
12434 pushFollow(FOLLOW_29);
12435 rule__Assertion__Group_0_1__2__Impl();
12436
12437 state._fsp--;
12438
12439 pushFollow(FOLLOW_2);
12440 rule__Assertion__Group_0_1__3();
12441
12442 state._fsp--;
12443
12444
12445 }
12446
12447 }
12448 catch (RecognitionException re) {
12449 reportError(re);
12450 recover(input,re);
12451 }
12452 finally {
12453
12454 restoreStackSize(stackSize);
12455
12456 }
12457 return ;
12458 }
12459 // $ANTLR end "rule__Assertion__Group_0_1__2"
12460
12461
12462 // $ANTLR start "rule__Assertion__Group_0_1__2__Impl"
12463 // InternalProblem.g:3925:1: rule__Assertion__Group_0_1__2__Impl : ( '(' ) ;
12464 public final void rule__Assertion__Group_0_1__2__Impl() throws RecognitionException {
12465
12466 int stackSize = keepStackSize();
12467
12468 try {
12469 // InternalProblem.g:3929:1: ( ( '(' ) )
12470 // InternalProblem.g:3930:1: ( '(' )
12471 {
12472 // InternalProblem.g:3930:1: ( '(' )
12473 // InternalProblem.g:3931:2: '('
12474 {
12475 before(grammarAccess.getAssertionAccess().getLeftParenthesisKeyword_0_1_2());
12476 match(input,34,FOLLOW_2);
12477 after(grammarAccess.getAssertionAccess().getLeftParenthesisKeyword_0_1_2());
12478
12479 }
12480
12481
12482 }
12483
12484 }
12485 catch (RecognitionException re) {
12486 reportError(re);
12487 recover(input,re);
12488 }
12489 finally {
12490
12491 restoreStackSize(stackSize);
12492
12493 }
12494 return ;
12495 }
12496 // $ANTLR end "rule__Assertion__Group_0_1__2__Impl"
12497
12498
12499 // $ANTLR start "rule__Assertion__Group_0_1__3"
12500 // InternalProblem.g:3940:1: rule__Assertion__Group_0_1__3 : rule__Assertion__Group_0_1__3__Impl rule__Assertion__Group_0_1__4 ;
12501 public final void rule__Assertion__Group_0_1__3() throws RecognitionException {
12502
12503 int stackSize = keepStackSize();
12504
12505 try {
12506 // InternalProblem.g:3944:1: ( rule__Assertion__Group_0_1__3__Impl rule__Assertion__Group_0_1__4 )
12507 // InternalProblem.g:3945:2: rule__Assertion__Group_0_1__3__Impl rule__Assertion__Group_0_1__4
12508 {
12509 pushFollow(FOLLOW_29);
12510 rule__Assertion__Group_0_1__3__Impl();
12511
12512 state._fsp--;
12513
12514 pushFollow(FOLLOW_2);
12515 rule__Assertion__Group_0_1__4();
12516
12517 state._fsp--;
12518
12519
12520 }
12521
12522 }
12523 catch (RecognitionException re) {
12524 reportError(re);
12525 recover(input,re);
12526 }
12527 finally {
12528
12529 restoreStackSize(stackSize);
12530
12531 }
12532 return ;
12533 }
12534 // $ANTLR end "rule__Assertion__Group_0_1__3"
12535
12536
12537 // $ANTLR start "rule__Assertion__Group_0_1__3__Impl"
12538 // InternalProblem.g:3952:1: rule__Assertion__Group_0_1__3__Impl : ( ( rule__Assertion__Group_0_1_3__0 )? ) ;
12539 public final void rule__Assertion__Group_0_1__3__Impl() throws RecognitionException {
12540
12541 int stackSize = keepStackSize();
12542
12543 try {
12544 // InternalProblem.g:3956:1: ( ( ( rule__Assertion__Group_0_1_3__0 )? ) )
12545 // InternalProblem.g:3957:1: ( ( rule__Assertion__Group_0_1_3__0 )? )
12546 {
12547 // InternalProblem.g:3957:1: ( ( rule__Assertion__Group_0_1_3__0 )? )
12548 // InternalProblem.g:3958:2: ( rule__Assertion__Group_0_1_3__0 )?
12549 {
12550 before(grammarAccess.getAssertionAccess().getGroup_0_1_3());
12551 // InternalProblem.g:3959:2: ( rule__Assertion__Group_0_1_3__0 )?
12552 int alt48=2;
12553 int LA48_0 = input.LA(1);
12554
12555 if ( ((LA48_0>=RULE_INT && LA48_0<=RULE_STRING)||(LA48_0>=20 && LA48_0<=21)||LA48_0==41) ) {
12556 alt48=1;
12557 }
12558 switch (alt48) {
12559 case 1 :
12560 // InternalProblem.g:3959:3: rule__Assertion__Group_0_1_3__0
12561 {
12562 pushFollow(FOLLOW_2);
12563 rule__Assertion__Group_0_1_3__0();
12564
12565 state._fsp--;
12566
12567
12568 }
12569 break;
12570
12571 }
12572
12573 after(grammarAccess.getAssertionAccess().getGroup_0_1_3());
12574
12575 }
12576
12577
12578 }
12579
12580 }
12581 catch (RecognitionException re) {
12582 reportError(re);
12583 recover(input,re);
12584 }
12585 finally {
12586
12587 restoreStackSize(stackSize);
12588
12589 }
12590 return ;
12591 }
12592 // $ANTLR end "rule__Assertion__Group_0_1__3__Impl"
12593
12594
12595 // $ANTLR start "rule__Assertion__Group_0_1__4"
12596 // InternalProblem.g:3967:1: rule__Assertion__Group_0_1__4 : rule__Assertion__Group_0_1__4__Impl ;
12597 public final void rule__Assertion__Group_0_1__4() throws RecognitionException {
12598
12599 int stackSize = keepStackSize();
12600
12601 try {
12602 // InternalProblem.g:3971:1: ( rule__Assertion__Group_0_1__4__Impl )
12603 // InternalProblem.g:3972:2: rule__Assertion__Group_0_1__4__Impl
12604 {
12605 pushFollow(FOLLOW_2);
12606 rule__Assertion__Group_0_1__4__Impl();
12607
12608 state._fsp--;
12609
12610
12611 }
12612
12613 }
12614 catch (RecognitionException re) {
12615 reportError(re);
12616 recover(input,re);
12617 }
12618 finally {
12619
12620 restoreStackSize(stackSize);
12621
12622 }
12623 return ;
12624 }
12625 // $ANTLR end "rule__Assertion__Group_0_1__4"
12626
12627
12628 // $ANTLR start "rule__Assertion__Group_0_1__4__Impl"
12629 // InternalProblem.g:3978:1: rule__Assertion__Group_0_1__4__Impl : ( ')' ) ;
12630 public final void rule__Assertion__Group_0_1__4__Impl() throws RecognitionException {
12631
12632 int stackSize = keepStackSize();
12633
12634 try {
12635 // InternalProblem.g:3982:1: ( ( ')' ) )
12636 // InternalProblem.g:3983:1: ( ')' )
12637 {
12638 // InternalProblem.g:3983:1: ( ')' )
12639 // InternalProblem.g:3984:2: ')'
12640 {
12641 before(grammarAccess.getAssertionAccess().getRightParenthesisKeyword_0_1_4());
12642 match(input,35,FOLLOW_2);
12643 after(grammarAccess.getAssertionAccess().getRightParenthesisKeyword_0_1_4());
12644
12645 }
12646
12647
12648 }
12649
12650 }
12651 catch (RecognitionException re) {
12652 reportError(re);
12653 recover(input,re);
12654 }
12655 finally {
12656
12657 restoreStackSize(stackSize);
12658
12659 }
12660 return ;
12661 }
12662 // $ANTLR end "rule__Assertion__Group_0_1__4__Impl"
12663
12664
12665 // $ANTLR start "rule__Assertion__Group_0_1_3__0"
12666 // InternalProblem.g:3994:1: rule__Assertion__Group_0_1_3__0 : rule__Assertion__Group_0_1_3__0__Impl rule__Assertion__Group_0_1_3__1 ;
12667 public final void rule__Assertion__Group_0_1_3__0() throws RecognitionException {
12668
12669 int stackSize = keepStackSize();
12670
12671 try {
12672 // InternalProblem.g:3998:1: ( rule__Assertion__Group_0_1_3__0__Impl rule__Assertion__Group_0_1_3__1 )
12673 // InternalProblem.g:3999:2: rule__Assertion__Group_0_1_3__0__Impl rule__Assertion__Group_0_1_3__1
12674 {
12675 pushFollow(FOLLOW_9);
12676 rule__Assertion__Group_0_1_3__0__Impl();
12677
12678 state._fsp--;
12679
12680 pushFollow(FOLLOW_2);
12681 rule__Assertion__Group_0_1_3__1();
12682
12683 state._fsp--;
12684
12685
12686 }
12687
12688 }
12689 catch (RecognitionException re) {
12690 reportError(re);
12691 recover(input,re);
12692 }
12693 finally {
12694
12695 restoreStackSize(stackSize);
12696
12697 }
12698 return ;
12699 }
12700 // $ANTLR end "rule__Assertion__Group_0_1_3__0"
12701
12702
12703 // $ANTLR start "rule__Assertion__Group_0_1_3__0__Impl"
12704 // InternalProblem.g:4006:1: rule__Assertion__Group_0_1_3__0__Impl : ( ( rule__Assertion__ArgumentsAssignment_0_1_3_0 ) ) ;
12705 public final void rule__Assertion__Group_0_1_3__0__Impl() throws RecognitionException {
12706
12707 int stackSize = keepStackSize();
12708
12709 try {
12710 // InternalProblem.g:4010:1: ( ( ( rule__Assertion__ArgumentsAssignment_0_1_3_0 ) ) )
12711 // InternalProblem.g:4011:1: ( ( rule__Assertion__ArgumentsAssignment_0_1_3_0 ) )
12712 {
12713 // InternalProblem.g:4011:1: ( ( rule__Assertion__ArgumentsAssignment_0_1_3_0 ) )
12714 // InternalProblem.g:4012:2: ( rule__Assertion__ArgumentsAssignment_0_1_3_0 )
12715 {
12716 before(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_1_3_0());
12717 // InternalProblem.g:4013:2: ( rule__Assertion__ArgumentsAssignment_0_1_3_0 )
12718 // InternalProblem.g:4013:3: rule__Assertion__ArgumentsAssignment_0_1_3_0
12719 {
12720 pushFollow(FOLLOW_2);
12721 rule__Assertion__ArgumentsAssignment_0_1_3_0();
12722
12723 state._fsp--;
12724
12725
12726 }
12727
12728 after(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_1_3_0());
12729
12730 }
12731
12732
12733 }
12734
12735 }
12736 catch (RecognitionException re) {
12737 reportError(re);
12738 recover(input,re);
12739 }
12740 finally {
12741
12742 restoreStackSize(stackSize);
12743
12744 }
12745 return ;
12746 }
12747 // $ANTLR end "rule__Assertion__Group_0_1_3__0__Impl"
12748
12749
12750 // $ANTLR start "rule__Assertion__Group_0_1_3__1"
12751 // InternalProblem.g:4021:1: rule__Assertion__Group_0_1_3__1 : rule__Assertion__Group_0_1_3__1__Impl ;
12752 public final void rule__Assertion__Group_0_1_3__1() throws RecognitionException {
12753
12754 int stackSize = keepStackSize();
12755
12756 try {
12757 // InternalProblem.g:4025:1: ( rule__Assertion__Group_0_1_3__1__Impl )
12758 // InternalProblem.g:4026:2: rule__Assertion__Group_0_1_3__1__Impl
12759 {
12760 pushFollow(FOLLOW_2);
12761 rule__Assertion__Group_0_1_3__1__Impl();
12762
12763 state._fsp--;
12764
12765
12766 }
12767
12768 }
12769 catch (RecognitionException re) {
12770 reportError(re);
12771 recover(input,re);
12772 }
12773 finally {
12774
12775 restoreStackSize(stackSize);
12776
12777 }
12778 return ;
12779 }
12780 // $ANTLR end "rule__Assertion__Group_0_1_3__1"
12781
12782
12783 // $ANTLR start "rule__Assertion__Group_0_1_3__1__Impl"
12784 // InternalProblem.g:4032:1: rule__Assertion__Group_0_1_3__1__Impl : ( ( rule__Assertion__Group_0_1_3_1__0 )* ) ;
12785 public final void rule__Assertion__Group_0_1_3__1__Impl() throws RecognitionException {
12786
12787 int stackSize = keepStackSize();
12788
12789 try {
12790 // InternalProblem.g:4036:1: ( ( ( rule__Assertion__Group_0_1_3_1__0 )* ) )
12791 // InternalProblem.g:4037:1: ( ( rule__Assertion__Group_0_1_3_1__0 )* )
12792 {
12793 // InternalProblem.g:4037:1: ( ( rule__Assertion__Group_0_1_3_1__0 )* )
12794 // InternalProblem.g:4038:2: ( rule__Assertion__Group_0_1_3_1__0 )*
12795 {
12796 before(grammarAccess.getAssertionAccess().getGroup_0_1_3_1());
12797 // InternalProblem.g:4039:2: ( rule__Assertion__Group_0_1_3_1__0 )*
12798 loop49:
12799 do {
12800 int alt49=2;
12801 int LA49_0 = input.LA(1);
12802
12803 if ( (LA49_0==14) ) {
12804 alt49=1;
12805 }
12806
12807
12808 switch (alt49) {
12809 case 1 :
12810 // InternalProblem.g:4039:3: rule__Assertion__Group_0_1_3_1__0
12811 {
12812 pushFollow(FOLLOW_10);
12813 rule__Assertion__Group_0_1_3_1__0();
12814
12815 state._fsp--;
12816
12817
12818 }
12819 break;
12820
12821 default :
12822 break loop49;
12823 }
12824 } while (true);
12825
12826 after(grammarAccess.getAssertionAccess().getGroup_0_1_3_1());
12827
12828 }
12829
12830
12831 }
12832
12833 }
12834 catch (RecognitionException re) {
12835 reportError(re);
12836 recover(input,re);
12837 }
12838 finally {
12839
12840 restoreStackSize(stackSize);
12841
12842 }
12843 return ;
12844 }
12845 // $ANTLR end "rule__Assertion__Group_0_1_3__1__Impl"
12846
12847
12848 // $ANTLR start "rule__Assertion__Group_0_1_3_1__0"
12849 // InternalProblem.g:4048:1: rule__Assertion__Group_0_1_3_1__0 : rule__Assertion__Group_0_1_3_1__0__Impl rule__Assertion__Group_0_1_3_1__1 ;
12850 public final void rule__Assertion__Group_0_1_3_1__0() throws RecognitionException {
12851
12852 int stackSize = keepStackSize();
12853
12854 try {
12855 // InternalProblem.g:4052:1: ( rule__Assertion__Group_0_1_3_1__0__Impl rule__Assertion__Group_0_1_3_1__1 )
12856 // InternalProblem.g:4053:2: rule__Assertion__Group_0_1_3_1__0__Impl rule__Assertion__Group_0_1_3_1__1
12857 {
12858 pushFollow(FOLLOW_30);
12859 rule__Assertion__Group_0_1_3_1__0__Impl();
12860
12861 state._fsp--;
12862
12863 pushFollow(FOLLOW_2);
12864 rule__Assertion__Group_0_1_3_1__1();
12865
12866 state._fsp--;
12867
12868
12869 }
12870
12871 }
12872 catch (RecognitionException re) {
12873 reportError(re);
12874 recover(input,re);
12875 }
12876 finally {
12877
12878 restoreStackSize(stackSize);
12879
12880 }
12881 return ;
12882 }
12883 // $ANTLR end "rule__Assertion__Group_0_1_3_1__0"
12884
12885
12886 // $ANTLR start "rule__Assertion__Group_0_1_3_1__0__Impl"
12887 // InternalProblem.g:4060:1: rule__Assertion__Group_0_1_3_1__0__Impl : ( ',' ) ;
12888 public final void rule__Assertion__Group_0_1_3_1__0__Impl() throws RecognitionException {
12889
12890 int stackSize = keepStackSize();
12891
12892 try {
12893 // InternalProblem.g:4064:1: ( ( ',' ) )
12894 // InternalProblem.g:4065:1: ( ',' )
12895 {
12896 // InternalProblem.g:4065:1: ( ',' )
12897 // InternalProblem.g:4066:2: ','
12898 {
12899 before(grammarAccess.getAssertionAccess().getCommaKeyword_0_1_3_1_0());
12900 match(input,14,FOLLOW_2);
12901 after(grammarAccess.getAssertionAccess().getCommaKeyword_0_1_3_1_0());
12902
12903 }
12904
12905
12906 }
12907
12908 }
12909 catch (RecognitionException re) {
12910 reportError(re);
12911 recover(input,re);
12912 }
12913 finally {
12914
12915 restoreStackSize(stackSize);
12916
12917 }
12918 return ;
12919 }
12920 // $ANTLR end "rule__Assertion__Group_0_1_3_1__0__Impl"
12921
12922
12923 // $ANTLR start "rule__Assertion__Group_0_1_3_1__1"
12924 // InternalProblem.g:4075:1: rule__Assertion__Group_0_1_3_1__1 : rule__Assertion__Group_0_1_3_1__1__Impl ;
12925 public final void rule__Assertion__Group_0_1_3_1__1() throws RecognitionException {
12926
12927 int stackSize = keepStackSize();
12928
12929 try {
12930 // InternalProblem.g:4079:1: ( rule__Assertion__Group_0_1_3_1__1__Impl )
12931 // InternalProblem.g:4080:2: rule__Assertion__Group_0_1_3_1__1__Impl
12932 {
12933 pushFollow(FOLLOW_2);
12934 rule__Assertion__Group_0_1_3_1__1__Impl();
12935
12936 state._fsp--;
12937
12938
12939 }
12940
12941 }
12942 catch (RecognitionException re) {
12943 reportError(re);
12944 recover(input,re);
12945 }
12946 finally {
12947
12948 restoreStackSize(stackSize);
12949
12950 }
12951 return ;
12952 }
12953 // $ANTLR end "rule__Assertion__Group_0_1_3_1__1"
12954
12955
12956 // $ANTLR start "rule__Assertion__Group_0_1_3_1__1__Impl"
12957 // InternalProblem.g:4086:1: rule__Assertion__Group_0_1_3_1__1__Impl : ( ( rule__Assertion__ArgumentsAssignment_0_1_3_1_1 ) ) ;
12958 public final void rule__Assertion__Group_0_1_3_1__1__Impl() throws RecognitionException {
12959
12960 int stackSize = keepStackSize();
12961
12962 try {
12963 // InternalProblem.g:4090:1: ( ( ( rule__Assertion__ArgumentsAssignment_0_1_3_1_1 ) ) )
12964 // InternalProblem.g:4091:1: ( ( rule__Assertion__ArgumentsAssignment_0_1_3_1_1 ) )
12965 {
12966 // InternalProblem.g:4091:1: ( ( rule__Assertion__ArgumentsAssignment_0_1_3_1_1 ) )
12967 // InternalProblem.g:4092:2: ( rule__Assertion__ArgumentsAssignment_0_1_3_1_1 )
12968 {
12969 before(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_1_3_1_1());
12970 // InternalProblem.g:4093:2: ( rule__Assertion__ArgumentsAssignment_0_1_3_1_1 )
12971 // InternalProblem.g:4093:3: rule__Assertion__ArgumentsAssignment_0_1_3_1_1
12972 {
12973 pushFollow(FOLLOW_2);
12974 rule__Assertion__ArgumentsAssignment_0_1_3_1_1();
12975
12976 state._fsp--;
12977
12978
12979 }
12980
12981 after(grammarAccess.getAssertionAccess().getArgumentsAssignment_0_1_3_1_1());
12982
12983 }
12984
12985
12986 }
12987
12988 }
12989 catch (RecognitionException re) {
12990 reportError(re);
12991 recover(input,re);
12992 }
12993 finally {
12994
12995 restoreStackSize(stackSize);
12996
12997 }
12998 return ;
12999 }
13000 // $ANTLR end "rule__Assertion__Group_0_1_3_1__1__Impl"
13001
13002
13003 // $ANTLR start "rule__NodeValueAssertion__Group__0"
13004 // InternalProblem.g:4102:1: rule__NodeValueAssertion__Group__0 : rule__NodeValueAssertion__Group__0__Impl rule__NodeValueAssertion__Group__1 ;
13005 public final void rule__NodeValueAssertion__Group__0() throws RecognitionException {
13006
13007 int stackSize = keepStackSize();
13008
13009 try {
13010 // InternalProblem.g:4106:1: ( rule__NodeValueAssertion__Group__0__Impl rule__NodeValueAssertion__Group__1 )
13011 // InternalProblem.g:4107:2: rule__NodeValueAssertion__Group__0__Impl rule__NodeValueAssertion__Group__1
13012 {
13013 pushFollow(FOLLOW_31);
13014 rule__NodeValueAssertion__Group__0__Impl();
13015
13016 state._fsp--;
13017
13018 pushFollow(FOLLOW_2);
13019 rule__NodeValueAssertion__Group__1();
13020
13021 state._fsp--;
13022
13023
13024 }
13025
13026 }
13027 catch (RecognitionException re) {
13028 reportError(re);
13029 recover(input,re);
13030 }
13031 finally {
13032
13033 restoreStackSize(stackSize);
13034
13035 }
13036 return ;
13037 }
13038 // $ANTLR end "rule__NodeValueAssertion__Group__0"
13039
13040
13041 // $ANTLR start "rule__NodeValueAssertion__Group__0__Impl"
13042 // InternalProblem.g:4114:1: rule__NodeValueAssertion__Group__0__Impl : ( ( rule__NodeValueAssertion__NodeAssignment_0 ) ) ;
13043 public final void rule__NodeValueAssertion__Group__0__Impl() throws RecognitionException {
13044
13045 int stackSize = keepStackSize();
13046
13047 try {
13048 // InternalProblem.g:4118:1: ( ( ( rule__NodeValueAssertion__NodeAssignment_0 ) ) )
13049 // InternalProblem.g:4119:1: ( ( rule__NodeValueAssertion__NodeAssignment_0 ) )
13050 {
13051 // InternalProblem.g:4119:1: ( ( rule__NodeValueAssertion__NodeAssignment_0 ) )
13052 // InternalProblem.g:4120:2: ( rule__NodeValueAssertion__NodeAssignment_0 )
13053 {
13054 before(grammarAccess.getNodeValueAssertionAccess().getNodeAssignment_0());
13055 // InternalProblem.g:4121:2: ( rule__NodeValueAssertion__NodeAssignment_0 )
13056 // InternalProblem.g:4121:3: rule__NodeValueAssertion__NodeAssignment_0
13057 {
13058 pushFollow(FOLLOW_2);
13059 rule__NodeValueAssertion__NodeAssignment_0();
13060
13061 state._fsp--;
13062
13063
13064 }
13065
13066 after(grammarAccess.getNodeValueAssertionAccess().getNodeAssignment_0());
13067
13068 }
13069
13070
13071 }
13072
13073 }
13074 catch (RecognitionException re) {
13075 reportError(re);
13076 recover(input,re);
13077 }
13078 finally {
13079
13080 restoreStackSize(stackSize);
13081
13082 }
13083 return ;
13084 }
13085 // $ANTLR end "rule__NodeValueAssertion__Group__0__Impl"
13086
13087
13088 // $ANTLR start "rule__NodeValueAssertion__Group__1"
13089 // InternalProblem.g:4129:1: rule__NodeValueAssertion__Group__1 : rule__NodeValueAssertion__Group__1__Impl rule__NodeValueAssertion__Group__2 ;
13090 public final void rule__NodeValueAssertion__Group__1() throws RecognitionException {
13091
13092 int stackSize = keepStackSize();
13093
13094 try {
13095 // InternalProblem.g:4133:1: ( rule__NodeValueAssertion__Group__1__Impl rule__NodeValueAssertion__Group__2 )
13096 // InternalProblem.g:4134:2: rule__NodeValueAssertion__Group__1__Impl rule__NodeValueAssertion__Group__2
13097 {
13098 pushFollow(FOLLOW_30);
13099 rule__NodeValueAssertion__Group__1__Impl();
13100
13101 state._fsp--;
13102
13103 pushFollow(FOLLOW_2);
13104 rule__NodeValueAssertion__Group__2();
13105
13106 state._fsp--;
13107
13108
13109 }
13110
13111 }
13112 catch (RecognitionException re) {
13113 reportError(re);
13114 recover(input,re);
13115 }
13116 finally {
13117
13118 restoreStackSize(stackSize);
13119
13120 }
13121 return ;
13122 }
13123 // $ANTLR end "rule__NodeValueAssertion__Group__1"
13124
13125
13126 // $ANTLR start "rule__NodeValueAssertion__Group__1__Impl"
13127 // InternalProblem.g:4141:1: rule__NodeValueAssertion__Group__1__Impl : ( ':' ) ;
13128 public final void rule__NodeValueAssertion__Group__1__Impl() throws RecognitionException {
13129
13130 int stackSize = keepStackSize();
13131
13132 try {
13133 // InternalProblem.g:4145:1: ( ( ':' ) )
13134 // InternalProblem.g:4146:1: ( ':' )
13135 {
13136 // InternalProblem.g:4146:1: ( ':' )
13137 // InternalProblem.g:4147:2: ':'
13138 {
13139 before(grammarAccess.getNodeValueAssertionAccess().getColonKeyword_1());
13140 match(input,37,FOLLOW_2);
13141 after(grammarAccess.getNodeValueAssertionAccess().getColonKeyword_1());
13142
13143 }
13144
13145
13146 }
13147
13148 }
13149 catch (RecognitionException re) {
13150 reportError(re);
13151 recover(input,re);
13152 }
13153 finally {
13154
13155 restoreStackSize(stackSize);
13156
13157 }
13158 return ;
13159 }
13160 // $ANTLR end "rule__NodeValueAssertion__Group__1__Impl"
13161
13162
13163 // $ANTLR start "rule__NodeValueAssertion__Group__2"
13164 // InternalProblem.g:4156:1: rule__NodeValueAssertion__Group__2 : rule__NodeValueAssertion__Group__2__Impl rule__NodeValueAssertion__Group__3 ;
13165 public final void rule__NodeValueAssertion__Group__2() throws RecognitionException {
13166
13167 int stackSize = keepStackSize();
13168
13169 try {
13170 // InternalProblem.g:4160:1: ( rule__NodeValueAssertion__Group__2__Impl rule__NodeValueAssertion__Group__3 )
13171 // InternalProblem.g:4161:2: rule__NodeValueAssertion__Group__2__Impl rule__NodeValueAssertion__Group__3
13172 {
13173 pushFollow(FOLLOW_6);
13174 rule__NodeValueAssertion__Group__2__Impl();
13175
13176 state._fsp--;
13177
13178 pushFollow(FOLLOW_2);
13179 rule__NodeValueAssertion__Group__3();
13180
13181 state._fsp--;
13182
13183
13184 }
13185
13186 }
13187 catch (RecognitionException re) {
13188 reportError(re);
13189 recover(input,re);
13190 }
13191 finally {
13192
13193 restoreStackSize(stackSize);
13194
13195 }
13196 return ;
13197 }
13198 // $ANTLR end "rule__NodeValueAssertion__Group__2"
13199
13200
13201 // $ANTLR start "rule__NodeValueAssertion__Group__2__Impl"
13202 // InternalProblem.g:4168:1: rule__NodeValueAssertion__Group__2__Impl : ( ( rule__NodeValueAssertion__ValueAssignment_2 ) ) ;
13203 public final void rule__NodeValueAssertion__Group__2__Impl() throws RecognitionException {
13204
13205 int stackSize = keepStackSize();
13206
13207 try {
13208 // InternalProblem.g:4172:1: ( ( ( rule__NodeValueAssertion__ValueAssignment_2 ) ) )
13209 // InternalProblem.g:4173:1: ( ( rule__NodeValueAssertion__ValueAssignment_2 ) )
13210 {
13211 // InternalProblem.g:4173:1: ( ( rule__NodeValueAssertion__ValueAssignment_2 ) )
13212 // InternalProblem.g:4174:2: ( rule__NodeValueAssertion__ValueAssignment_2 )
13213 {
13214 before(grammarAccess.getNodeValueAssertionAccess().getValueAssignment_2());
13215 // InternalProblem.g:4175:2: ( rule__NodeValueAssertion__ValueAssignment_2 )
13216 // InternalProblem.g:4175:3: rule__NodeValueAssertion__ValueAssignment_2
13217 {
13218 pushFollow(FOLLOW_2);
13219 rule__NodeValueAssertion__ValueAssignment_2();
13220
13221 state._fsp--;
13222
13223
13224 }
13225
13226 after(grammarAccess.getNodeValueAssertionAccess().getValueAssignment_2());
13227
13228 }
13229
13230
13231 }
13232
13233 }
13234 catch (RecognitionException re) {
13235 reportError(re);
13236 recover(input,re);
13237 }
13238 finally {
13239
13240 restoreStackSize(stackSize);
13241
13242 }
13243 return ;
13244 }
13245 // $ANTLR end "rule__NodeValueAssertion__Group__2__Impl"
13246
13247
13248 // $ANTLR start "rule__NodeValueAssertion__Group__3"
13249 // InternalProblem.g:4183:1: rule__NodeValueAssertion__Group__3 : rule__NodeValueAssertion__Group__3__Impl ;
13250 public final void rule__NodeValueAssertion__Group__3() throws RecognitionException {
13251
13252 int stackSize = keepStackSize();
13253
13254 try {
13255 // InternalProblem.g:4187:1: ( rule__NodeValueAssertion__Group__3__Impl )
13256 // InternalProblem.g:4188:2: rule__NodeValueAssertion__Group__3__Impl
13257 {
13258 pushFollow(FOLLOW_2);
13259 rule__NodeValueAssertion__Group__3__Impl();
13260
13261 state._fsp--;
13262
13263
13264 }
13265
13266 }
13267 catch (RecognitionException re) {
13268 reportError(re);
13269 recover(input,re);
13270 }
13271 finally {
13272
13273 restoreStackSize(stackSize);
13274
13275 }
13276 return ;
13277 }
13278 // $ANTLR end "rule__NodeValueAssertion__Group__3"
13279
13280
13281 // $ANTLR start "rule__NodeValueAssertion__Group__3__Impl"
13282 // InternalProblem.g:4194:1: rule__NodeValueAssertion__Group__3__Impl : ( '.' ) ;
13283 public final void rule__NodeValueAssertion__Group__3__Impl() throws RecognitionException {
13284
13285 int stackSize = keepStackSize();
13286
13287 try {
13288 // InternalProblem.g:4198:1: ( ( '.' ) )
13289 // InternalProblem.g:4199:1: ( '.' )
13290 {
13291 // InternalProblem.g:4199:1: ( '.' )
13292 // InternalProblem.g:4200:2: '.'
13293 {
13294 before(grammarAccess.getNodeValueAssertionAccess().getFullStopKeyword_3());
13295 match(input,13,FOLLOW_2);
13296 after(grammarAccess.getNodeValueAssertionAccess().getFullStopKeyword_3());
13297
13298 }
13299
13300
13301 }
13302
13303 }
13304 catch (RecognitionException re) {
13305 reportError(re);
13306 recover(input,re);
13307 }
13308 finally {
13309
13310 restoreStackSize(stackSize);
13311
13312 }
13313 return ;
13314 }
13315 // $ANTLR end "rule__NodeValueAssertion__Group__3__Impl"
13316
13317
13318 // $ANTLR start "rule__ScopeDeclaration__Group__0"
13319 // InternalProblem.g:4210:1: rule__ScopeDeclaration__Group__0 : rule__ScopeDeclaration__Group__0__Impl rule__ScopeDeclaration__Group__1 ;
13320 public final void rule__ScopeDeclaration__Group__0() throws RecognitionException {
13321
13322 int stackSize = keepStackSize();
13323
13324 try {
13325 // InternalProblem.g:4214:1: ( rule__ScopeDeclaration__Group__0__Impl rule__ScopeDeclaration__Group__1 )
13326 // InternalProblem.g:4215:2: rule__ScopeDeclaration__Group__0__Impl rule__ScopeDeclaration__Group__1
13327 {
13328 pushFollow(FOLLOW_34);
13329 rule__ScopeDeclaration__Group__0__Impl();
13330
13331 state._fsp--;
13332
13333 pushFollow(FOLLOW_2);
13334 rule__ScopeDeclaration__Group__1();
13335
13336 state._fsp--;
13337
13338
13339 }
13340
13341 }
13342 catch (RecognitionException re) {
13343 reportError(re);
13344 recover(input,re);
13345 }
13346 finally {
13347
13348 restoreStackSize(stackSize);
13349
13350 }
13351 return ;
13352 }
13353 // $ANTLR end "rule__ScopeDeclaration__Group__0"
13354
13355
13356 // $ANTLR start "rule__ScopeDeclaration__Group__0__Impl"
13357 // InternalProblem.g:4222:1: rule__ScopeDeclaration__Group__0__Impl : ( 'scope' ) ;
13358 public final void rule__ScopeDeclaration__Group__0__Impl() throws RecognitionException {
13359
13360 int stackSize = keepStackSize();
13361
13362 try {
13363 // InternalProblem.g:4226:1: ( ( 'scope' ) )
13364 // InternalProblem.g:4227:1: ( 'scope' )
13365 {
13366 // InternalProblem.g:4227:1: ( 'scope' )
13367 // InternalProblem.g:4228:2: 'scope'
13368 {
13369 before(grammarAccess.getScopeDeclarationAccess().getScopeKeyword_0());
13370 match(input,38,FOLLOW_2);
13371 after(grammarAccess.getScopeDeclarationAccess().getScopeKeyword_0());
13372
13373 }
13374
13375
13376 }
13377
13378 }
13379 catch (RecognitionException re) {
13380 reportError(re);
13381 recover(input,re);
13382 }
13383 finally {
13384
13385 restoreStackSize(stackSize);
13386
13387 }
13388 return ;
13389 }
13390 // $ANTLR end "rule__ScopeDeclaration__Group__0__Impl"
13391
13392
13393 // $ANTLR start "rule__ScopeDeclaration__Group__1"
13394 // InternalProblem.g:4237:1: rule__ScopeDeclaration__Group__1 : rule__ScopeDeclaration__Group__1__Impl rule__ScopeDeclaration__Group__2 ;
13395 public final void rule__ScopeDeclaration__Group__1() throws RecognitionException {
13396
13397 int stackSize = keepStackSize();
13398
13399 try {
13400 // InternalProblem.g:4241:1: ( rule__ScopeDeclaration__Group__1__Impl rule__ScopeDeclaration__Group__2 )
13401 // InternalProblem.g:4242:2: rule__ScopeDeclaration__Group__1__Impl rule__ScopeDeclaration__Group__2
13402 {
13403 pushFollow(FOLLOW_35);
13404 rule__ScopeDeclaration__Group__1__Impl();
13405
13406 state._fsp--;
13407
13408 pushFollow(FOLLOW_2);
13409 rule__ScopeDeclaration__Group__2();
13410
13411 state._fsp--;
13412
13413
13414 }
13415
13416 }
13417 catch (RecognitionException re) {
13418 reportError(re);
13419 recover(input,re);
13420 }
13421 finally {
13422
13423 restoreStackSize(stackSize);
13424
13425 }
13426 return ;
13427 }
13428 // $ANTLR end "rule__ScopeDeclaration__Group__1"
13429
13430
13431 // $ANTLR start "rule__ScopeDeclaration__Group__1__Impl"
13432 // InternalProblem.g:4249:1: rule__ScopeDeclaration__Group__1__Impl : ( ( rule__ScopeDeclaration__TypeScopesAssignment_1 ) ) ;
13433 public final void rule__ScopeDeclaration__Group__1__Impl() throws RecognitionException {
13434
13435 int stackSize = keepStackSize();
13436
13437 try {
13438 // InternalProblem.g:4253:1: ( ( ( rule__ScopeDeclaration__TypeScopesAssignment_1 ) ) )
13439 // InternalProblem.g:4254:1: ( ( rule__ScopeDeclaration__TypeScopesAssignment_1 ) )
13440 {
13441 // InternalProblem.g:4254:1: ( ( rule__ScopeDeclaration__TypeScopesAssignment_1 ) )
13442 // InternalProblem.g:4255:2: ( rule__ScopeDeclaration__TypeScopesAssignment_1 )
13443 {
13444 before(grammarAccess.getScopeDeclarationAccess().getTypeScopesAssignment_1());
13445 // InternalProblem.g:4256:2: ( rule__ScopeDeclaration__TypeScopesAssignment_1 )
13446 // InternalProblem.g:4256:3: rule__ScopeDeclaration__TypeScopesAssignment_1
13447 {
13448 pushFollow(FOLLOW_2);
13449 rule__ScopeDeclaration__TypeScopesAssignment_1();
13450
13451 state._fsp--;
13452
13453
13454 }
13455
13456 after(grammarAccess.getScopeDeclarationAccess().getTypeScopesAssignment_1());
13457
13458 }
13459
13460
13461 }
13462
13463 }
13464 catch (RecognitionException re) {
13465 reportError(re);
13466 recover(input,re);
13467 }
13468 finally {
13469
13470 restoreStackSize(stackSize);
13471
13472 }
13473 return ;
13474 }
13475 // $ANTLR end "rule__ScopeDeclaration__Group__1__Impl"
13476
13477
13478 // $ANTLR start "rule__ScopeDeclaration__Group__2"
13479 // InternalProblem.g:4264:1: rule__ScopeDeclaration__Group__2 : rule__ScopeDeclaration__Group__2__Impl rule__ScopeDeclaration__Group__3 ;
13480 public final void rule__ScopeDeclaration__Group__2() throws RecognitionException {
13481
13482 int stackSize = keepStackSize();
13483
13484 try {
13485 // InternalProblem.g:4268:1: ( rule__ScopeDeclaration__Group__2__Impl rule__ScopeDeclaration__Group__3 )
13486 // InternalProblem.g:4269:2: rule__ScopeDeclaration__Group__2__Impl rule__ScopeDeclaration__Group__3
13487 {
13488 pushFollow(FOLLOW_35);
13489 rule__ScopeDeclaration__Group__2__Impl();
13490
13491 state._fsp--;
13492
13493 pushFollow(FOLLOW_2);
13494 rule__ScopeDeclaration__Group__3();
13495
13496 state._fsp--;
13497
13498
13499 }
13500
13501 }
13502 catch (RecognitionException re) {
13503 reportError(re);
13504 recover(input,re);
13505 }
13506 finally {
13507
13508 restoreStackSize(stackSize);
13509
13510 }
13511 return ;
13512 }
13513 // $ANTLR end "rule__ScopeDeclaration__Group__2"
13514
13515
13516 // $ANTLR start "rule__ScopeDeclaration__Group__2__Impl"
13517 // InternalProblem.g:4276:1: rule__ScopeDeclaration__Group__2__Impl : ( ( rule__ScopeDeclaration__Group_2__0 )* ) ;
13518 public final void rule__ScopeDeclaration__Group__2__Impl() throws RecognitionException {
13519
13520 int stackSize = keepStackSize();
13521
13522 try {
13523 // InternalProblem.g:4280:1: ( ( ( rule__ScopeDeclaration__Group_2__0 )* ) )
13524 // InternalProblem.g:4281:1: ( ( rule__ScopeDeclaration__Group_2__0 )* )
13525 {
13526 // InternalProblem.g:4281:1: ( ( rule__ScopeDeclaration__Group_2__0 )* )
13527 // InternalProblem.g:4282:2: ( rule__ScopeDeclaration__Group_2__0 )*
13528 {
13529 before(grammarAccess.getScopeDeclarationAccess().getGroup_2());
13530 // InternalProblem.g:4283:2: ( rule__ScopeDeclaration__Group_2__0 )*
13531 loop50:
13532 do {
13533 int alt50=2;
13534 int LA50_0 = input.LA(1);
13535
13536 if ( (LA50_0==14) ) {
13537 alt50=1;
13538 }
13539
13540
13541 switch (alt50) {
13542 case 1 :
13543 // InternalProblem.g:4283:3: rule__ScopeDeclaration__Group_2__0
13544 {
13545 pushFollow(FOLLOW_10);
13546 rule__ScopeDeclaration__Group_2__0();
13547
13548 state._fsp--;
13549
13550
13551 }
13552 break;
13553
13554 default :
13555 break loop50;
13556 }
13557 } while (true);
13558
13559 after(grammarAccess.getScopeDeclarationAccess().getGroup_2());
13560
13561 }
13562
13563
13564 }
13565
13566 }
13567 catch (RecognitionException re) {
13568 reportError(re);
13569 recover(input,re);
13570 }
13571 finally {
13572
13573 restoreStackSize(stackSize);
13574
13575 }
13576 return ;
13577 }
13578 // $ANTLR end "rule__ScopeDeclaration__Group__2__Impl"
13579
13580
13581 // $ANTLR start "rule__ScopeDeclaration__Group__3"
13582 // InternalProblem.g:4291:1: rule__ScopeDeclaration__Group__3 : rule__ScopeDeclaration__Group__3__Impl ;
13583 public final void rule__ScopeDeclaration__Group__3() throws RecognitionException {
13584
13585 int stackSize = keepStackSize();
13586
13587 try {
13588 // InternalProblem.g:4295:1: ( rule__ScopeDeclaration__Group__3__Impl )
13589 // InternalProblem.g:4296:2: rule__ScopeDeclaration__Group__3__Impl
13590 {
13591 pushFollow(FOLLOW_2);
13592 rule__ScopeDeclaration__Group__3__Impl();
13593
13594 state._fsp--;
13595
13596
13597 }
13598
13599 }
13600 catch (RecognitionException re) {
13601 reportError(re);
13602 recover(input,re);
13603 }
13604 finally {
13605
13606 restoreStackSize(stackSize);
13607
13608 }
13609 return ;
13610 }
13611 // $ANTLR end "rule__ScopeDeclaration__Group__3"
13612
13613
13614 // $ANTLR start "rule__ScopeDeclaration__Group__3__Impl"
13615 // InternalProblem.g:4302:1: rule__ScopeDeclaration__Group__3__Impl : ( '.' ) ;
13616 public final void rule__ScopeDeclaration__Group__3__Impl() throws RecognitionException {
13617
13618 int stackSize = keepStackSize();
13619
13620 try {
13621 // InternalProblem.g:4306:1: ( ( '.' ) )
13622 // InternalProblem.g:4307:1: ( '.' )
13623 {
13624 // InternalProblem.g:4307:1: ( '.' )
13625 // InternalProblem.g:4308:2: '.'
13626 {
13627 before(grammarAccess.getScopeDeclarationAccess().getFullStopKeyword_3());
13628 match(input,13,FOLLOW_2);
13629 after(grammarAccess.getScopeDeclarationAccess().getFullStopKeyword_3());
13630
13631 }
13632
13633
13634 }
13635
13636 }
13637 catch (RecognitionException re) {
13638 reportError(re);
13639 recover(input,re);
13640 }
13641 finally {
13642
13643 restoreStackSize(stackSize);
13644
13645 }
13646 return ;
13647 }
13648 // $ANTLR end "rule__ScopeDeclaration__Group__3__Impl"
13649
13650
13651 // $ANTLR start "rule__ScopeDeclaration__Group_2__0"
13652 // InternalProblem.g:4318:1: rule__ScopeDeclaration__Group_2__0 : rule__ScopeDeclaration__Group_2__0__Impl rule__ScopeDeclaration__Group_2__1 ;
13653 public final void rule__ScopeDeclaration__Group_2__0() throws RecognitionException {
13654
13655 int stackSize = keepStackSize();
13656
13657 try {
13658 // InternalProblem.g:4322:1: ( rule__ScopeDeclaration__Group_2__0__Impl rule__ScopeDeclaration__Group_2__1 )
13659 // InternalProblem.g:4323:2: rule__ScopeDeclaration__Group_2__0__Impl rule__ScopeDeclaration__Group_2__1
13660 {
13661 pushFollow(FOLLOW_34);
13662 rule__ScopeDeclaration__Group_2__0__Impl();
13663
13664 state._fsp--;
13665
13666 pushFollow(FOLLOW_2);
13667 rule__ScopeDeclaration__Group_2__1();
13668
13669 state._fsp--;
13670
13671
13672 }
13673
13674 }
13675 catch (RecognitionException re) {
13676 reportError(re);
13677 recover(input,re);
13678 }
13679 finally {
13680
13681 restoreStackSize(stackSize);
13682
13683 }
13684 return ;
13685 }
13686 // $ANTLR end "rule__ScopeDeclaration__Group_2__0"
13687
13688
13689 // $ANTLR start "rule__ScopeDeclaration__Group_2__0__Impl"
13690 // InternalProblem.g:4330:1: rule__ScopeDeclaration__Group_2__0__Impl : ( ',' ) ;
13691 public final void rule__ScopeDeclaration__Group_2__0__Impl() throws RecognitionException {
13692
13693 int stackSize = keepStackSize();
13694
13695 try {
13696 // InternalProblem.g:4334:1: ( ( ',' ) )
13697 // InternalProblem.g:4335:1: ( ',' )
13698 {
13699 // InternalProblem.g:4335:1: ( ',' )
13700 // InternalProblem.g:4336:2: ','
13701 {
13702 before(grammarAccess.getScopeDeclarationAccess().getCommaKeyword_2_0());
13703 match(input,14,FOLLOW_2);
13704 after(grammarAccess.getScopeDeclarationAccess().getCommaKeyword_2_0());
13705
13706 }
13707
13708
13709 }
13710
13711 }
13712 catch (RecognitionException re) {
13713 reportError(re);
13714 recover(input,re);
13715 }
13716 finally {
13717
13718 restoreStackSize(stackSize);
13719
13720 }
13721 return ;
13722 }
13723 // $ANTLR end "rule__ScopeDeclaration__Group_2__0__Impl"
13724
13725
13726 // $ANTLR start "rule__ScopeDeclaration__Group_2__1"
13727 // InternalProblem.g:4345:1: rule__ScopeDeclaration__Group_2__1 : rule__ScopeDeclaration__Group_2__1__Impl ;
13728 public final void rule__ScopeDeclaration__Group_2__1() throws RecognitionException {
13729
13730 int stackSize = keepStackSize();
13731
13732 try {
13733 // InternalProblem.g:4349:1: ( rule__ScopeDeclaration__Group_2__1__Impl )
13734 // InternalProblem.g:4350:2: rule__ScopeDeclaration__Group_2__1__Impl
13735 {
13736 pushFollow(FOLLOW_2);
13737 rule__ScopeDeclaration__Group_2__1__Impl();
13738
13739 state._fsp--;
13740
13741
13742 }
13743
13744 }
13745 catch (RecognitionException re) {
13746 reportError(re);
13747 recover(input,re);
13748 }
13749 finally {
13750
13751 restoreStackSize(stackSize);
13752
13753 }
13754 return ;
13755 }
13756 // $ANTLR end "rule__ScopeDeclaration__Group_2__1"
13757
13758
13759 // $ANTLR start "rule__ScopeDeclaration__Group_2__1__Impl"
13760 // InternalProblem.g:4356:1: rule__ScopeDeclaration__Group_2__1__Impl : ( ( rule__ScopeDeclaration__TypeScopesAssignment_2_1 ) ) ;
13761 public final void rule__ScopeDeclaration__Group_2__1__Impl() throws RecognitionException {
13762
13763 int stackSize = keepStackSize();
13764
13765 try {
13766 // InternalProblem.g:4360:1: ( ( ( rule__ScopeDeclaration__TypeScopesAssignment_2_1 ) ) )
13767 // InternalProblem.g:4361:1: ( ( rule__ScopeDeclaration__TypeScopesAssignment_2_1 ) )
13768 {
13769 // InternalProblem.g:4361:1: ( ( rule__ScopeDeclaration__TypeScopesAssignment_2_1 ) )
13770 // InternalProblem.g:4362:2: ( rule__ScopeDeclaration__TypeScopesAssignment_2_1 )
13771 {
13772 before(grammarAccess.getScopeDeclarationAccess().getTypeScopesAssignment_2_1());
13773 // InternalProblem.g:4363:2: ( rule__ScopeDeclaration__TypeScopesAssignment_2_1 )
13774 // InternalProblem.g:4363:3: rule__ScopeDeclaration__TypeScopesAssignment_2_1
13775 {
13776 pushFollow(FOLLOW_2);
13777 rule__ScopeDeclaration__TypeScopesAssignment_2_1();
13778
13779 state._fsp--;
13780
13781
13782 }
13783
13784 after(grammarAccess.getScopeDeclarationAccess().getTypeScopesAssignment_2_1());
13785
13786 }
13787
13788
13789 }
13790
13791 }
13792 catch (RecognitionException re) {
13793 reportError(re);
13794 recover(input,re);
13795 }
13796 finally {
13797
13798 restoreStackSize(stackSize);
13799
13800 }
13801 return ;
13802 }
13803 // $ANTLR end "rule__ScopeDeclaration__Group_2__1__Impl"
13804
13805
13806 // $ANTLR start "rule__TypeScope__Group__0"
13807 // InternalProblem.g:4372:1: rule__TypeScope__Group__0 : rule__TypeScope__Group__0__Impl rule__TypeScope__Group__1 ;
13808 public final void rule__TypeScope__Group__0() throws RecognitionException {
13809
13810 int stackSize = keepStackSize();
13811
13812 try {
13813 // InternalProblem.g:4376:1: ( rule__TypeScope__Group__0__Impl rule__TypeScope__Group__1 )
13814 // InternalProblem.g:4377:2: rule__TypeScope__Group__0__Impl rule__TypeScope__Group__1
13815 {
13816 pushFollow(FOLLOW_36);
13817 rule__TypeScope__Group__0__Impl();
13818
13819 state._fsp--;
13820
13821 pushFollow(FOLLOW_2);
13822 rule__TypeScope__Group__1();
13823
13824 state._fsp--;
13825
13826
13827 }
13828
13829 }
13830 catch (RecognitionException re) {
13831 reportError(re);
13832 recover(input,re);
13833 }
13834 finally {
13835
13836 restoreStackSize(stackSize);
13837
13838 }
13839 return ;
13840 }
13841 // $ANTLR end "rule__TypeScope__Group__0"
13842
13843
13844 // $ANTLR start "rule__TypeScope__Group__0__Impl"
13845 // InternalProblem.g:4384:1: rule__TypeScope__Group__0__Impl : ( ( rule__TypeScope__TargetTypeAssignment_0 ) ) ;
13846 public final void rule__TypeScope__Group__0__Impl() throws RecognitionException {
13847
13848 int stackSize = keepStackSize();
13849
13850 try {
13851 // InternalProblem.g:4388:1: ( ( ( rule__TypeScope__TargetTypeAssignment_0 ) ) )
13852 // InternalProblem.g:4389:1: ( ( rule__TypeScope__TargetTypeAssignment_0 ) )
13853 {
13854 // InternalProblem.g:4389:1: ( ( rule__TypeScope__TargetTypeAssignment_0 ) )
13855 // InternalProblem.g:4390:2: ( rule__TypeScope__TargetTypeAssignment_0 )
13856 {
13857 before(grammarAccess.getTypeScopeAccess().getTargetTypeAssignment_0());
13858 // InternalProblem.g:4391:2: ( rule__TypeScope__TargetTypeAssignment_0 )
13859 // InternalProblem.g:4391:3: rule__TypeScope__TargetTypeAssignment_0
13860 {
13861 pushFollow(FOLLOW_2);
13862 rule__TypeScope__TargetTypeAssignment_0();
13863
13864 state._fsp--;
13865
13866
13867 }
13868
13869 after(grammarAccess.getTypeScopeAccess().getTargetTypeAssignment_0());
13870
13871 }
13872
13873
13874 }
13875
13876 }
13877 catch (RecognitionException re) {
13878 reportError(re);
13879 recover(input,re);
13880 }
13881 finally {
13882
13883 restoreStackSize(stackSize);
13884
13885 }
13886 return ;
13887 }
13888 // $ANTLR end "rule__TypeScope__Group__0__Impl"
13889
13890
13891 // $ANTLR start "rule__TypeScope__Group__1"
13892 // InternalProblem.g:4399:1: rule__TypeScope__Group__1 : rule__TypeScope__Group__1__Impl rule__TypeScope__Group__2 ;
13893 public final void rule__TypeScope__Group__1() throws RecognitionException {
13894
13895 int stackSize = keepStackSize();
13896
13897 try {
13898 // InternalProblem.g:4403:1: ( rule__TypeScope__Group__1__Impl rule__TypeScope__Group__2 )
13899 // InternalProblem.g:4404:2: rule__TypeScope__Group__1__Impl rule__TypeScope__Group__2
13900 {
13901 pushFollow(FOLLOW_20);
13902 rule__TypeScope__Group__1__Impl();
13903
13904 state._fsp--;
13905
13906 pushFollow(FOLLOW_2);
13907 rule__TypeScope__Group__2();
13908
13909 state._fsp--;
13910
13911
13912 }
13913
13914 }
13915 catch (RecognitionException re) {
13916 reportError(re);
13917 recover(input,re);
13918 }
13919 finally {
13920
13921 restoreStackSize(stackSize);
13922
13923 }
13924 return ;
13925 }
13926 // $ANTLR end "rule__TypeScope__Group__1"
13927
13928
13929 // $ANTLR start "rule__TypeScope__Group__1__Impl"
13930 // InternalProblem.g:4411:1: rule__TypeScope__Group__1__Impl : ( ( rule__TypeScope__Alternatives_1 ) ) ;
13931 public final void rule__TypeScope__Group__1__Impl() throws RecognitionException {
13932
13933 int stackSize = keepStackSize();
13934
13935 try {
13936 // InternalProblem.g:4415:1: ( ( ( rule__TypeScope__Alternatives_1 ) ) )
13937 // InternalProblem.g:4416:1: ( ( rule__TypeScope__Alternatives_1 ) )
13938 {
13939 // InternalProblem.g:4416:1: ( ( rule__TypeScope__Alternatives_1 ) )
13940 // InternalProblem.g:4417:2: ( rule__TypeScope__Alternatives_1 )
13941 {
13942 before(grammarAccess.getTypeScopeAccess().getAlternatives_1());
13943 // InternalProblem.g:4418:2: ( rule__TypeScope__Alternatives_1 )
13944 // InternalProblem.g:4418:3: rule__TypeScope__Alternatives_1
13945 {
13946 pushFollow(FOLLOW_2);
13947 rule__TypeScope__Alternatives_1();
13948
13949 state._fsp--;
13950
13951
13952 }
13953
13954 after(grammarAccess.getTypeScopeAccess().getAlternatives_1());
13955
13956 }
13957
13958
13959 }
13960
13961 }
13962 catch (RecognitionException re) {
13963 reportError(re);
13964 recover(input,re);
13965 }
13966 finally {
13967
13968 restoreStackSize(stackSize);
13969
13970 }
13971 return ;
13972 }
13973 // $ANTLR end "rule__TypeScope__Group__1__Impl"
13974
13975
13976 // $ANTLR start "rule__TypeScope__Group__2"
13977 // InternalProblem.g:4426:1: rule__TypeScope__Group__2 : rule__TypeScope__Group__2__Impl ;
13978 public final void rule__TypeScope__Group__2() throws RecognitionException {
13979
13980 int stackSize = keepStackSize();
13981
13982 try {
13983 // InternalProblem.g:4430:1: ( rule__TypeScope__Group__2__Impl )
13984 // InternalProblem.g:4431:2: rule__TypeScope__Group__2__Impl
13985 {
13986 pushFollow(FOLLOW_2);
13987 rule__TypeScope__Group__2__Impl();
13988
13989 state._fsp--;
13990
13991
13992 }
13993
13994 }
13995 catch (RecognitionException re) {
13996 reportError(re);
13997 recover(input,re);
13998 }
13999 finally {
14000
14001 restoreStackSize(stackSize);
14002
14003 }
14004 return ;
14005 }
14006 // $ANTLR end "rule__TypeScope__Group__2"
14007
14008
14009 // $ANTLR start "rule__TypeScope__Group__2__Impl"
14010 // InternalProblem.g:4437:1: rule__TypeScope__Group__2__Impl : ( ( rule__TypeScope__MultiplicityAssignment_2 ) ) ;
14011 public final void rule__TypeScope__Group__2__Impl() throws RecognitionException {
14012
14013 int stackSize = keepStackSize();
14014
14015 try {
14016 // InternalProblem.g:4441:1: ( ( ( rule__TypeScope__MultiplicityAssignment_2 ) ) )
14017 // InternalProblem.g:4442:1: ( ( rule__TypeScope__MultiplicityAssignment_2 ) )
14018 {
14019 // InternalProblem.g:4442:1: ( ( rule__TypeScope__MultiplicityAssignment_2 ) )
14020 // InternalProblem.g:4443:2: ( rule__TypeScope__MultiplicityAssignment_2 )
14021 {
14022 before(grammarAccess.getTypeScopeAccess().getMultiplicityAssignment_2());
14023 // InternalProblem.g:4444:2: ( rule__TypeScope__MultiplicityAssignment_2 )
14024 // InternalProblem.g:4444:3: rule__TypeScope__MultiplicityAssignment_2
14025 {
14026 pushFollow(FOLLOW_2);
14027 rule__TypeScope__MultiplicityAssignment_2();
14028
14029 state._fsp--;
14030
14031
14032 }
14033
14034 after(grammarAccess.getTypeScopeAccess().getMultiplicityAssignment_2());
14035
14036 }
14037
14038
14039 }
14040
14041 }
14042 catch (RecognitionException re) {
14043 reportError(re);
14044 recover(input,re);
14045 }
14046 finally {
14047
14048 restoreStackSize(stackSize);
14049
14050 }
14051 return ;
14052 }
14053 // $ANTLR end "rule__TypeScope__Group__2__Impl"
14054
14055
14056 // $ANTLR start "rule__RangeMultiplicity__Group__0"
14057 // InternalProblem.g:4453:1: rule__RangeMultiplicity__Group__0 : rule__RangeMultiplicity__Group__0__Impl rule__RangeMultiplicity__Group__1 ;
14058 public final void rule__RangeMultiplicity__Group__0() throws RecognitionException {
14059
14060 int stackSize = keepStackSize();
14061
14062 try {
14063 // InternalProblem.g:4457:1: ( rule__RangeMultiplicity__Group__0__Impl rule__RangeMultiplicity__Group__1 )
14064 // InternalProblem.g:4458:2: rule__RangeMultiplicity__Group__0__Impl rule__RangeMultiplicity__Group__1
14065 {
14066 pushFollow(FOLLOW_37);
14067 rule__RangeMultiplicity__Group__0__Impl();
14068
14069 state._fsp--;
14070
14071 pushFollow(FOLLOW_2);
14072 rule__RangeMultiplicity__Group__1();
14073
14074 state._fsp--;
14075
14076
14077 }
14078
14079 }
14080 catch (RecognitionException re) {
14081 reportError(re);
14082 recover(input,re);
14083 }
14084 finally {
14085
14086 restoreStackSize(stackSize);
14087
14088 }
14089 return ;
14090 }
14091 // $ANTLR end "rule__RangeMultiplicity__Group__0"
14092
14093
14094 // $ANTLR start "rule__RangeMultiplicity__Group__0__Impl"
14095 // InternalProblem.g:4465:1: rule__RangeMultiplicity__Group__0__Impl : ( ( rule__RangeMultiplicity__LowerBoundAssignment_0 ) ) ;
14096 public final void rule__RangeMultiplicity__Group__0__Impl() throws RecognitionException {
14097
14098 int stackSize = keepStackSize();
14099
14100 try {
14101 // InternalProblem.g:4469:1: ( ( ( rule__RangeMultiplicity__LowerBoundAssignment_0 ) ) )
14102 // InternalProblem.g:4470:1: ( ( rule__RangeMultiplicity__LowerBoundAssignment_0 ) )
14103 {
14104 // InternalProblem.g:4470:1: ( ( rule__RangeMultiplicity__LowerBoundAssignment_0 ) )
14105 // InternalProblem.g:4471:2: ( rule__RangeMultiplicity__LowerBoundAssignment_0 )
14106 {
14107 before(grammarAccess.getRangeMultiplicityAccess().getLowerBoundAssignment_0());
14108 // InternalProblem.g:4472:2: ( rule__RangeMultiplicity__LowerBoundAssignment_0 )
14109 // InternalProblem.g:4472:3: rule__RangeMultiplicity__LowerBoundAssignment_0
14110 {
14111 pushFollow(FOLLOW_2);
14112 rule__RangeMultiplicity__LowerBoundAssignment_0();
14113
14114 state._fsp--;
14115
14116
14117 }
14118
14119 after(grammarAccess.getRangeMultiplicityAccess().getLowerBoundAssignment_0());
14120
14121 }
14122
14123
14124 }
14125
14126 }
14127 catch (RecognitionException re) {
14128 reportError(re);
14129 recover(input,re);
14130 }
14131 finally {
14132
14133 restoreStackSize(stackSize);
14134
14135 }
14136 return ;
14137 }
14138 // $ANTLR end "rule__RangeMultiplicity__Group__0__Impl"
14139
14140
14141 // $ANTLR start "rule__RangeMultiplicity__Group__1"
14142 // InternalProblem.g:4480:1: rule__RangeMultiplicity__Group__1 : rule__RangeMultiplicity__Group__1__Impl rule__RangeMultiplicity__Group__2 ;
14143 public final void rule__RangeMultiplicity__Group__1() throws RecognitionException {
14144
14145 int stackSize = keepStackSize();
14146
14147 try {
14148 // InternalProblem.g:4484:1: ( rule__RangeMultiplicity__Group__1__Impl rule__RangeMultiplicity__Group__2 )
14149 // InternalProblem.g:4485:2: rule__RangeMultiplicity__Group__1__Impl rule__RangeMultiplicity__Group__2
14150 {
14151 pushFollow(FOLLOW_38);
14152 rule__RangeMultiplicity__Group__1__Impl();
14153
14154 state._fsp--;
14155
14156 pushFollow(FOLLOW_2);
14157 rule__RangeMultiplicity__Group__2();
14158
14159 state._fsp--;
14160
14161
14162 }
14163
14164 }
14165 catch (RecognitionException re) {
14166 reportError(re);
14167 recover(input,re);
14168 }
14169 finally {
14170
14171 restoreStackSize(stackSize);
14172
14173 }
14174 return ;
14175 }
14176 // $ANTLR end "rule__RangeMultiplicity__Group__1"
14177
14178
14179 // $ANTLR start "rule__RangeMultiplicity__Group__1__Impl"
14180 // InternalProblem.g:4492:1: rule__RangeMultiplicity__Group__1__Impl : ( '..' ) ;
14181 public final void rule__RangeMultiplicity__Group__1__Impl() throws RecognitionException {
14182
14183 int stackSize = keepStackSize();
14184
14185 try {
14186 // InternalProblem.g:4496:1: ( ( '..' ) )
14187 // InternalProblem.g:4497:1: ( '..' )
14188 {
14189 // InternalProblem.g:4497:1: ( '..' )
14190 // InternalProblem.g:4498:2: '..'
14191 {
14192 before(grammarAccess.getRangeMultiplicityAccess().getFullStopFullStopKeyword_1());
14193 match(input,39,FOLLOW_2);
14194 after(grammarAccess.getRangeMultiplicityAccess().getFullStopFullStopKeyword_1());
14195
14196 }
14197
14198
14199 }
14200
14201 }
14202 catch (RecognitionException re) {
14203 reportError(re);
14204 recover(input,re);
14205 }
14206 finally {
14207
14208 restoreStackSize(stackSize);
14209
14210 }
14211 return ;
14212 }
14213 // $ANTLR end "rule__RangeMultiplicity__Group__1__Impl"
14214
14215
14216 // $ANTLR start "rule__RangeMultiplicity__Group__2"
14217 // InternalProblem.g:4507:1: rule__RangeMultiplicity__Group__2 : rule__RangeMultiplicity__Group__2__Impl ;
14218 public final void rule__RangeMultiplicity__Group__2() throws RecognitionException {
14219
14220 int stackSize = keepStackSize();
14221
14222 try {
14223 // InternalProblem.g:4511:1: ( rule__RangeMultiplicity__Group__2__Impl )
14224 // InternalProblem.g:4512:2: rule__RangeMultiplicity__Group__2__Impl
14225 {
14226 pushFollow(FOLLOW_2);
14227 rule__RangeMultiplicity__Group__2__Impl();
14228
14229 state._fsp--;
14230
14231
14232 }
14233
14234 }
14235 catch (RecognitionException re) {
14236 reportError(re);
14237 recover(input,re);
14238 }
14239 finally {
14240
14241 restoreStackSize(stackSize);
14242
14243 }
14244 return ;
14245 }
14246 // $ANTLR end "rule__RangeMultiplicity__Group__2"
14247
14248
14249 // $ANTLR start "rule__RangeMultiplicity__Group__2__Impl"
14250 // InternalProblem.g:4518:1: rule__RangeMultiplicity__Group__2__Impl : ( ( rule__RangeMultiplicity__UpperBoundAssignment_2 ) ) ;
14251 public final void rule__RangeMultiplicity__Group__2__Impl() throws RecognitionException {
14252
14253 int stackSize = keepStackSize();
14254
14255 try {
14256 // InternalProblem.g:4522:1: ( ( ( rule__RangeMultiplicity__UpperBoundAssignment_2 ) ) )
14257 // InternalProblem.g:4523:1: ( ( rule__RangeMultiplicity__UpperBoundAssignment_2 ) )
14258 {
14259 // InternalProblem.g:4523:1: ( ( rule__RangeMultiplicity__UpperBoundAssignment_2 ) )
14260 // InternalProblem.g:4524:2: ( rule__RangeMultiplicity__UpperBoundAssignment_2 )
14261 {
14262 before(grammarAccess.getRangeMultiplicityAccess().getUpperBoundAssignment_2());
14263 // InternalProblem.g:4525:2: ( rule__RangeMultiplicity__UpperBoundAssignment_2 )
14264 // InternalProblem.g:4525:3: rule__RangeMultiplicity__UpperBoundAssignment_2
14265 {
14266 pushFollow(FOLLOW_2);
14267 rule__RangeMultiplicity__UpperBoundAssignment_2();
14268
14269 state._fsp--;
14270
14271
14272 }
14273
14274 after(grammarAccess.getRangeMultiplicityAccess().getUpperBoundAssignment_2());
14275
14276 }
14277
14278
14279 }
14280
14281 }
14282 catch (RecognitionException re) {
14283 reportError(re);
14284 recover(input,re);
14285 }
14286 finally {
14287
14288 restoreStackSize(stackSize);
14289
14290 }
14291 return ;
14292 }
14293 // $ANTLR end "rule__RangeMultiplicity__Group__2__Impl"
14294
14295
14296 // $ANTLR start "rule__QualifiedName__Group_1__0"
14297 // InternalProblem.g:4534:1: rule__QualifiedName__Group_1__0 : rule__QualifiedName__Group_1__0__Impl rule__QualifiedName__Group_1__1 ;
14298 public final void rule__QualifiedName__Group_1__0() throws RecognitionException {
14299
14300 int stackSize = keepStackSize();
14301
14302 try {
14303 // InternalProblem.g:4538:1: ( rule__QualifiedName__Group_1__0__Impl rule__QualifiedName__Group_1__1 )
14304 // InternalProblem.g:4539:2: rule__QualifiedName__Group_1__0__Impl rule__QualifiedName__Group_1__1
14305 {
14306 pushFollow(FOLLOW_39);
14307 rule__QualifiedName__Group_1__0__Impl();
14308
14309 state._fsp--;
14310
14311 pushFollow(FOLLOW_2);
14312 rule__QualifiedName__Group_1__1();
14313
14314 state._fsp--;
14315
14316
14317 }
14318
14319 }
14320 catch (RecognitionException re) {
14321 reportError(re);
14322 recover(input,re);
14323 }
14324 finally {
14325
14326 restoreStackSize(stackSize);
14327
14328 }
14329 return ;
14330 }
14331 // $ANTLR end "rule__QualifiedName__Group_1__0"
14332
14333
14334 // $ANTLR start "rule__QualifiedName__Group_1__0__Impl"
14335 // InternalProblem.g:4546:1: rule__QualifiedName__Group_1__0__Impl : ( ruleIdentifier ) ;
14336 public final void rule__QualifiedName__Group_1__0__Impl() throws RecognitionException {
14337
14338 int stackSize = keepStackSize();
14339
14340 try {
14341 // InternalProblem.g:4550:1: ( ( ruleIdentifier ) )
14342 // InternalProblem.g:4551:1: ( ruleIdentifier )
14343 {
14344 // InternalProblem.g:4551:1: ( ruleIdentifier )
14345 // InternalProblem.g:4552:2: ruleIdentifier
14346 {
14347 before(grammarAccess.getQualifiedNameAccess().getIdentifierParserRuleCall_1_0());
14348 pushFollow(FOLLOW_2);
14349 ruleIdentifier();
14350
14351 state._fsp--;
14352
14353 after(grammarAccess.getQualifiedNameAccess().getIdentifierParserRuleCall_1_0());
14354
14355 }
14356
14357
14358 }
14359
14360 }
14361 catch (RecognitionException re) {
14362 reportError(re);
14363 recover(input,re);
14364 }
14365 finally {
14366
14367 restoreStackSize(stackSize);
14368
14369 }
14370 return ;
14371 }
14372 // $ANTLR end "rule__QualifiedName__Group_1__0__Impl"
14373
14374
14375 // $ANTLR start "rule__QualifiedName__Group_1__1"
14376 // InternalProblem.g:4561:1: rule__QualifiedName__Group_1__1 : rule__QualifiedName__Group_1__1__Impl ;
14377 public final void rule__QualifiedName__Group_1__1() throws RecognitionException {
14378
14379 int stackSize = keepStackSize();
14380
14381 try {
14382 // InternalProblem.g:4565:1: ( rule__QualifiedName__Group_1__1__Impl )
14383 // InternalProblem.g:4566:2: rule__QualifiedName__Group_1__1__Impl
14384 {
14385 pushFollow(FOLLOW_2);
14386 rule__QualifiedName__Group_1__1__Impl();
14387
14388 state._fsp--;
14389
14390
14391 }
14392
14393 }
14394 catch (RecognitionException re) {
14395 reportError(re);
14396 recover(input,re);
14397 }
14398 finally {
14399
14400 restoreStackSize(stackSize);
14401
14402 }
14403 return ;
14404 }
14405 // $ANTLR end "rule__QualifiedName__Group_1__1"
14406
14407
14408 // $ANTLR start "rule__QualifiedName__Group_1__1__Impl"
14409 // InternalProblem.g:4572:1: rule__QualifiedName__Group_1__1__Impl : ( ( rule__QualifiedName__Group_1_1__0 )* ) ;
14410 public final void rule__QualifiedName__Group_1__1__Impl() throws RecognitionException {
14411
14412 int stackSize = keepStackSize();
14413
14414 try {
14415 // InternalProblem.g:4576:1: ( ( ( rule__QualifiedName__Group_1_1__0 )* ) )
14416 // InternalProblem.g:4577:1: ( ( rule__QualifiedName__Group_1_1__0 )* )
14417 {
14418 // InternalProblem.g:4577:1: ( ( rule__QualifiedName__Group_1_1__0 )* )
14419 // InternalProblem.g:4578:2: ( rule__QualifiedName__Group_1_1__0 )*
14420 {
14421 before(grammarAccess.getQualifiedNameAccess().getGroup_1_1());
14422 // InternalProblem.g:4579:2: ( rule__QualifiedName__Group_1_1__0 )*
14423 loop51:
14424 do {
14425 int alt51=2;
14426 int LA51_0 = input.LA(1);
14427
14428 if ( (LA51_0==40) ) {
14429 alt51=1;
14430 }
14431
14432
14433 switch (alt51) {
14434 case 1 :
14435 // InternalProblem.g:4579:3: rule__QualifiedName__Group_1_1__0
14436 {
14437 pushFollow(FOLLOW_40);
14438 rule__QualifiedName__Group_1_1__0();
14439
14440 state._fsp--;
14441
14442
14443 }
14444 break;
14445
14446 default :
14447 break loop51;
14448 }
14449 } while (true);
14450
14451 after(grammarAccess.getQualifiedNameAccess().getGroup_1_1());
14452
14453 }
14454
14455
14456 }
14457
14458 }
14459 catch (RecognitionException re) {
14460 reportError(re);
14461 recover(input,re);
14462 }
14463 finally {
14464
14465 restoreStackSize(stackSize);
14466
14467 }
14468 return ;
14469 }
14470 // $ANTLR end "rule__QualifiedName__Group_1__1__Impl"
14471
14472
14473 // $ANTLR start "rule__QualifiedName__Group_1_1__0"
14474 // InternalProblem.g:4588:1: rule__QualifiedName__Group_1_1__0 : rule__QualifiedName__Group_1_1__0__Impl rule__QualifiedName__Group_1_1__1 ;
14475 public final void rule__QualifiedName__Group_1_1__0() throws RecognitionException {
14476
14477 int stackSize = keepStackSize();
14478
14479 try {
14480 // InternalProblem.g:4592:1: ( rule__QualifiedName__Group_1_1__0__Impl rule__QualifiedName__Group_1_1__1 )
14481 // InternalProblem.g:4593:2: rule__QualifiedName__Group_1_1__0__Impl rule__QualifiedName__Group_1_1__1
14482 {
14483 pushFollow(FOLLOW_5);
14484 rule__QualifiedName__Group_1_1__0__Impl();
14485
14486 state._fsp--;
14487
14488 pushFollow(FOLLOW_2);
14489 rule__QualifiedName__Group_1_1__1();
14490
14491 state._fsp--;
14492
14493
14494 }
14495
14496 }
14497 catch (RecognitionException re) {
14498 reportError(re);
14499 recover(input,re);
14500 }
14501 finally {
14502
14503 restoreStackSize(stackSize);
14504
14505 }
14506 return ;
14507 }
14508 // $ANTLR end "rule__QualifiedName__Group_1_1__0"
14509
14510
14511 // $ANTLR start "rule__QualifiedName__Group_1_1__0__Impl"
14512 // InternalProblem.g:4600:1: rule__QualifiedName__Group_1_1__0__Impl : ( '::' ) ;
14513 public final void rule__QualifiedName__Group_1_1__0__Impl() throws RecognitionException {
14514
14515 int stackSize = keepStackSize();
14516
14517 try {
14518 // InternalProblem.g:4604:1: ( ( '::' ) )
14519 // InternalProblem.g:4605:1: ( '::' )
14520 {
14521 // InternalProblem.g:4605:1: ( '::' )
14522 // InternalProblem.g:4606:2: '::'
14523 {
14524 before(grammarAccess.getQualifiedNameAccess().getColonColonKeyword_1_1_0());
14525 match(input,40,FOLLOW_2);
14526 after(grammarAccess.getQualifiedNameAccess().getColonColonKeyword_1_1_0());
14527
14528 }
14529
14530
14531 }
14532
14533 }
14534 catch (RecognitionException re) {
14535 reportError(re);
14536 recover(input,re);
14537 }
14538 finally {
14539
14540 restoreStackSize(stackSize);
14541
14542 }
14543 return ;
14544 }
14545 // $ANTLR end "rule__QualifiedName__Group_1_1__0__Impl"
14546
14547
14548 // $ANTLR start "rule__QualifiedName__Group_1_1__1"
14549 // InternalProblem.g:4615:1: rule__QualifiedName__Group_1_1__1 : rule__QualifiedName__Group_1_1__1__Impl ;
14550 public final void rule__QualifiedName__Group_1_1__1() throws RecognitionException {
14551
14552 int stackSize = keepStackSize();
14553
14554 try {
14555 // InternalProblem.g:4619:1: ( rule__QualifiedName__Group_1_1__1__Impl )
14556 // InternalProblem.g:4620:2: rule__QualifiedName__Group_1_1__1__Impl
14557 {
14558 pushFollow(FOLLOW_2);
14559 rule__QualifiedName__Group_1_1__1__Impl();
14560
14561 state._fsp--;
14562
14563
14564 }
14565
14566 }
14567 catch (RecognitionException re) {
14568 reportError(re);
14569 recover(input,re);
14570 }
14571 finally {
14572
14573 restoreStackSize(stackSize);
14574
14575 }
14576 return ;
14577 }
14578 // $ANTLR end "rule__QualifiedName__Group_1_1__1"
14579
14580
14581 // $ANTLR start "rule__QualifiedName__Group_1_1__1__Impl"
14582 // InternalProblem.g:4626:1: rule__QualifiedName__Group_1_1__1__Impl : ( ruleIdentifier ) ;
14583 public final void rule__QualifiedName__Group_1_1__1__Impl() throws RecognitionException {
14584
14585 int stackSize = keepStackSize();
14586
14587 try {
14588 // InternalProblem.g:4630:1: ( ( ruleIdentifier ) )
14589 // InternalProblem.g:4631:1: ( ruleIdentifier )
14590 {
14591 // InternalProblem.g:4631:1: ( ruleIdentifier )
14592 // InternalProblem.g:4632:2: ruleIdentifier
14593 {
14594 before(grammarAccess.getQualifiedNameAccess().getIdentifierParserRuleCall_1_1_1());
14595 pushFollow(FOLLOW_2);
14596 ruleIdentifier();
14597
14598 state._fsp--;
14599
14600 after(grammarAccess.getQualifiedNameAccess().getIdentifierParserRuleCall_1_1_1());
14601
14602 }
14603
14604
14605 }
14606
14607 }
14608 catch (RecognitionException re) {
14609 reportError(re);
14610 recover(input,re);
14611 }
14612 finally {
14613
14614 restoreStackSize(stackSize);
14615
14616 }
14617 return ;
14618 }
14619 // $ANTLR end "rule__QualifiedName__Group_1_1__1__Impl"
14620
14621
14622 // $ANTLR start "rule__Integer__Group__0"
14623 // InternalProblem.g:4642:1: rule__Integer__Group__0 : rule__Integer__Group__0__Impl rule__Integer__Group__1 ;
14624 public final void rule__Integer__Group__0() throws RecognitionException {
14625
14626 int stackSize = keepStackSize();
14627
14628 try {
14629 // InternalProblem.g:4646:1: ( rule__Integer__Group__0__Impl rule__Integer__Group__1 )
14630 // InternalProblem.g:4647:2: rule__Integer__Group__0__Impl rule__Integer__Group__1
14631 {
14632 pushFollow(FOLLOW_41);
14633 rule__Integer__Group__0__Impl();
14634
14635 state._fsp--;
14636
14637 pushFollow(FOLLOW_2);
14638 rule__Integer__Group__1();
14639
14640 state._fsp--;
14641
14642
14643 }
14644
14645 }
14646 catch (RecognitionException re) {
14647 reportError(re);
14648 recover(input,re);
14649 }
14650 finally {
14651
14652 restoreStackSize(stackSize);
14653
14654 }
14655 return ;
14656 }
14657 // $ANTLR end "rule__Integer__Group__0"
14658
14659
14660 // $ANTLR start "rule__Integer__Group__0__Impl"
14661 // InternalProblem.g:4654:1: rule__Integer__Group__0__Impl : ( ( '-' )? ) ;
14662 public final void rule__Integer__Group__0__Impl() throws RecognitionException {
14663
14664 int stackSize = keepStackSize();
14665
14666 try {
14667 // InternalProblem.g:4658:1: ( ( ( '-' )? ) )
14668 // InternalProblem.g:4659:1: ( ( '-' )? )
14669 {
14670 // InternalProblem.g:4659:1: ( ( '-' )? )
14671 // InternalProblem.g:4660:2: ( '-' )?
14672 {
14673 before(grammarAccess.getIntegerAccess().getHyphenMinusKeyword_0());
14674 // InternalProblem.g:4661:2: ( '-' )?
14675 int alt52=2;
14676 int LA52_0 = input.LA(1);
14677
14678 if ( (LA52_0==41) ) {
14679 alt52=1;
14680 }
14681 switch (alt52) {
14682 case 1 :
14683 // InternalProblem.g:4661:3: '-'
14684 {
14685 match(input,41,FOLLOW_2);
14686
14687 }
14688 break;
14689
14690 }
14691
14692 after(grammarAccess.getIntegerAccess().getHyphenMinusKeyword_0());
14693
14694 }
14695
14696
14697 }
14698
14699 }
14700 catch (RecognitionException re) {
14701 reportError(re);
14702 recover(input,re);
14703 }
14704 finally {
14705
14706 restoreStackSize(stackSize);
14707
14708 }
14709 return ;
14710 }
14711 // $ANTLR end "rule__Integer__Group__0__Impl"
14712
14713
14714 // $ANTLR start "rule__Integer__Group__1"
14715 // InternalProblem.g:4669:1: rule__Integer__Group__1 : rule__Integer__Group__1__Impl ;
14716 public final void rule__Integer__Group__1() throws RecognitionException {
14717
14718 int stackSize = keepStackSize();
14719
14720 try {
14721 // InternalProblem.g:4673:1: ( rule__Integer__Group__1__Impl )
14722 // InternalProblem.g:4674:2: rule__Integer__Group__1__Impl
14723 {
14724 pushFollow(FOLLOW_2);
14725 rule__Integer__Group__1__Impl();
14726
14727 state._fsp--;
14728
14729
14730 }
14731
14732 }
14733 catch (RecognitionException re) {
14734 reportError(re);
14735 recover(input,re);
14736 }
14737 finally {
14738
14739 restoreStackSize(stackSize);
14740
14741 }
14742 return ;
14743 }
14744 // $ANTLR end "rule__Integer__Group__1"
14745
14746
14747 // $ANTLR start "rule__Integer__Group__1__Impl"
14748 // InternalProblem.g:4680:1: rule__Integer__Group__1__Impl : ( RULE_INT ) ;
14749 public final void rule__Integer__Group__1__Impl() throws RecognitionException {
14750
14751 int stackSize = keepStackSize();
14752
14753 try {
14754 // InternalProblem.g:4684:1: ( ( RULE_INT ) )
14755 // InternalProblem.g:4685:1: ( RULE_INT )
14756 {
14757 // InternalProblem.g:4685:1: ( RULE_INT )
14758 // InternalProblem.g:4686:2: RULE_INT
14759 {
14760 before(grammarAccess.getIntegerAccess().getINTTerminalRuleCall_1());
14761 match(input,RULE_INT,FOLLOW_2);
14762 after(grammarAccess.getIntegerAccess().getINTTerminalRuleCall_1());
14763
14764 }
14765
14766
14767 }
14768
14769 }
14770 catch (RecognitionException re) {
14771 reportError(re);
14772 recover(input,re);
14773 }
14774 finally {
14775
14776 restoreStackSize(stackSize);
14777
14778 }
14779 return ;
14780 }
14781 // $ANTLR end "rule__Integer__Group__1__Impl"
14782
14783
14784 // $ANTLR start "rule__Real__Group__0"
14785 // InternalProblem.g:4696:1: rule__Real__Group__0 : rule__Real__Group__0__Impl rule__Real__Group__1 ;
14786 public final void rule__Real__Group__0() throws RecognitionException {
14787
14788 int stackSize = keepStackSize();
14789
14790 try {
14791 // InternalProblem.g:4700:1: ( rule__Real__Group__0__Impl rule__Real__Group__1 )
14792 // InternalProblem.g:4701:2: rule__Real__Group__0__Impl rule__Real__Group__1
14793 {
14794 pushFollow(FOLLOW_42);
14795 rule__Real__Group__0__Impl();
14796
14797 state._fsp--;
14798
14799 pushFollow(FOLLOW_2);
14800 rule__Real__Group__1();
14801
14802 state._fsp--;
14803
14804
14805 }
14806
14807 }
14808 catch (RecognitionException re) {
14809 reportError(re);
14810 recover(input,re);
14811 }
14812 finally {
14813
14814 restoreStackSize(stackSize);
14815
14816 }
14817 return ;
14818 }
14819 // $ANTLR end "rule__Real__Group__0"
14820
14821
14822 // $ANTLR start "rule__Real__Group__0__Impl"
14823 // InternalProblem.g:4708:1: rule__Real__Group__0__Impl : ( ( '-' )? ) ;
14824 public final void rule__Real__Group__0__Impl() throws RecognitionException {
14825
14826 int stackSize = keepStackSize();
14827
14828 try {
14829 // InternalProblem.g:4712:1: ( ( ( '-' )? ) )
14830 // InternalProblem.g:4713:1: ( ( '-' )? )
14831 {
14832 // InternalProblem.g:4713:1: ( ( '-' )? )
14833 // InternalProblem.g:4714:2: ( '-' )?
14834 {
14835 before(grammarAccess.getRealAccess().getHyphenMinusKeyword_0());
14836 // InternalProblem.g:4715:2: ( '-' )?
14837 int alt53=2;
14838 int LA53_0 = input.LA(1);
14839
14840 if ( (LA53_0==41) ) {
14841 alt53=1;
14842 }
14843 switch (alt53) {
14844 case 1 :
14845 // InternalProblem.g:4715:3: '-'
14846 {
14847 match(input,41,FOLLOW_2);
14848
14849 }
14850 break;
14851
14852 }
14853
14854 after(grammarAccess.getRealAccess().getHyphenMinusKeyword_0());
14855
14856 }
14857
14858
14859 }
14860
14861 }
14862 catch (RecognitionException re) {
14863 reportError(re);
14864 recover(input,re);
14865 }
14866 finally {
14867
14868 restoreStackSize(stackSize);
14869
14870 }
14871 return ;
14872 }
14873 // $ANTLR end "rule__Real__Group__0__Impl"
14874
14875
14876 // $ANTLR start "rule__Real__Group__1"
14877 // InternalProblem.g:4723:1: rule__Real__Group__1 : rule__Real__Group__1__Impl ;
14878 public final void rule__Real__Group__1() throws RecognitionException {
14879
14880 int stackSize = keepStackSize();
14881
14882 try {
14883 // InternalProblem.g:4727:1: ( rule__Real__Group__1__Impl )
14884 // InternalProblem.g:4728:2: rule__Real__Group__1__Impl
14885 {
14886 pushFollow(FOLLOW_2);
14887 rule__Real__Group__1__Impl();
14888
14889 state._fsp--;
14890
14891
14892 }
14893
14894 }
14895 catch (RecognitionException re) {
14896 reportError(re);
14897 recover(input,re);
14898 }
14899 finally {
14900
14901 restoreStackSize(stackSize);
14902
14903 }
14904 return ;
14905 }
14906 // $ANTLR end "rule__Real__Group__1"
14907
14908
14909 // $ANTLR start "rule__Real__Group__1__Impl"
14910 // InternalProblem.g:4734:1: rule__Real__Group__1__Impl : ( ( rule__Real__Alternatives_1 ) ) ;
14911 public final void rule__Real__Group__1__Impl() throws RecognitionException {
14912
14913 int stackSize = keepStackSize();
14914
14915 try {
14916 // InternalProblem.g:4738:1: ( ( ( rule__Real__Alternatives_1 ) ) )
14917 // InternalProblem.g:4739:1: ( ( rule__Real__Alternatives_1 ) )
14918 {
14919 // InternalProblem.g:4739:1: ( ( rule__Real__Alternatives_1 ) )
14920 // InternalProblem.g:4740:2: ( rule__Real__Alternatives_1 )
14921 {
14922 before(grammarAccess.getRealAccess().getAlternatives_1());
14923 // InternalProblem.g:4741:2: ( rule__Real__Alternatives_1 )
14924 // InternalProblem.g:4741:3: rule__Real__Alternatives_1
14925 {
14926 pushFollow(FOLLOW_2);
14927 rule__Real__Alternatives_1();
14928
14929 state._fsp--;
14930
14931
14932 }
14933
14934 after(grammarAccess.getRealAccess().getAlternatives_1());
14935
14936 }
14937
14938
14939 }
14940
14941 }
14942 catch (RecognitionException re) {
14943 reportError(re);
14944 recover(input,re);
14945 }
14946 finally {
14947
14948 restoreStackSize(stackSize);
14949
14950 }
14951 return ;
14952 }
14953 // $ANTLR end "rule__Real__Group__1__Impl"
14954
14955
14956 // $ANTLR start "rule__Real__Group_1_1__0"
14957 // InternalProblem.g:4750:1: rule__Real__Group_1_1__0 : rule__Real__Group_1_1__0__Impl rule__Real__Group_1_1__1 ;
14958 public final void rule__Real__Group_1_1__0() throws RecognitionException {
14959
14960 int stackSize = keepStackSize();
14961
14962 try {
14963 // InternalProblem.g:4754:1: ( rule__Real__Group_1_1__0__Impl rule__Real__Group_1_1__1 )
14964 // InternalProblem.g:4755:2: rule__Real__Group_1_1__0__Impl rule__Real__Group_1_1__1
14965 {
14966 pushFollow(FOLLOW_6);
14967 rule__Real__Group_1_1__0__Impl();
14968
14969 state._fsp--;
14970
14971 pushFollow(FOLLOW_2);
14972 rule__Real__Group_1_1__1();
14973
14974 state._fsp--;
14975
14976
14977 }
14978
14979 }
14980 catch (RecognitionException re) {
14981 reportError(re);
14982 recover(input,re);
14983 }
14984 finally {
14985
14986 restoreStackSize(stackSize);
14987
14988 }
14989 return ;
14990 }
14991 // $ANTLR end "rule__Real__Group_1_1__0"
14992
14993
14994 // $ANTLR start "rule__Real__Group_1_1__0__Impl"
14995 // InternalProblem.g:4762:1: rule__Real__Group_1_1__0__Impl : ( RULE_INT ) ;
14996 public final void rule__Real__Group_1_1__0__Impl() throws RecognitionException {
14997
14998 int stackSize = keepStackSize();
14999
15000 try {
15001 // InternalProblem.g:4766:1: ( ( RULE_INT ) )
15002 // InternalProblem.g:4767:1: ( RULE_INT )
15003 {
15004 // InternalProblem.g:4767:1: ( RULE_INT )
15005 // InternalProblem.g:4768:2: RULE_INT
15006 {
15007 before(grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1_0());
15008 match(input,RULE_INT,FOLLOW_2);
15009 after(grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1_0());
15010
15011 }
15012
15013
15014 }
15015
15016 }
15017 catch (RecognitionException re) {
15018 reportError(re);
15019 recover(input,re);
15020 }
15021 finally {
15022
15023 restoreStackSize(stackSize);
15024
15025 }
15026 return ;
15027 }
15028 // $ANTLR end "rule__Real__Group_1_1__0__Impl"
15029
15030
15031 // $ANTLR start "rule__Real__Group_1_1__1"
15032 // InternalProblem.g:4777:1: rule__Real__Group_1_1__1 : rule__Real__Group_1_1__1__Impl rule__Real__Group_1_1__2 ;
15033 public final void rule__Real__Group_1_1__1() throws RecognitionException {
15034
15035 int stackSize = keepStackSize();
15036
15037 try {
15038 // InternalProblem.g:4781:1: ( rule__Real__Group_1_1__1__Impl rule__Real__Group_1_1__2 )
15039 // InternalProblem.g:4782:2: rule__Real__Group_1_1__1__Impl rule__Real__Group_1_1__2
15040 {
15041 pushFollow(FOLLOW_43);
15042 rule__Real__Group_1_1__1__Impl();
15043
15044 state._fsp--;
15045
15046 pushFollow(FOLLOW_2);
15047 rule__Real__Group_1_1__2();
15048
15049 state._fsp--;
15050
15051
15052 }
15053
15054 }
15055 catch (RecognitionException re) {
15056 reportError(re);
15057 recover(input,re);
15058 }
15059 finally {
15060
15061 restoreStackSize(stackSize);
15062
15063 }
15064 return ;
15065 }
15066 // $ANTLR end "rule__Real__Group_1_1__1"
15067
15068
15069 // $ANTLR start "rule__Real__Group_1_1__1__Impl"
15070 // InternalProblem.g:4789:1: rule__Real__Group_1_1__1__Impl : ( '.' ) ;
15071 public final void rule__Real__Group_1_1__1__Impl() throws RecognitionException {
15072
15073 int stackSize = keepStackSize();
15074
15075 try {
15076 // InternalProblem.g:4793:1: ( ( '.' ) )
15077 // InternalProblem.g:4794:1: ( '.' )
15078 {
15079 // InternalProblem.g:4794:1: ( '.' )
15080 // InternalProblem.g:4795:2: '.'
15081 {
15082 before(grammarAccess.getRealAccess().getFullStopKeyword_1_1_1());
15083 match(input,13,FOLLOW_2);
15084 after(grammarAccess.getRealAccess().getFullStopKeyword_1_1_1());
15085
15086 }
15087
15088
15089 }
15090
15091 }
15092 catch (RecognitionException re) {
15093 reportError(re);
15094 recover(input,re);
15095 }
15096 finally {
15097
15098 restoreStackSize(stackSize);
15099
15100 }
15101 return ;
15102 }
15103 // $ANTLR end "rule__Real__Group_1_1__1__Impl"
15104
15105
15106 // $ANTLR start "rule__Real__Group_1_1__2"
15107 // InternalProblem.g:4804:1: rule__Real__Group_1_1__2 : rule__Real__Group_1_1__2__Impl ;
15108 public final void rule__Real__Group_1_1__2() throws RecognitionException {
15109
15110 int stackSize = keepStackSize();
15111
15112 try {
15113 // InternalProblem.g:4808:1: ( rule__Real__Group_1_1__2__Impl )
15114 // InternalProblem.g:4809:2: rule__Real__Group_1_1__2__Impl
15115 {
15116 pushFollow(FOLLOW_2);
15117 rule__Real__Group_1_1__2__Impl();
15118
15119 state._fsp--;
15120
15121
15122 }
15123
15124 }
15125 catch (RecognitionException re) {
15126 reportError(re);
15127 recover(input,re);
15128 }
15129 finally {
15130
15131 restoreStackSize(stackSize);
15132
15133 }
15134 return ;
15135 }
15136 // $ANTLR end "rule__Real__Group_1_1__2"
15137
15138
15139 // $ANTLR start "rule__Real__Group_1_1__2__Impl"
15140 // InternalProblem.g:4815:1: rule__Real__Group_1_1__2__Impl : ( ( rule__Real__Alternatives_1_1_2 ) ) ;
15141 public final void rule__Real__Group_1_1__2__Impl() throws RecognitionException {
15142
15143 int stackSize = keepStackSize();
15144
15145 try {
15146 // InternalProblem.g:4819:1: ( ( ( rule__Real__Alternatives_1_1_2 ) ) )
15147 // InternalProblem.g:4820:1: ( ( rule__Real__Alternatives_1_1_2 ) )
15148 {
15149 // InternalProblem.g:4820:1: ( ( rule__Real__Alternatives_1_1_2 ) )
15150 // InternalProblem.g:4821:2: ( rule__Real__Alternatives_1_1_2 )
15151 {
15152 before(grammarAccess.getRealAccess().getAlternatives_1_1_2());
15153 // InternalProblem.g:4822:2: ( rule__Real__Alternatives_1_1_2 )
15154 // InternalProblem.g:4822:3: rule__Real__Alternatives_1_1_2
15155 {
15156 pushFollow(FOLLOW_2);
15157 rule__Real__Alternatives_1_1_2();
15158
15159 state._fsp--;
15160
15161
15162 }
15163
15164 after(grammarAccess.getRealAccess().getAlternatives_1_1_2());
15165
15166 }
15167
15168
15169 }
15170
15171 }
15172 catch (RecognitionException re) {
15173 reportError(re);
15174 recover(input,re);
15175 }
15176 finally {
15177
15178 restoreStackSize(stackSize);
15179
15180 }
15181 return ;
15182 }
15183 // $ANTLR end "rule__Real__Group_1_1__2__Impl"
15184
15185
15186 // $ANTLR start "rule__Problem__NameAssignment_0_1"
15187 // InternalProblem.g:4831:1: rule__Problem__NameAssignment_0_1 : ( ruleIdentifier ) ;
15188 public final void rule__Problem__NameAssignment_0_1() throws RecognitionException {
15189
15190 int stackSize = keepStackSize();
15191
15192 try {
15193 // InternalProblem.g:4835:1: ( ( ruleIdentifier ) )
15194 // InternalProblem.g:4836:2: ( ruleIdentifier )
15195 {
15196 // InternalProblem.g:4836:2: ( ruleIdentifier )
15197 // InternalProblem.g:4837:3: ruleIdentifier
15198 {
15199 before(grammarAccess.getProblemAccess().getNameIdentifierParserRuleCall_0_1_0());
15200 pushFollow(FOLLOW_2);
15201 ruleIdentifier();
15202
15203 state._fsp--;
15204
15205 after(grammarAccess.getProblemAccess().getNameIdentifierParserRuleCall_0_1_0());
15206
15207 }
15208
15209
15210 }
15211
15212 }
15213 catch (RecognitionException re) {
15214 reportError(re);
15215 recover(input,re);
15216 }
15217 finally {
15218
15219 restoreStackSize(stackSize);
15220
15221 }
15222 return ;
15223 }
15224 // $ANTLR end "rule__Problem__NameAssignment_0_1"
15225
15226
15227 // $ANTLR start "rule__Problem__StatementsAssignment_1"
15228 // InternalProblem.g:4846:1: rule__Problem__StatementsAssignment_1 : ( ruleStatement ) ;
15229 public final void rule__Problem__StatementsAssignment_1() throws RecognitionException {
15230
15231 int stackSize = keepStackSize();
15232
15233 try {
15234 // InternalProblem.g:4850:1: ( ( ruleStatement ) )
15235 // InternalProblem.g:4851:2: ( ruleStatement )
15236 {
15237 // InternalProblem.g:4851:2: ( ruleStatement )
15238 // InternalProblem.g:4852:3: ruleStatement
15239 {
15240 before(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_1_0());
15241 pushFollow(FOLLOW_2);
15242 ruleStatement();
15243
15244 state._fsp--;
15245
15246 after(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_1_0());
15247
15248 }
15249
15250
15251 }
15252
15253 }
15254 catch (RecognitionException re) {
15255 reportError(re);
15256 recover(input,re);
15257 }
15258 finally {
15259
15260 restoreStackSize(stackSize);
15261
15262 }
15263 return ;
15264 }
15265 // $ANTLR end "rule__Problem__StatementsAssignment_1"
15266
15267
15268 // $ANTLR start "rule__ClassDeclaration__AbstractAssignment_0"
15269 // InternalProblem.g:4861:1: rule__ClassDeclaration__AbstractAssignment_0 : ( ( 'abstract' ) ) ;
15270 public final void rule__ClassDeclaration__AbstractAssignment_0() throws RecognitionException {
15271
15272 int stackSize = keepStackSize();
15273
15274 try {
15275 // InternalProblem.g:4865:1: ( ( ( 'abstract' ) ) )
15276 // InternalProblem.g:4866:2: ( ( 'abstract' ) )
15277 {
15278 // InternalProblem.g:4866:2: ( ( 'abstract' ) )
15279 // InternalProblem.g:4867:3: ( 'abstract' )
15280 {
15281 before(grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0());
15282 // InternalProblem.g:4868:3: ( 'abstract' )
15283 // InternalProblem.g:4869:4: 'abstract'
15284 {
15285 before(grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0());
15286 match(input,42,FOLLOW_2);
15287 after(grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0());
15288
15289 }
15290
15291 after(grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0());
15292
15293 }
15294
15295
15296 }
15297
15298 }
15299 catch (RecognitionException re) {
15300 reportError(re);
15301 recover(input,re);
15302 }
15303 finally {
15304
15305 restoreStackSize(stackSize);
15306
15307 }
15308 return ;
15309 }
15310 // $ANTLR end "rule__ClassDeclaration__AbstractAssignment_0"
15311
15312
15313 // $ANTLR start "rule__ClassDeclaration__NameAssignment_2"
15314 // InternalProblem.g:4880:1: rule__ClassDeclaration__NameAssignment_2 : ( ruleIdentifier ) ;
15315 public final void rule__ClassDeclaration__NameAssignment_2() throws RecognitionException {
15316
15317 int stackSize = keepStackSize();
15318
15319 try {
15320 // InternalProblem.g:4884:1: ( ( ruleIdentifier ) )
15321 // InternalProblem.g:4885:2: ( ruleIdentifier )
15322 {
15323 // InternalProblem.g:4885:2: ( ruleIdentifier )
15324 // InternalProblem.g:4886:3: ruleIdentifier
15325 {
15326 before(grammarAccess.getClassDeclarationAccess().getNameIdentifierParserRuleCall_2_0());
15327 pushFollow(FOLLOW_2);
15328 ruleIdentifier();
15329
15330 state._fsp--;
15331
15332 after(grammarAccess.getClassDeclarationAccess().getNameIdentifierParserRuleCall_2_0());
15333
15334 }
15335
15336
15337 }
15338
15339 }
15340 catch (RecognitionException re) {
15341 reportError(re);
15342 recover(input,re);
15343 }
15344 finally {
15345
15346 restoreStackSize(stackSize);
15347
15348 }
15349 return ;
15350 }
15351 // $ANTLR end "rule__ClassDeclaration__NameAssignment_2"
15352
15353
15354 // $ANTLR start "rule__ClassDeclaration__SuperTypesAssignment_3_1"
15355 // InternalProblem.g:4895:1: rule__ClassDeclaration__SuperTypesAssignment_3_1 : ( ( ruleQualifiedName ) ) ;
15356 public final void rule__ClassDeclaration__SuperTypesAssignment_3_1() throws RecognitionException {
15357
15358 int stackSize = keepStackSize();
15359
15360 try {
15361 // InternalProblem.g:4899:1: ( ( ( ruleQualifiedName ) ) )
15362 // InternalProblem.g:4900:2: ( ( ruleQualifiedName ) )
15363 {
15364 // InternalProblem.g:4900:2: ( ( ruleQualifiedName ) )
15365 // InternalProblem.g:4901:3: ( ruleQualifiedName )
15366 {
15367 before(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationCrossReference_3_1_0());
15368 // InternalProblem.g:4902:3: ( ruleQualifiedName )
15369 // InternalProblem.g:4903:4: ruleQualifiedName
15370 {
15371 before(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationQualifiedNameParserRuleCall_3_1_0_1());
15372 pushFollow(FOLLOW_2);
15373 ruleQualifiedName();
15374
15375 state._fsp--;
15376
15377 after(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationQualifiedNameParserRuleCall_3_1_0_1());
15378
15379 }
15380
15381 after(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationCrossReference_3_1_0());
15382
15383 }
15384
15385
15386 }
15387
15388 }
15389 catch (RecognitionException re) {
15390 reportError(re);
15391 recover(input,re);
15392 }
15393 finally {
15394
15395 restoreStackSize(stackSize);
15396
15397 }
15398 return ;
15399 }
15400 // $ANTLR end "rule__ClassDeclaration__SuperTypesAssignment_3_1"
15401
15402
15403 // $ANTLR start "rule__ClassDeclaration__SuperTypesAssignment_3_2_1"
15404 // InternalProblem.g:4914:1: rule__ClassDeclaration__SuperTypesAssignment_3_2_1 : ( ( ruleQualifiedName ) ) ;
15405 public final void rule__ClassDeclaration__SuperTypesAssignment_3_2_1() throws RecognitionException {
15406
15407 int stackSize = keepStackSize();
15408
15409 try {
15410 // InternalProblem.g:4918:1: ( ( ( ruleQualifiedName ) ) )
15411 // InternalProblem.g:4919:2: ( ( ruleQualifiedName ) )
15412 {
15413 // InternalProblem.g:4919:2: ( ( ruleQualifiedName ) )
15414 // InternalProblem.g:4920:3: ( ruleQualifiedName )
15415 {
15416 before(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationCrossReference_3_2_1_0());
15417 // InternalProblem.g:4921:3: ( ruleQualifiedName )
15418 // InternalProblem.g:4922:4: ruleQualifiedName
15419 {
15420 before(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationQualifiedNameParserRuleCall_3_2_1_0_1());
15421 pushFollow(FOLLOW_2);
15422 ruleQualifiedName();
15423
15424 state._fsp--;
15425
15426 after(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationQualifiedNameParserRuleCall_3_2_1_0_1());
15427
15428 }
15429
15430 after(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationCrossReference_3_2_1_0());
15431
15432 }
15433
15434
15435 }
15436
15437 }
15438 catch (RecognitionException re) {
15439 reportError(re);
15440 recover(input,re);
15441 }
15442 finally {
15443
15444 restoreStackSize(stackSize);
15445
15446 }
15447 return ;
15448 }
15449 // $ANTLR end "rule__ClassDeclaration__SuperTypesAssignment_3_2_1"
15450
15451
15452 // $ANTLR start "rule__ClassDeclaration__ReferenceDeclarationsAssignment_4_0_1_0"
15453 // InternalProblem.g:4933:1: rule__ClassDeclaration__ReferenceDeclarationsAssignment_4_0_1_0 : ( ruleReferenceDeclaration ) ;
15454 public final void rule__ClassDeclaration__ReferenceDeclarationsAssignment_4_0_1_0() throws RecognitionException {
15455
15456 int stackSize = keepStackSize();
15457
15458 try {
15459 // InternalProblem.g:4937:1: ( ( ruleReferenceDeclaration ) )
15460 // InternalProblem.g:4938:2: ( ruleReferenceDeclaration )
15461 {
15462 // InternalProblem.g:4938:2: ( ruleReferenceDeclaration )
15463 // InternalProblem.g:4939:3: ruleReferenceDeclaration
15464 {
15465 before(grammarAccess.getClassDeclarationAccess().getReferenceDeclarationsReferenceDeclarationParserRuleCall_4_0_1_0_0());
15466 pushFollow(FOLLOW_2);
15467 ruleReferenceDeclaration();
15468
15469 state._fsp--;
15470
15471 after(grammarAccess.getClassDeclarationAccess().getReferenceDeclarationsReferenceDeclarationParserRuleCall_4_0_1_0_0());
15472
15473 }
15474
15475
15476 }
15477
15478 }
15479 catch (RecognitionException re) {
15480 reportError(re);
15481 recover(input,re);
15482 }
15483 finally {
15484
15485 restoreStackSize(stackSize);
15486
15487 }
15488 return ;
15489 }
15490 // $ANTLR end "rule__ClassDeclaration__ReferenceDeclarationsAssignment_4_0_1_0"
15491
15492
15493 // $ANTLR start "rule__EnumDeclaration__NameAssignment_1"
15494 // InternalProblem.g:4948:1: rule__EnumDeclaration__NameAssignment_1 : ( ruleIdentifier ) ;
15495 public final void rule__EnumDeclaration__NameAssignment_1() throws RecognitionException {
15496
15497 int stackSize = keepStackSize();
15498
15499 try {
15500 // InternalProblem.g:4952:1: ( ( ruleIdentifier ) )
15501 // InternalProblem.g:4953:2: ( ruleIdentifier )
15502 {
15503 // InternalProblem.g:4953:2: ( ruleIdentifier )
15504 // InternalProblem.g:4954:3: ruleIdentifier
15505 {
15506 before(grammarAccess.getEnumDeclarationAccess().getNameIdentifierParserRuleCall_1_0());
15507 pushFollow(FOLLOW_2);
15508 ruleIdentifier();
15509
15510 state._fsp--;
15511
15512 after(grammarAccess.getEnumDeclarationAccess().getNameIdentifierParserRuleCall_1_0());
15513
15514 }
15515
15516
15517 }
15518
15519 }
15520 catch (RecognitionException re) {
15521 reportError(re);
15522 recover(input,re);
15523 }
15524 finally {
15525
15526 restoreStackSize(stackSize);
15527
15528 }
15529 return ;
15530 }
15531 // $ANTLR end "rule__EnumDeclaration__NameAssignment_1"
15532
15533
15534 // $ANTLR start "rule__EnumDeclaration__LiteralsAssignment_2_0_1_0"
15535 // InternalProblem.g:4963:1: rule__EnumDeclaration__LiteralsAssignment_2_0_1_0 : ( ruleEnumLiteral ) ;
15536 public final void rule__EnumDeclaration__LiteralsAssignment_2_0_1_0() throws RecognitionException {
15537
15538 int stackSize = keepStackSize();
15539
15540 try {
15541 // InternalProblem.g:4967:1: ( ( ruleEnumLiteral ) )
15542 // InternalProblem.g:4968:2: ( ruleEnumLiteral )
15543 {
15544 // InternalProblem.g:4968:2: ( ruleEnumLiteral )
15545 // InternalProblem.g:4969:3: ruleEnumLiteral
15546 {
15547 before(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_0_0());
15548 pushFollow(FOLLOW_2);
15549 ruleEnumLiteral();
15550
15551 state._fsp--;
15552
15553 after(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_0_0());
15554
15555 }
15556
15557
15558 }
15559
15560 }
15561 catch (RecognitionException re) {
15562 reportError(re);
15563 recover(input,re);
15564 }
15565 finally {
15566
15567 restoreStackSize(stackSize);
15568
15569 }
15570 return ;
15571 }
15572 // $ANTLR end "rule__EnumDeclaration__LiteralsAssignment_2_0_1_0"
15573
15574
15575 // $ANTLR start "rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1"
15576 // InternalProblem.g:4978:1: rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1 : ( ruleEnumLiteral ) ;
15577 public final void rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1() throws RecognitionException {
15578
15579 int stackSize = keepStackSize();
15580
15581 try {
15582 // InternalProblem.g:4982:1: ( ( ruleEnumLiteral ) )
15583 // InternalProblem.g:4983:2: ( ruleEnumLiteral )
15584 {
15585 // InternalProblem.g:4983:2: ( ruleEnumLiteral )
15586 // InternalProblem.g:4984:3: ruleEnumLiteral
15587 {
15588 before(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0());
15589 pushFollow(FOLLOW_2);
15590 ruleEnumLiteral();
15591
15592 state._fsp--;
15593
15594 after(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0());
15595
15596 }
15597
15598
15599 }
15600
15601 }
15602 catch (RecognitionException re) {
15603 reportError(re);
15604 recover(input,re);
15605 }
15606 finally {
15607
15608 restoreStackSize(stackSize);
15609
15610 }
15611 return ;
15612 }
15613 // $ANTLR end "rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1"
15614
15615
15616 // $ANTLR start "rule__EnumLiteral__NameAssignment"
15617 // InternalProblem.g:4993:1: rule__EnumLiteral__NameAssignment : ( ruleIdentifier ) ;
15618 public final void rule__EnumLiteral__NameAssignment() throws RecognitionException {
15619
15620 int stackSize = keepStackSize();
15621
15622 try {
15623 // InternalProblem.g:4997:1: ( ( ruleIdentifier ) )
15624 // InternalProblem.g:4998:2: ( ruleIdentifier )
15625 {
15626 // InternalProblem.g:4998:2: ( ruleIdentifier )
15627 // InternalProblem.g:4999:3: ruleIdentifier
15628 {
15629 before(grammarAccess.getEnumLiteralAccess().getNameIdentifierParserRuleCall_0());
15630 pushFollow(FOLLOW_2);
15631 ruleIdentifier();
15632
15633 state._fsp--;
15634
15635 after(grammarAccess.getEnumLiteralAccess().getNameIdentifierParserRuleCall_0());
15636
15637 }
15638
15639
15640 }
15641
15642 }
15643 catch (RecognitionException re) {
15644 reportError(re);
15645 recover(input,re);
15646 }
15647 finally {
15648
15649 restoreStackSize(stackSize);
15650
15651 }
15652 return ;
15653 }
15654 // $ANTLR end "rule__EnumLiteral__NameAssignment"
15655
15656
15657 // $ANTLR start "rule__ReferenceDeclaration__ContainmentAssignment_0_0"
15658 // InternalProblem.g:5008:1: rule__ReferenceDeclaration__ContainmentAssignment_0_0 : ( ( 'contains' ) ) ;
15659 public final void rule__ReferenceDeclaration__ContainmentAssignment_0_0() throws RecognitionException {
15660
15661 int stackSize = keepStackSize();
15662
15663 try {
15664 // InternalProblem.g:5012:1: ( ( ( 'contains' ) ) )
15665 // InternalProblem.g:5013:2: ( ( 'contains' ) )
15666 {
15667 // InternalProblem.g:5013:2: ( ( 'contains' ) )
15668 // InternalProblem.g:5014:3: ( 'contains' )
15669 {
15670 before(grammarAccess.getReferenceDeclarationAccess().getContainmentContainsKeyword_0_0_0());
15671 // InternalProblem.g:5015:3: ( 'contains' )
15672 // InternalProblem.g:5016:4: 'contains'
15673 {
15674 before(grammarAccess.getReferenceDeclarationAccess().getContainmentContainsKeyword_0_0_0());
15675 match(input,43,FOLLOW_2);
15676 after(grammarAccess.getReferenceDeclarationAccess().getContainmentContainsKeyword_0_0_0());
15677
15678 }
15679
15680 after(grammarAccess.getReferenceDeclarationAccess().getContainmentContainsKeyword_0_0_0());
15681
15682 }
15683
15684
15685 }
15686
15687 }
15688 catch (RecognitionException re) {
15689 reportError(re);
15690 recover(input,re);
15691 }
15692 finally {
15693
15694 restoreStackSize(stackSize);
15695
15696 }
15697 return ;
15698 }
15699 // $ANTLR end "rule__ReferenceDeclaration__ContainmentAssignment_0_0"
15700
15701
15702 // $ANTLR start "rule__ReferenceDeclaration__ReferenceTypeAssignment_1"
15703 // InternalProblem.g:5027:1: rule__ReferenceDeclaration__ReferenceTypeAssignment_1 : ( ( ruleQualifiedName ) ) ;
15704 public final void rule__ReferenceDeclaration__ReferenceTypeAssignment_1() throws RecognitionException {
15705
15706 int stackSize = keepStackSize();
15707
15708 try {
15709 // InternalProblem.g:5031:1: ( ( ( ruleQualifiedName ) ) )
15710 // InternalProblem.g:5032:2: ( ( ruleQualifiedName ) )
15711 {
15712 // InternalProblem.g:5032:2: ( ( ruleQualifiedName ) )
15713 // InternalProblem.g:5033:3: ( ruleQualifiedName )
15714 {
15715 before(grammarAccess.getReferenceDeclarationAccess().getReferenceTypeRelationCrossReference_1_0());
15716 // InternalProblem.g:5034:3: ( ruleQualifiedName )
15717 // InternalProblem.g:5035:4: ruleQualifiedName
15718 {
15719 before(grammarAccess.getReferenceDeclarationAccess().getReferenceTypeRelationQualifiedNameParserRuleCall_1_0_1());
15720 pushFollow(FOLLOW_2);
15721 ruleQualifiedName();
15722
15723 state._fsp--;
15724
15725 after(grammarAccess.getReferenceDeclarationAccess().getReferenceTypeRelationQualifiedNameParserRuleCall_1_0_1());
15726
15727 }
15728
15729 after(grammarAccess.getReferenceDeclarationAccess().getReferenceTypeRelationCrossReference_1_0());
15730
15731 }
15732
15733
15734 }
15735
15736 }
15737 catch (RecognitionException re) {
15738 reportError(re);
15739 recover(input,re);
15740 }
15741 finally {
15742
15743 restoreStackSize(stackSize);
15744
15745 }
15746 return ;
15747 }
15748 // $ANTLR end "rule__ReferenceDeclaration__ReferenceTypeAssignment_1"
15749
15750
15751 // $ANTLR start "rule__ReferenceDeclaration__MultiplicityAssignment_2_1"
15752 // InternalProblem.g:5046:1: rule__ReferenceDeclaration__MultiplicityAssignment_2_1 : ( ruleMultiplicity ) ;
15753 public final void rule__ReferenceDeclaration__MultiplicityAssignment_2_1() throws RecognitionException {
15754
15755 int stackSize = keepStackSize();
15756
15757 try {
15758 // InternalProblem.g:5050:1: ( ( ruleMultiplicity ) )
15759 // InternalProblem.g:5051:2: ( ruleMultiplicity )
15760 {
15761 // InternalProblem.g:5051:2: ( ruleMultiplicity )
15762 // InternalProblem.g:5052:3: ruleMultiplicity
15763 {
15764 before(grammarAccess.getReferenceDeclarationAccess().getMultiplicityMultiplicityParserRuleCall_2_1_0());
15765 pushFollow(FOLLOW_2);
15766 ruleMultiplicity();
15767
15768 state._fsp--;
15769
15770 after(grammarAccess.getReferenceDeclarationAccess().getMultiplicityMultiplicityParserRuleCall_2_1_0());
15771
15772 }
15773
15774
15775 }
15776
15777 }
15778 catch (RecognitionException re) {
15779 reportError(re);
15780 recover(input,re);
15781 }
15782 finally {
15783
15784 restoreStackSize(stackSize);
15785
15786 }
15787 return ;
15788 }
15789 // $ANTLR end "rule__ReferenceDeclaration__MultiplicityAssignment_2_1"
15790
15791
15792 // $ANTLR start "rule__ReferenceDeclaration__NameAssignment_3"
15793 // InternalProblem.g:5061:1: rule__ReferenceDeclaration__NameAssignment_3 : ( ruleIdentifier ) ;
15794 public final void rule__ReferenceDeclaration__NameAssignment_3() throws RecognitionException {
15795
15796 int stackSize = keepStackSize();
15797
15798 try {
15799 // InternalProblem.g:5065:1: ( ( ruleIdentifier ) )
15800 // InternalProblem.g:5066:2: ( ruleIdentifier )
15801 {
15802 // InternalProblem.g:5066:2: ( ruleIdentifier )
15803 // InternalProblem.g:5067:3: ruleIdentifier
15804 {
15805 before(grammarAccess.getReferenceDeclarationAccess().getNameIdentifierParserRuleCall_3_0());
15806 pushFollow(FOLLOW_2);
15807 ruleIdentifier();
15808
15809 state._fsp--;
15810
15811 after(grammarAccess.getReferenceDeclarationAccess().getNameIdentifierParserRuleCall_3_0());
15812
15813 }
15814
15815
15816 }
15817
15818 }
15819 catch (RecognitionException re) {
15820 reportError(re);
15821 recover(input,re);
15822 }
15823 finally {
15824
15825 restoreStackSize(stackSize);
15826
15827 }
15828 return ;
15829 }
15830 // $ANTLR end "rule__ReferenceDeclaration__NameAssignment_3"
15831
15832
15833 // $ANTLR start "rule__ReferenceDeclaration__OppositeAssignment_4_1"
15834 // InternalProblem.g:5076:1: rule__ReferenceDeclaration__OppositeAssignment_4_1 : ( ( ruleQualifiedName ) ) ;
15835 public final void rule__ReferenceDeclaration__OppositeAssignment_4_1() throws RecognitionException {
15836
15837 int stackSize = keepStackSize();
15838
15839 try {
15840 // InternalProblem.g:5080:1: ( ( ( ruleQualifiedName ) ) )
15841 // InternalProblem.g:5081:2: ( ( ruleQualifiedName ) )
15842 {
15843 // InternalProblem.g:5081:2: ( ( ruleQualifiedName ) )
15844 // InternalProblem.g:5082:3: ( ruleQualifiedName )
15845 {
15846 before(grammarAccess.getReferenceDeclarationAccess().getOppositeReferenceDeclarationCrossReference_4_1_0());
15847 // InternalProblem.g:5083:3: ( ruleQualifiedName )
15848 // InternalProblem.g:5084:4: ruleQualifiedName
15849 {
15850 before(grammarAccess.getReferenceDeclarationAccess().getOppositeReferenceDeclarationQualifiedNameParserRuleCall_4_1_0_1());
15851 pushFollow(FOLLOW_2);
15852 ruleQualifiedName();
15853
15854 state._fsp--;
15855
15856 after(grammarAccess.getReferenceDeclarationAccess().getOppositeReferenceDeclarationQualifiedNameParserRuleCall_4_1_0_1());
15857
15858 }
15859
15860 after(grammarAccess.getReferenceDeclarationAccess().getOppositeReferenceDeclarationCrossReference_4_1_0());
15861
15862 }
15863
15864
15865 }
15866
15867 }
15868 catch (RecognitionException re) {
15869 reportError(re);
15870 recover(input,re);
15871 }
15872 finally {
15873
15874 restoreStackSize(stackSize);
15875
15876 }
15877 return ;
15878 }
15879 // $ANTLR end "rule__ReferenceDeclaration__OppositeAssignment_4_1"
15880
15881
15882 // $ANTLR start "rule__PredicateDefinition__ErrorAssignment_0_0_0"
15883 // InternalProblem.g:5095:1: rule__PredicateDefinition__ErrorAssignment_0_0_0 : ( ( 'error' ) ) ;
15884 public final void rule__PredicateDefinition__ErrorAssignment_0_0_0() throws RecognitionException {
15885
15886 int stackSize = keepStackSize();
15887
15888 try {
15889 // InternalProblem.g:5099:1: ( ( ( 'error' ) ) )
15890 // InternalProblem.g:5100:2: ( ( 'error' ) )
15891 {
15892 // InternalProblem.g:5100:2: ( ( 'error' ) )
15893 // InternalProblem.g:5101:3: ( 'error' )
15894 {
15895 before(grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_0_0_0());
15896 // InternalProblem.g:5102:3: ( 'error' )
15897 // InternalProblem.g:5103:4: 'error'
15898 {
15899 before(grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_0_0_0());
15900 match(input,44,FOLLOW_2);
15901 after(grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_0_0_0());
15902
15903 }
15904
15905 after(grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_0_0_0());
15906
15907 }
15908
15909
15910 }
15911
15912 }
15913 catch (RecognitionException re) {
15914 reportError(re);
15915 recover(input,re);
15916 }
15917 finally {
15918
15919 restoreStackSize(stackSize);
15920
15921 }
15922 return ;
15923 }
15924 // $ANTLR end "rule__PredicateDefinition__ErrorAssignment_0_0_0"
15925
15926
15927 // $ANTLR start "rule__PredicateDefinition__NameAssignment_1"
15928 // InternalProblem.g:5114:1: rule__PredicateDefinition__NameAssignment_1 : ( ruleIdentifier ) ;
15929 public final void rule__PredicateDefinition__NameAssignment_1() throws RecognitionException {
15930
15931 int stackSize = keepStackSize();
15932
15933 try {
15934 // InternalProblem.g:5118:1: ( ( ruleIdentifier ) )
15935 // InternalProblem.g:5119:2: ( ruleIdentifier )
15936 {
15937 // InternalProblem.g:5119:2: ( ruleIdentifier )
15938 // InternalProblem.g:5120:3: ruleIdentifier
15939 {
15940 before(grammarAccess.getPredicateDefinitionAccess().getNameIdentifierParserRuleCall_1_0());
15941 pushFollow(FOLLOW_2);
15942 ruleIdentifier();
15943
15944 state._fsp--;
15945
15946 after(grammarAccess.getPredicateDefinitionAccess().getNameIdentifierParserRuleCall_1_0());
15947
15948 }
15949
15950
15951 }
15952
15953 }
15954 catch (RecognitionException re) {
15955 reportError(re);
15956 recover(input,re);
15957 }
15958 finally {
15959
15960 restoreStackSize(stackSize);
15961
15962 }
15963 return ;
15964 }
15965 // $ANTLR end "rule__PredicateDefinition__NameAssignment_1"
15966
15967
15968 // $ANTLR start "rule__PredicateDefinition__ParametersAssignment_3_0"
15969 // InternalProblem.g:5129:1: rule__PredicateDefinition__ParametersAssignment_3_0 : ( ruleParameter ) ;
15970 public final void rule__PredicateDefinition__ParametersAssignment_3_0() throws RecognitionException {
15971
15972 int stackSize = keepStackSize();
15973
15974 try {
15975 // InternalProblem.g:5133:1: ( ( ruleParameter ) )
15976 // InternalProblem.g:5134:2: ( ruleParameter )
15977 {
15978 // InternalProblem.g:5134:2: ( ruleParameter )
15979 // InternalProblem.g:5135:3: ruleParameter
15980 {
15981 before(grammarAccess.getPredicateDefinitionAccess().getParametersParameterParserRuleCall_3_0_0());
15982 pushFollow(FOLLOW_2);
15983 ruleParameter();
15984
15985 state._fsp--;
15986
15987 after(grammarAccess.getPredicateDefinitionAccess().getParametersParameterParserRuleCall_3_0_0());
15988
15989 }
15990
15991
15992 }
15993
15994 }
15995 catch (RecognitionException re) {
15996 reportError(re);
15997 recover(input,re);
15998 }
15999 finally {
16000
16001 restoreStackSize(stackSize);
16002
16003 }
16004 return ;
16005 }
16006 // $ANTLR end "rule__PredicateDefinition__ParametersAssignment_3_0"
16007
16008
16009 // $ANTLR start "rule__PredicateDefinition__ParametersAssignment_3_1_1"
16010 // InternalProblem.g:5144:1: rule__PredicateDefinition__ParametersAssignment_3_1_1 : ( ruleParameter ) ;
16011 public final void rule__PredicateDefinition__ParametersAssignment_3_1_1() throws RecognitionException {
16012
16013 int stackSize = keepStackSize();
16014
16015 try {
16016 // InternalProblem.g:5148:1: ( ( ruleParameter ) )
16017 // InternalProblem.g:5149:2: ( ruleParameter )
16018 {
16019 // InternalProblem.g:5149:2: ( ruleParameter )
16020 // InternalProblem.g:5150:3: ruleParameter
16021 {
16022 before(grammarAccess.getPredicateDefinitionAccess().getParametersParameterParserRuleCall_3_1_1_0());
16023 pushFollow(FOLLOW_2);
16024 ruleParameter();
16025
16026 state._fsp--;
16027
16028 after(grammarAccess.getPredicateDefinitionAccess().getParametersParameterParserRuleCall_3_1_1_0());
16029
16030 }
16031
16032
16033 }
16034
16035 }
16036 catch (RecognitionException re) {
16037 reportError(re);
16038 recover(input,re);
16039 }
16040 finally {
16041
16042 restoreStackSize(stackSize);
16043
16044 }
16045 return ;
16046 }
16047 // $ANTLR end "rule__PredicateDefinition__ParametersAssignment_3_1_1"
16048
16049
16050 // $ANTLR start "rule__PredicateDefinition__BodiesAssignment_5_1"
16051 // InternalProblem.g:5159:1: rule__PredicateDefinition__BodiesAssignment_5_1 : ( ruleConjunction ) ;
16052 public final void rule__PredicateDefinition__BodiesAssignment_5_1() throws RecognitionException {
16053
16054 int stackSize = keepStackSize();
16055
16056 try {
16057 // InternalProblem.g:5163:1: ( ( ruleConjunction ) )
16058 // InternalProblem.g:5164:2: ( ruleConjunction )
16059 {
16060 // InternalProblem.g:5164:2: ( ruleConjunction )
16061 // InternalProblem.g:5165:3: ruleConjunction
16062 {
16063 before(grammarAccess.getPredicateDefinitionAccess().getBodiesConjunctionParserRuleCall_5_1_0());
16064 pushFollow(FOLLOW_2);
16065 ruleConjunction();
16066
16067 state._fsp--;
16068
16069 after(grammarAccess.getPredicateDefinitionAccess().getBodiesConjunctionParserRuleCall_5_1_0());
16070
16071 }
16072
16073
16074 }
16075
16076 }
16077 catch (RecognitionException re) {
16078 reportError(re);
16079 recover(input,re);
16080 }
16081 finally {
16082
16083 restoreStackSize(stackSize);
16084
16085 }
16086 return ;
16087 }
16088 // $ANTLR end "rule__PredicateDefinition__BodiesAssignment_5_1"
16089
16090
16091 // $ANTLR start "rule__PredicateDefinition__BodiesAssignment_5_2_1"
16092 // InternalProblem.g:5174:1: rule__PredicateDefinition__BodiesAssignment_5_2_1 : ( ruleConjunction ) ;
16093 public final void rule__PredicateDefinition__BodiesAssignment_5_2_1() throws RecognitionException {
16094
16095 int stackSize = keepStackSize();
16096
16097 try {
16098 // InternalProblem.g:5178:1: ( ( ruleConjunction ) )
16099 // InternalProblem.g:5179:2: ( ruleConjunction )
16100 {
16101 // InternalProblem.g:5179:2: ( ruleConjunction )
16102 // InternalProblem.g:5180:3: ruleConjunction
16103 {
16104 before(grammarAccess.getPredicateDefinitionAccess().getBodiesConjunctionParserRuleCall_5_2_1_0());
16105 pushFollow(FOLLOW_2);
16106 ruleConjunction();
16107
16108 state._fsp--;
16109
16110 after(grammarAccess.getPredicateDefinitionAccess().getBodiesConjunctionParserRuleCall_5_2_1_0());
16111
16112 }
16113
16114
16115 }
16116
16117 }
16118 catch (RecognitionException re) {
16119 reportError(re);
16120 recover(input,re);
16121 }
16122 finally {
16123
16124 restoreStackSize(stackSize);
16125
16126 }
16127 return ;
16128 }
16129 // $ANTLR end "rule__PredicateDefinition__BodiesAssignment_5_2_1"
16130
16131
16132 // $ANTLR start "rule__Parameter__ParameterTypeAssignment_0"
16133 // InternalProblem.g:5189:1: rule__Parameter__ParameterTypeAssignment_0 : ( ( ruleQualifiedName ) ) ;
16134 public final void rule__Parameter__ParameterTypeAssignment_0() throws RecognitionException {
16135
16136 int stackSize = keepStackSize();
16137
16138 try {
16139 // InternalProblem.g:5193:1: ( ( ( ruleQualifiedName ) ) )
16140 // InternalProblem.g:5194:2: ( ( ruleQualifiedName ) )
16141 {
16142 // InternalProblem.g:5194:2: ( ( ruleQualifiedName ) )
16143 // InternalProblem.g:5195:3: ( ruleQualifiedName )
16144 {
16145 before(grammarAccess.getParameterAccess().getParameterTypeRelationCrossReference_0_0());
16146 // InternalProblem.g:5196:3: ( ruleQualifiedName )
16147 // InternalProblem.g:5197:4: ruleQualifiedName
16148 {
16149 before(grammarAccess.getParameterAccess().getParameterTypeRelationQualifiedNameParserRuleCall_0_0_1());
16150 pushFollow(FOLLOW_2);
16151 ruleQualifiedName();
16152
16153 state._fsp--;
16154
16155 after(grammarAccess.getParameterAccess().getParameterTypeRelationQualifiedNameParserRuleCall_0_0_1());
16156
16157 }
16158
16159 after(grammarAccess.getParameterAccess().getParameterTypeRelationCrossReference_0_0());
16160
16161 }
16162
16163
16164 }
16165
16166 }
16167 catch (RecognitionException re) {
16168 reportError(re);
16169 recover(input,re);
16170 }
16171 finally {
16172
16173 restoreStackSize(stackSize);
16174
16175 }
16176 return ;
16177 }
16178 // $ANTLR end "rule__Parameter__ParameterTypeAssignment_0"
16179
16180
16181 // $ANTLR start "rule__Parameter__NameAssignment_1"
16182 // InternalProblem.g:5208:1: rule__Parameter__NameAssignment_1 : ( ruleIdentifier ) ;
16183 public final void rule__Parameter__NameAssignment_1() throws RecognitionException {
16184
16185 int stackSize = keepStackSize();
16186
16187 try {
16188 // InternalProblem.g:5212:1: ( ( ruleIdentifier ) )
16189 // InternalProblem.g:5213:2: ( ruleIdentifier )
16190 {
16191 // InternalProblem.g:5213:2: ( ruleIdentifier )
16192 // InternalProblem.g:5214:3: ruleIdentifier
16193 {
16194 before(grammarAccess.getParameterAccess().getNameIdentifierParserRuleCall_1_0());
16195 pushFollow(FOLLOW_2);
16196 ruleIdentifier();
16197
16198 state._fsp--;
16199
16200 after(grammarAccess.getParameterAccess().getNameIdentifierParserRuleCall_1_0());
16201
16202 }
16203
16204
16205 }
16206
16207 }
16208 catch (RecognitionException re) {
16209 reportError(re);
16210 recover(input,re);
16211 }
16212 finally {
16213
16214 restoreStackSize(stackSize);
16215
16216 }
16217 return ;
16218 }
16219 // $ANTLR end "rule__Parameter__NameAssignment_1"
16220
16221
16222 // $ANTLR start "rule__Conjunction__LiteralsAssignment_0"
16223 // InternalProblem.g:5223:1: rule__Conjunction__LiteralsAssignment_0 : ( ruleLiteral ) ;
16224 public final void rule__Conjunction__LiteralsAssignment_0() throws RecognitionException {
16225
16226 int stackSize = keepStackSize();
16227
16228 try {
16229 // InternalProblem.g:5227:1: ( ( ruleLiteral ) )
16230 // InternalProblem.g:5228:2: ( ruleLiteral )
16231 {
16232 // InternalProblem.g:5228:2: ( ruleLiteral )
16233 // InternalProblem.g:5229:3: ruleLiteral
16234 {
16235 before(grammarAccess.getConjunctionAccess().getLiteralsLiteralParserRuleCall_0_0());
16236 pushFollow(FOLLOW_2);
16237 ruleLiteral();
16238
16239 state._fsp--;
16240
16241 after(grammarAccess.getConjunctionAccess().getLiteralsLiteralParserRuleCall_0_0());
16242
16243 }
16244
16245
16246 }
16247
16248 }
16249 catch (RecognitionException re) {
16250 reportError(re);
16251 recover(input,re);
16252 }
16253 finally {
16254
16255 restoreStackSize(stackSize);
16256
16257 }
16258 return ;
16259 }
16260 // $ANTLR end "rule__Conjunction__LiteralsAssignment_0"
16261
16262
16263 // $ANTLR start "rule__Conjunction__LiteralsAssignment_1_1"
16264 // InternalProblem.g:5238:1: rule__Conjunction__LiteralsAssignment_1_1 : ( ruleLiteral ) ;
16265 public final void rule__Conjunction__LiteralsAssignment_1_1() throws RecognitionException {
16266
16267 int stackSize = keepStackSize();
16268
16269 try {
16270 // InternalProblem.g:5242:1: ( ( ruleLiteral ) )
16271 // InternalProblem.g:5243:2: ( ruleLiteral )
16272 {
16273 // InternalProblem.g:5243:2: ( ruleLiteral )
16274 // InternalProblem.g:5244:3: ruleLiteral
16275 {
16276 before(grammarAccess.getConjunctionAccess().getLiteralsLiteralParserRuleCall_1_1_0());
16277 pushFollow(FOLLOW_2);
16278 ruleLiteral();
16279
16280 state._fsp--;
16281
16282 after(grammarAccess.getConjunctionAccess().getLiteralsLiteralParserRuleCall_1_1_0());
16283
16284 }
16285
16286
16287 }
16288
16289 }
16290 catch (RecognitionException re) {
16291 reportError(re);
16292 recover(input,re);
16293 }
16294 finally {
16295
16296 restoreStackSize(stackSize);
16297
16298 }
16299 return ;
16300 }
16301 // $ANTLR end "rule__Conjunction__LiteralsAssignment_1_1"
16302
16303
16304 // $ANTLR start "rule__NegativeLiteral__AtomAssignment_1"
16305 // InternalProblem.g:5253:1: rule__NegativeLiteral__AtomAssignment_1 : ( ruleAtom ) ;
16306 public final void rule__NegativeLiteral__AtomAssignment_1() throws RecognitionException {
16307
16308 int stackSize = keepStackSize();
16309
16310 try {
16311 // InternalProblem.g:5257:1: ( ( ruleAtom ) )
16312 // InternalProblem.g:5258:2: ( ruleAtom )
16313 {
16314 // InternalProblem.g:5258:2: ( ruleAtom )
16315 // InternalProblem.g:5259:3: ruleAtom
16316 {
16317 before(grammarAccess.getNegativeLiteralAccess().getAtomAtomParserRuleCall_1_0());
16318 pushFollow(FOLLOW_2);
16319 ruleAtom();
16320
16321 state._fsp--;
16322
16323 after(grammarAccess.getNegativeLiteralAccess().getAtomAtomParserRuleCall_1_0());
16324
16325 }
16326
16327
16328 }
16329
16330 }
16331 catch (RecognitionException re) {
16332 reportError(re);
16333 recover(input,re);
16334 }
16335 finally {
16336
16337 restoreStackSize(stackSize);
16338
16339 }
16340 return ;
16341 }
16342 // $ANTLR end "rule__NegativeLiteral__AtomAssignment_1"
16343
16344
16345 // $ANTLR start "rule__Atom__RelationAssignment_0"
16346 // InternalProblem.g:5268:1: rule__Atom__RelationAssignment_0 : ( ( ruleQualifiedName ) ) ;
16347 public final void rule__Atom__RelationAssignment_0() throws RecognitionException {
16348
16349 int stackSize = keepStackSize();
16350
16351 try {
16352 // InternalProblem.g:5272:1: ( ( ( ruleQualifiedName ) ) )
16353 // InternalProblem.g:5273:2: ( ( ruleQualifiedName ) )
16354 {
16355 // InternalProblem.g:5273:2: ( ( ruleQualifiedName ) )
16356 // InternalProblem.g:5274:3: ( ruleQualifiedName )
16357 {
16358 before(grammarAccess.getAtomAccess().getRelationRelationCrossReference_0_0());
16359 // InternalProblem.g:5275:3: ( ruleQualifiedName )
16360 // InternalProblem.g:5276:4: ruleQualifiedName
16361 {
16362 before(grammarAccess.getAtomAccess().getRelationRelationQualifiedNameParserRuleCall_0_0_1());
16363 pushFollow(FOLLOW_2);
16364 ruleQualifiedName();
16365
16366 state._fsp--;
16367
16368 after(grammarAccess.getAtomAccess().getRelationRelationQualifiedNameParserRuleCall_0_0_1());
16369
16370 }
16371
16372 after(grammarAccess.getAtomAccess().getRelationRelationCrossReference_0_0());
16373
16374 }
16375
16376
16377 }
16378
16379 }
16380 catch (RecognitionException re) {
16381 reportError(re);
16382 recover(input,re);
16383 }
16384 finally {
16385
16386 restoreStackSize(stackSize);
16387
16388 }
16389 return ;
16390 }
16391 // $ANTLR end "rule__Atom__RelationAssignment_0"
16392
16393
16394 // $ANTLR start "rule__Atom__TransitiveClosureAssignment_1"
16395 // InternalProblem.g:5287:1: rule__Atom__TransitiveClosureAssignment_1 : ( ( '+' ) ) ;
16396 public final void rule__Atom__TransitiveClosureAssignment_1() throws RecognitionException {
16397
16398 int stackSize = keepStackSize();
16399
16400 try {
16401 // InternalProblem.g:5291:1: ( ( ( '+' ) ) )
16402 // InternalProblem.g:5292:2: ( ( '+' ) )
16403 {
16404 // InternalProblem.g:5292:2: ( ( '+' ) )
16405 // InternalProblem.g:5293:3: ( '+' )
16406 {
16407 before(grammarAccess.getAtomAccess().getTransitiveClosurePlusSignKeyword_1_0());
16408 // InternalProblem.g:5294:3: ( '+' )
16409 // InternalProblem.g:5295:4: '+'
16410 {
16411 before(grammarAccess.getAtomAccess().getTransitiveClosurePlusSignKeyword_1_0());
16412 match(input,45,FOLLOW_2);
16413 after(grammarAccess.getAtomAccess().getTransitiveClosurePlusSignKeyword_1_0());
16414
16415 }
16416
16417 after(grammarAccess.getAtomAccess().getTransitiveClosurePlusSignKeyword_1_0());
16418
16419 }
16420
16421
16422 }
16423
16424 }
16425 catch (RecognitionException re) {
16426 reportError(re);
16427 recover(input,re);
16428 }
16429 finally {
16430
16431 restoreStackSize(stackSize);
16432
16433 }
16434 return ;
16435 }
16436 // $ANTLR end "rule__Atom__TransitiveClosureAssignment_1"
16437
16438
16439 // $ANTLR start "rule__Atom__ArgumentsAssignment_3_0"
16440 // InternalProblem.g:5306:1: rule__Atom__ArgumentsAssignment_3_0 : ( ruleArgument ) ;
16441 public final void rule__Atom__ArgumentsAssignment_3_0() throws RecognitionException {
16442
16443 int stackSize = keepStackSize();
16444
16445 try {
16446 // InternalProblem.g:5310:1: ( ( ruleArgument ) )
16447 // InternalProblem.g:5311:2: ( ruleArgument )
16448 {
16449 // InternalProblem.g:5311:2: ( ruleArgument )
16450 // InternalProblem.g:5312:3: ruleArgument
16451 {
16452 before(grammarAccess.getAtomAccess().getArgumentsArgumentParserRuleCall_3_0_0());
16453 pushFollow(FOLLOW_2);
16454 ruleArgument();
16455
16456 state._fsp--;
16457
16458 after(grammarAccess.getAtomAccess().getArgumentsArgumentParserRuleCall_3_0_0());
16459
16460 }
16461
16462
16463 }
16464
16465 }
16466 catch (RecognitionException re) {
16467 reportError(re);
16468 recover(input,re);
16469 }
16470 finally {
16471
16472 restoreStackSize(stackSize);
16473
16474 }
16475 return ;
16476 }
16477 // $ANTLR end "rule__Atom__ArgumentsAssignment_3_0"
16478
16479
16480 // $ANTLR start "rule__Atom__ArgumentsAssignment_3_1_1"
16481 // InternalProblem.g:5321:1: rule__Atom__ArgumentsAssignment_3_1_1 : ( ruleArgument ) ;
16482 public final void rule__Atom__ArgumentsAssignment_3_1_1() throws RecognitionException {
16483
16484 int stackSize = keepStackSize();
16485
16486 try {
16487 // InternalProblem.g:5325:1: ( ( ruleArgument ) )
16488 // InternalProblem.g:5326:2: ( ruleArgument )
16489 {
16490 // InternalProblem.g:5326:2: ( ruleArgument )
16491 // InternalProblem.g:5327:3: ruleArgument
16492 {
16493 before(grammarAccess.getAtomAccess().getArgumentsArgumentParserRuleCall_3_1_1_0());
16494 pushFollow(FOLLOW_2);
16495 ruleArgument();
16496
16497 state._fsp--;
16498
16499 after(grammarAccess.getAtomAccess().getArgumentsArgumentParserRuleCall_3_1_1_0());
16500
16501 }
16502
16503
16504 }
16505
16506 }
16507 catch (RecognitionException re) {
16508 reportError(re);
16509 recover(input,re);
16510 }
16511 finally {
16512
16513 restoreStackSize(stackSize);
16514
16515 }
16516 return ;
16517 }
16518 // $ANTLR end "rule__Atom__ArgumentsAssignment_3_1_1"
16519
16520
16521 // $ANTLR start "rule__VariableOrNodeArgument__VariableOrNodeAssignment"
16522 // InternalProblem.g:5336:1: rule__VariableOrNodeArgument__VariableOrNodeAssignment : ( ( ruleQualifiedName ) ) ;
16523 public final void rule__VariableOrNodeArgument__VariableOrNodeAssignment() throws RecognitionException {
16524
16525 int stackSize = keepStackSize();
16526
16527 try {
16528 // InternalProblem.g:5340:1: ( ( ( ruleQualifiedName ) ) )
16529 // InternalProblem.g:5341:2: ( ( ruleQualifiedName ) )
16530 {
16531 // InternalProblem.g:5341:2: ( ( ruleQualifiedName ) )
16532 // InternalProblem.g:5342:3: ( ruleQualifiedName )
16533 {
16534 before(grammarAccess.getVariableOrNodeArgumentAccess().getVariableOrNodeVariableOrNodeCrossReference_0());
16535 // InternalProblem.g:5343:3: ( ruleQualifiedName )
16536 // InternalProblem.g:5344:4: ruleQualifiedName
16537 {
16538 before(grammarAccess.getVariableOrNodeArgumentAccess().getVariableOrNodeVariableOrNodeQualifiedNameParserRuleCall_0_1());
16539 pushFollow(FOLLOW_2);
16540 ruleQualifiedName();
16541
16542 state._fsp--;
16543
16544 after(grammarAccess.getVariableOrNodeArgumentAccess().getVariableOrNodeVariableOrNodeQualifiedNameParserRuleCall_0_1());
16545
16546 }
16547
16548 after(grammarAccess.getVariableOrNodeArgumentAccess().getVariableOrNodeVariableOrNodeCrossReference_0());
16549
16550 }
16551
16552
16553 }
16554
16555 }
16556 catch (RecognitionException re) {
16557 reportError(re);
16558 recover(input,re);
16559 }
16560 finally {
16561
16562 restoreStackSize(stackSize);
16563
16564 }
16565 return ;
16566 }
16567 // $ANTLR end "rule__VariableOrNodeArgument__VariableOrNodeAssignment"
16568
16569
16570 // $ANTLR start "rule__ConstantArgument__ConstantAssignment"
16571 // InternalProblem.g:5355:1: rule__ConstantArgument__ConstantAssignment : ( ruleConstant ) ;
16572 public final void rule__ConstantArgument__ConstantAssignment() throws RecognitionException {
16573
16574 int stackSize = keepStackSize();
16575
16576 try {
16577 // InternalProblem.g:5359:1: ( ( ruleConstant ) )
16578 // InternalProblem.g:5360:2: ( ruleConstant )
16579 {
16580 // InternalProblem.g:5360:2: ( ruleConstant )
16581 // InternalProblem.g:5361:3: ruleConstant
16582 {
16583 before(grammarAccess.getConstantArgumentAccess().getConstantConstantParserRuleCall_0());
16584 pushFollow(FOLLOW_2);
16585 ruleConstant();
16586
16587 state._fsp--;
16588
16589 after(grammarAccess.getConstantArgumentAccess().getConstantConstantParserRuleCall_0());
16590
16591 }
16592
16593
16594 }
16595
16596 }
16597 catch (RecognitionException re) {
16598 reportError(re);
16599 recover(input,re);
16600 }
16601 finally {
16602
16603 restoreStackSize(stackSize);
16604
16605 }
16606 return ;
16607 }
16608 // $ANTLR end "rule__ConstantArgument__ConstantAssignment"
16609
16610
16611 // $ANTLR start "rule__Assertion__RelationAssignment_0_0_0"
16612 // InternalProblem.g:5370:1: rule__Assertion__RelationAssignment_0_0_0 : ( ( ruleQualifiedName ) ) ;
16613 public final void rule__Assertion__RelationAssignment_0_0_0() throws RecognitionException {
16614
16615 int stackSize = keepStackSize();
16616
16617 try {
16618 // InternalProblem.g:5374:1: ( ( ( ruleQualifiedName ) ) )
16619 // InternalProblem.g:5375:2: ( ( ruleQualifiedName ) )
16620 {
16621 // InternalProblem.g:5375:2: ( ( ruleQualifiedName ) )
16622 // InternalProblem.g:5376:3: ( ruleQualifiedName )
16623 {
16624 before(grammarAccess.getAssertionAccess().getRelationRelationCrossReference_0_0_0_0());
16625 // InternalProblem.g:5377:3: ( ruleQualifiedName )
16626 // InternalProblem.g:5378:4: ruleQualifiedName
16627 {
16628 before(grammarAccess.getAssertionAccess().getRelationRelationQualifiedNameParserRuleCall_0_0_0_0_1());
16629 pushFollow(FOLLOW_2);
16630 ruleQualifiedName();
16631
16632 state._fsp--;
16633
16634 after(grammarAccess.getAssertionAccess().getRelationRelationQualifiedNameParserRuleCall_0_0_0_0_1());
16635
16636 }
16637
16638 after(grammarAccess.getAssertionAccess().getRelationRelationCrossReference_0_0_0_0());
16639
16640 }
16641
16642
16643 }
16644
16645 }
16646 catch (RecognitionException re) {
16647 reportError(re);
16648 recover(input,re);
16649 }
16650 finally {
16651
16652 restoreStackSize(stackSize);
16653
16654 }
16655 return ;
16656 }
16657 // $ANTLR end "rule__Assertion__RelationAssignment_0_0_0"
16658
16659
16660 // $ANTLR start "rule__Assertion__ArgumentsAssignment_0_0_2_0"
16661 // InternalProblem.g:5389:1: rule__Assertion__ArgumentsAssignment_0_0_2_0 : ( ruleAssertionArgument ) ;
16662 public final void rule__Assertion__ArgumentsAssignment_0_0_2_0() throws RecognitionException {
16663
16664 int stackSize = keepStackSize();
16665
16666 try {
16667 // InternalProblem.g:5393:1: ( ( ruleAssertionArgument ) )
16668 // InternalProblem.g:5394:2: ( ruleAssertionArgument )
16669 {
16670 // InternalProblem.g:5394:2: ( ruleAssertionArgument )
16671 // InternalProblem.g:5395:3: ruleAssertionArgument
16672 {
16673 before(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_0_2_0_0());
16674 pushFollow(FOLLOW_2);
16675 ruleAssertionArgument();
16676
16677 state._fsp--;
16678
16679 after(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_0_2_0_0());
16680
16681 }
16682
16683
16684 }
16685
16686 }
16687 catch (RecognitionException re) {
16688 reportError(re);
16689 recover(input,re);
16690 }
16691 finally {
16692
16693 restoreStackSize(stackSize);
16694
16695 }
16696 return ;
16697 }
16698 // $ANTLR end "rule__Assertion__ArgumentsAssignment_0_0_2_0"
16699
16700
16701 // $ANTLR start "rule__Assertion__ArgumentsAssignment_0_0_2_1_1"
16702 // InternalProblem.g:5404:1: rule__Assertion__ArgumentsAssignment_0_0_2_1_1 : ( ruleAssertionArgument ) ;
16703 public final void rule__Assertion__ArgumentsAssignment_0_0_2_1_1() throws RecognitionException {
16704
16705 int stackSize = keepStackSize();
16706
16707 try {
16708 // InternalProblem.g:5408:1: ( ( ruleAssertionArgument ) )
16709 // InternalProblem.g:5409:2: ( ruleAssertionArgument )
16710 {
16711 // InternalProblem.g:5409:2: ( ruleAssertionArgument )
16712 // InternalProblem.g:5410:3: ruleAssertionArgument
16713 {
16714 before(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_0_2_1_1_0());
16715 pushFollow(FOLLOW_2);
16716 ruleAssertionArgument();
16717
16718 state._fsp--;
16719
16720 after(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_0_2_1_1_0());
16721
16722 }
16723
16724
16725 }
16726
16727 }
16728 catch (RecognitionException re) {
16729 reportError(re);
16730 recover(input,re);
16731 }
16732 finally {
16733
16734 restoreStackSize(stackSize);
16735
16736 }
16737 return ;
16738 }
16739 // $ANTLR end "rule__Assertion__ArgumentsAssignment_0_0_2_1_1"
16740
16741
16742 // $ANTLR start "rule__Assertion__ValueAssignment_0_0_5"
16743 // InternalProblem.g:5419:1: rule__Assertion__ValueAssignment_0_0_5 : ( ruleLogicValue ) ;
16744 public final void rule__Assertion__ValueAssignment_0_0_5() throws RecognitionException {
16745
16746 int stackSize = keepStackSize();
16747
16748 try {
16749 // InternalProblem.g:5423:1: ( ( ruleLogicValue ) )
16750 // InternalProblem.g:5424:2: ( ruleLogicValue )
16751 {
16752 // InternalProblem.g:5424:2: ( ruleLogicValue )
16753 // InternalProblem.g:5425:3: ruleLogicValue
16754 {
16755 before(grammarAccess.getAssertionAccess().getValueLogicValueEnumRuleCall_0_0_5_0());
16756 pushFollow(FOLLOW_2);
16757 ruleLogicValue();
16758
16759 state._fsp--;
16760
16761 after(grammarAccess.getAssertionAccess().getValueLogicValueEnumRuleCall_0_0_5_0());
16762
16763 }
16764
16765
16766 }
16767
16768 }
16769 catch (RecognitionException re) {
16770 reportError(re);
16771 recover(input,re);
16772 }
16773 finally {
16774
16775 restoreStackSize(stackSize);
16776
16777 }
16778 return ;
16779 }
16780 // $ANTLR end "rule__Assertion__ValueAssignment_0_0_5"
16781
16782
16783 // $ANTLR start "rule__Assertion__ValueAssignment_0_1_0"
16784 // InternalProblem.g:5434:1: rule__Assertion__ValueAssignment_0_1_0 : ( ruleShortLogicValue ) ;
16785 public final void rule__Assertion__ValueAssignment_0_1_0() throws RecognitionException {
16786
16787 int stackSize = keepStackSize();
16788
16789 try {
16790 // InternalProblem.g:5438:1: ( ( ruleShortLogicValue ) )
16791 // InternalProblem.g:5439:2: ( ruleShortLogicValue )
16792 {
16793 // InternalProblem.g:5439:2: ( ruleShortLogicValue )
16794 // InternalProblem.g:5440:3: ruleShortLogicValue
16795 {
16796 before(grammarAccess.getAssertionAccess().getValueShortLogicValueEnumRuleCall_0_1_0_0());
16797 pushFollow(FOLLOW_2);
16798 ruleShortLogicValue();
16799
16800 state._fsp--;
16801
16802 after(grammarAccess.getAssertionAccess().getValueShortLogicValueEnumRuleCall_0_1_0_0());
16803
16804 }
16805
16806
16807 }
16808
16809 }
16810 catch (RecognitionException re) {
16811 reportError(re);
16812 recover(input,re);
16813 }
16814 finally {
16815
16816 restoreStackSize(stackSize);
16817
16818 }
16819 return ;
16820 }
16821 // $ANTLR end "rule__Assertion__ValueAssignment_0_1_0"
16822
16823
16824 // $ANTLR start "rule__Assertion__RelationAssignment_0_1_1"
16825 // InternalProblem.g:5449:1: rule__Assertion__RelationAssignment_0_1_1 : ( ( ruleQualifiedName ) ) ;
16826 public final void rule__Assertion__RelationAssignment_0_1_1() throws RecognitionException {
16827
16828 int stackSize = keepStackSize();
16829
16830 try {
16831 // InternalProblem.g:5453:1: ( ( ( ruleQualifiedName ) ) )
16832 // InternalProblem.g:5454:2: ( ( ruleQualifiedName ) )
16833 {
16834 // InternalProblem.g:5454:2: ( ( ruleQualifiedName ) )
16835 // InternalProblem.g:5455:3: ( ruleQualifiedName )
16836 {
16837 before(grammarAccess.getAssertionAccess().getRelationRelationCrossReference_0_1_1_0());
16838 // InternalProblem.g:5456:3: ( ruleQualifiedName )
16839 // InternalProblem.g:5457:4: ruleQualifiedName
16840 {
16841 before(grammarAccess.getAssertionAccess().getRelationRelationQualifiedNameParserRuleCall_0_1_1_0_1());
16842 pushFollow(FOLLOW_2);
16843 ruleQualifiedName();
16844
16845 state._fsp--;
16846
16847 after(grammarAccess.getAssertionAccess().getRelationRelationQualifiedNameParserRuleCall_0_1_1_0_1());
16848
16849 }
16850
16851 after(grammarAccess.getAssertionAccess().getRelationRelationCrossReference_0_1_1_0());
16852
16853 }
16854
16855
16856 }
16857
16858 }
16859 catch (RecognitionException re) {
16860 reportError(re);
16861 recover(input,re);
16862 }
16863 finally {
16864
16865 restoreStackSize(stackSize);
16866
16867 }
16868 return ;
16869 }
16870 // $ANTLR end "rule__Assertion__RelationAssignment_0_1_1"
16871
16872
16873 // $ANTLR start "rule__Assertion__ArgumentsAssignment_0_1_3_0"
16874 // InternalProblem.g:5468:1: rule__Assertion__ArgumentsAssignment_0_1_3_0 : ( ruleAssertionArgument ) ;
16875 public final void rule__Assertion__ArgumentsAssignment_0_1_3_0() throws RecognitionException {
16876
16877 int stackSize = keepStackSize();
16878
16879 try {
16880 // InternalProblem.g:5472:1: ( ( ruleAssertionArgument ) )
16881 // InternalProblem.g:5473:2: ( ruleAssertionArgument )
16882 {
16883 // InternalProblem.g:5473:2: ( ruleAssertionArgument )
16884 // InternalProblem.g:5474:3: ruleAssertionArgument
16885 {
16886 before(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_1_3_0_0());
16887 pushFollow(FOLLOW_2);
16888 ruleAssertionArgument();
16889
16890 state._fsp--;
16891
16892 after(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_1_3_0_0());
16893
16894 }
16895
16896
16897 }
16898
16899 }
16900 catch (RecognitionException re) {
16901 reportError(re);
16902 recover(input,re);
16903 }
16904 finally {
16905
16906 restoreStackSize(stackSize);
16907
16908 }
16909 return ;
16910 }
16911 // $ANTLR end "rule__Assertion__ArgumentsAssignment_0_1_3_0"
16912
16913
16914 // $ANTLR start "rule__Assertion__ArgumentsAssignment_0_1_3_1_1"
16915 // InternalProblem.g:5483:1: rule__Assertion__ArgumentsAssignment_0_1_3_1_1 : ( ruleAssertionArgument ) ;
16916 public final void rule__Assertion__ArgumentsAssignment_0_1_3_1_1() throws RecognitionException {
16917
16918 int stackSize = keepStackSize();
16919
16920 try {
16921 // InternalProblem.g:5487:1: ( ( ruleAssertionArgument ) )
16922 // InternalProblem.g:5488:2: ( ruleAssertionArgument )
16923 {
16924 // InternalProblem.g:5488:2: ( ruleAssertionArgument )
16925 // InternalProblem.g:5489:3: ruleAssertionArgument
16926 {
16927 before(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_1_3_1_1_0());
16928 pushFollow(FOLLOW_2);
16929 ruleAssertionArgument();
16930
16931 state._fsp--;
16932
16933 after(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_1_3_1_1_0());
16934
16935 }
16936
16937
16938 }
16939
16940 }
16941 catch (RecognitionException re) {
16942 reportError(re);
16943 recover(input,re);
16944 }
16945 finally {
16946
16947 restoreStackSize(stackSize);
16948
16949 }
16950 return ;
16951 }
16952 // $ANTLR end "rule__Assertion__ArgumentsAssignment_0_1_3_1_1"
16953
16954
16955 // $ANTLR start "rule__NodeAssertionArgument__NodeAssignment"
16956 // InternalProblem.g:5498:1: rule__NodeAssertionArgument__NodeAssignment : ( ( ruleQualifiedName ) ) ;
16957 public final void rule__NodeAssertionArgument__NodeAssignment() throws RecognitionException {
16958
16959 int stackSize = keepStackSize();
16960
16961 try {
16962 // InternalProblem.g:5502:1: ( ( ( ruleQualifiedName ) ) )
16963 // InternalProblem.g:5503:2: ( ( ruleQualifiedName ) )
16964 {
16965 // InternalProblem.g:5503:2: ( ( ruleQualifiedName ) )
16966 // InternalProblem.g:5504:3: ( ruleQualifiedName )
16967 {
16968 before(grammarAccess.getNodeAssertionArgumentAccess().getNodeNodeCrossReference_0());
16969 // InternalProblem.g:5505:3: ( ruleQualifiedName )
16970 // InternalProblem.g:5506:4: ruleQualifiedName
16971 {
16972 before(grammarAccess.getNodeAssertionArgumentAccess().getNodeNodeQualifiedNameParserRuleCall_0_1());
16973 pushFollow(FOLLOW_2);
16974 ruleQualifiedName();
16975
16976 state._fsp--;
16977
16978 after(grammarAccess.getNodeAssertionArgumentAccess().getNodeNodeQualifiedNameParserRuleCall_0_1());
16979
16980 }
16981
16982 after(grammarAccess.getNodeAssertionArgumentAccess().getNodeNodeCrossReference_0());
16983
16984 }
16985
16986
16987 }
16988
16989 }
16990 catch (RecognitionException re) {
16991 reportError(re);
16992 recover(input,re);
16993 }
16994 finally {
16995
16996 restoreStackSize(stackSize);
16997
16998 }
16999 return ;
17000 }
17001 // $ANTLR end "rule__NodeAssertionArgument__NodeAssignment"
17002
17003
17004 // $ANTLR start "rule__ConstantAssertionArgument__ConstantAssignment"
17005 // InternalProblem.g:5517:1: rule__ConstantAssertionArgument__ConstantAssignment : ( ruleConstant ) ;
17006 public final void rule__ConstantAssertionArgument__ConstantAssignment() throws RecognitionException {
17007
17008 int stackSize = keepStackSize();
17009
17010 try {
17011 // InternalProblem.g:5521:1: ( ( ruleConstant ) )
17012 // InternalProblem.g:5522:2: ( ruleConstant )
17013 {
17014 // InternalProblem.g:5522:2: ( ruleConstant )
17015 // InternalProblem.g:5523:3: ruleConstant
17016 {
17017 before(grammarAccess.getConstantAssertionArgumentAccess().getConstantConstantParserRuleCall_0());
17018 pushFollow(FOLLOW_2);
17019 ruleConstant();
17020
17021 state._fsp--;
17022
17023 after(grammarAccess.getConstantAssertionArgumentAccess().getConstantConstantParserRuleCall_0());
17024
17025 }
17026
17027
17028 }
17029
17030 }
17031 catch (RecognitionException re) {
17032 reportError(re);
17033 recover(input,re);
17034 }
17035 finally {
17036
17037 restoreStackSize(stackSize);
17038
17039 }
17040 return ;
17041 }
17042 // $ANTLR end "rule__ConstantAssertionArgument__ConstantAssignment"
17043
17044
17045 // $ANTLR start "rule__NodeValueAssertion__NodeAssignment_0"
17046 // InternalProblem.g:5532:1: rule__NodeValueAssertion__NodeAssignment_0 : ( ( ruleQualifiedName ) ) ;
17047 public final void rule__NodeValueAssertion__NodeAssignment_0() throws RecognitionException {
17048
17049 int stackSize = keepStackSize();
17050
17051 try {
17052 // InternalProblem.g:5536:1: ( ( ( ruleQualifiedName ) ) )
17053 // InternalProblem.g:5537:2: ( ( ruleQualifiedName ) )
17054 {
17055 // InternalProblem.g:5537:2: ( ( ruleQualifiedName ) )
17056 // InternalProblem.g:5538:3: ( ruleQualifiedName )
17057 {
17058 before(grammarAccess.getNodeValueAssertionAccess().getNodeNodeCrossReference_0_0());
17059 // InternalProblem.g:5539:3: ( ruleQualifiedName )
17060 // InternalProblem.g:5540:4: ruleQualifiedName
17061 {
17062 before(grammarAccess.getNodeValueAssertionAccess().getNodeNodeQualifiedNameParserRuleCall_0_0_1());
17063 pushFollow(FOLLOW_2);
17064 ruleQualifiedName();
17065
17066 state._fsp--;
17067
17068 after(grammarAccess.getNodeValueAssertionAccess().getNodeNodeQualifiedNameParserRuleCall_0_0_1());
17069
17070 }
17071
17072 after(grammarAccess.getNodeValueAssertionAccess().getNodeNodeCrossReference_0_0());
17073
17074 }
17075
17076
17077 }
17078
17079 }
17080 catch (RecognitionException re) {
17081 reportError(re);
17082 recover(input,re);
17083 }
17084 finally {
17085
17086 restoreStackSize(stackSize);
17087
17088 }
17089 return ;
17090 }
17091 // $ANTLR end "rule__NodeValueAssertion__NodeAssignment_0"
17092
17093
17094 // $ANTLR start "rule__NodeValueAssertion__ValueAssignment_2"
17095 // InternalProblem.g:5551:1: rule__NodeValueAssertion__ValueAssignment_2 : ( ruleConstant ) ;
17096 public final void rule__NodeValueAssertion__ValueAssignment_2() throws RecognitionException {
17097
17098 int stackSize = keepStackSize();
17099
17100 try {
17101 // InternalProblem.g:5555:1: ( ( ruleConstant ) )
17102 // InternalProblem.g:5556:2: ( ruleConstant )
17103 {
17104 // InternalProblem.g:5556:2: ( ruleConstant )
17105 // InternalProblem.g:5557:3: ruleConstant
17106 {
17107 before(grammarAccess.getNodeValueAssertionAccess().getValueConstantParserRuleCall_2_0());
17108 pushFollow(FOLLOW_2);
17109 ruleConstant();
17110
17111 state._fsp--;
17112
17113 after(grammarAccess.getNodeValueAssertionAccess().getValueConstantParserRuleCall_2_0());
17114
17115 }
17116
17117
17118 }
17119
17120 }
17121 catch (RecognitionException re) {
17122 reportError(re);
17123 recover(input,re);
17124 }
17125 finally {
17126
17127 restoreStackSize(stackSize);
17128
17129 }
17130 return ;
17131 }
17132 // $ANTLR end "rule__NodeValueAssertion__ValueAssignment_2"
17133
17134
17135 // $ANTLR start "rule__IntConstant__IntValueAssignment"
17136 // InternalProblem.g:5566:1: rule__IntConstant__IntValueAssignment : ( ruleInteger ) ;
17137 public final void rule__IntConstant__IntValueAssignment() throws RecognitionException {
17138
17139 int stackSize = keepStackSize();
17140
17141 try {
17142 // InternalProblem.g:5570:1: ( ( ruleInteger ) )
17143 // InternalProblem.g:5571:2: ( ruleInteger )
17144 {
17145 // InternalProblem.g:5571:2: ( ruleInteger )
17146 // InternalProblem.g:5572:3: ruleInteger
17147 {
17148 before(grammarAccess.getIntConstantAccess().getIntValueIntegerParserRuleCall_0());
17149 pushFollow(FOLLOW_2);
17150 ruleInteger();
17151
17152 state._fsp--;
17153
17154 after(grammarAccess.getIntConstantAccess().getIntValueIntegerParserRuleCall_0());
17155
17156 }
17157
17158
17159 }
17160
17161 }
17162 catch (RecognitionException re) {
17163 reportError(re);
17164 recover(input,re);
17165 }
17166 finally {
17167
17168 restoreStackSize(stackSize);
17169
17170 }
17171 return ;
17172 }
17173 // $ANTLR end "rule__IntConstant__IntValueAssignment"
17174
17175
17176 // $ANTLR start "rule__RealConstant__RealValueAssignment"
17177 // InternalProblem.g:5581:1: rule__RealConstant__RealValueAssignment : ( ruleReal ) ;
17178 public final void rule__RealConstant__RealValueAssignment() throws RecognitionException {
17179
17180 int stackSize = keepStackSize();
17181
17182 try {
17183 // InternalProblem.g:5585:1: ( ( ruleReal ) )
17184 // InternalProblem.g:5586:2: ( ruleReal )
17185 {
17186 // InternalProblem.g:5586:2: ( ruleReal )
17187 // InternalProblem.g:5587:3: ruleReal
17188 {
17189 before(grammarAccess.getRealConstantAccess().getRealValueRealParserRuleCall_0());
17190 pushFollow(FOLLOW_2);
17191 ruleReal();
17192
17193 state._fsp--;
17194
17195 after(grammarAccess.getRealConstantAccess().getRealValueRealParserRuleCall_0());
17196
17197 }
17198
17199
17200 }
17201
17202 }
17203 catch (RecognitionException re) {
17204 reportError(re);
17205 recover(input,re);
17206 }
17207 finally {
17208
17209 restoreStackSize(stackSize);
17210
17211 }
17212 return ;
17213 }
17214 // $ANTLR end "rule__RealConstant__RealValueAssignment"
17215
17216
17217 // $ANTLR start "rule__StringConstant__StringValueAssignment"
17218 // InternalProblem.g:5596:1: rule__StringConstant__StringValueAssignment : ( RULE_STRING ) ;
17219 public final void rule__StringConstant__StringValueAssignment() throws RecognitionException {
17220
17221 int stackSize = keepStackSize();
17222
17223 try {
17224 // InternalProblem.g:5600:1: ( ( RULE_STRING ) )
17225 // InternalProblem.g:5601:2: ( RULE_STRING )
17226 {
17227 // InternalProblem.g:5601:2: ( RULE_STRING )
17228 // InternalProblem.g:5602:3: RULE_STRING
17229 {
17230 before(grammarAccess.getStringConstantAccess().getStringValueSTRINGTerminalRuleCall_0());
17231 match(input,RULE_STRING,FOLLOW_2);
17232 after(grammarAccess.getStringConstantAccess().getStringValueSTRINGTerminalRuleCall_0());
17233
17234 }
17235
17236
17237 }
17238
17239 }
17240 catch (RecognitionException re) {
17241 reportError(re);
17242 recover(input,re);
17243 }
17244 finally {
17245
17246 restoreStackSize(stackSize);
17247
17248 }
17249 return ;
17250 }
17251 // $ANTLR end "rule__StringConstant__StringValueAssignment"
17252
17253
17254 // $ANTLR start "rule__ScopeDeclaration__TypeScopesAssignment_1"
17255 // InternalProblem.g:5611:1: rule__ScopeDeclaration__TypeScopesAssignment_1 : ( ruleTypeScope ) ;
17256 public final void rule__ScopeDeclaration__TypeScopesAssignment_1() throws RecognitionException {
17257
17258 int stackSize = keepStackSize();
17259
17260 try {
17261 // InternalProblem.g:5615:1: ( ( ruleTypeScope ) )
17262 // InternalProblem.g:5616:2: ( ruleTypeScope )
17263 {
17264 // InternalProblem.g:5616:2: ( ruleTypeScope )
17265 // InternalProblem.g:5617:3: ruleTypeScope
17266 {
17267 before(grammarAccess.getScopeDeclarationAccess().getTypeScopesTypeScopeParserRuleCall_1_0());
17268 pushFollow(FOLLOW_2);
17269 ruleTypeScope();
17270
17271 state._fsp--;
17272
17273 after(grammarAccess.getScopeDeclarationAccess().getTypeScopesTypeScopeParserRuleCall_1_0());
17274
17275 }
17276
17277
17278 }
17279
17280 }
17281 catch (RecognitionException re) {
17282 reportError(re);
17283 recover(input,re);
17284 }
17285 finally {
17286
17287 restoreStackSize(stackSize);
17288
17289 }
17290 return ;
17291 }
17292 // $ANTLR end "rule__ScopeDeclaration__TypeScopesAssignment_1"
17293
17294
17295 // $ANTLR start "rule__ScopeDeclaration__TypeScopesAssignment_2_1"
17296 // InternalProblem.g:5626:1: rule__ScopeDeclaration__TypeScopesAssignment_2_1 : ( ruleTypeScope ) ;
17297 public final void rule__ScopeDeclaration__TypeScopesAssignment_2_1() throws RecognitionException {
17298
17299 int stackSize = keepStackSize();
17300
17301 try {
17302 // InternalProblem.g:5630:1: ( ( ruleTypeScope ) )
17303 // InternalProblem.g:5631:2: ( ruleTypeScope )
17304 {
17305 // InternalProblem.g:5631:2: ( ruleTypeScope )
17306 // InternalProblem.g:5632:3: ruleTypeScope
17307 {
17308 before(grammarAccess.getScopeDeclarationAccess().getTypeScopesTypeScopeParserRuleCall_2_1_0());
17309 pushFollow(FOLLOW_2);
17310 ruleTypeScope();
17311
17312 state._fsp--;
17313
17314 after(grammarAccess.getScopeDeclarationAccess().getTypeScopesTypeScopeParserRuleCall_2_1_0());
17315
17316 }
17317
17318
17319 }
17320
17321 }
17322 catch (RecognitionException re) {
17323 reportError(re);
17324 recover(input,re);
17325 }
17326 finally {
17327
17328 restoreStackSize(stackSize);
17329
17330 }
17331 return ;
17332 }
17333 // $ANTLR end "rule__ScopeDeclaration__TypeScopesAssignment_2_1"
17334
17335
17336 // $ANTLR start "rule__TypeScope__TargetTypeAssignment_0"
17337 // InternalProblem.g:5641:1: rule__TypeScope__TargetTypeAssignment_0 : ( ( RULE_ID ) ) ;
17338 public final void rule__TypeScope__TargetTypeAssignment_0() throws RecognitionException {
17339
17340 int stackSize = keepStackSize();
17341
17342 try {
17343 // InternalProblem.g:5645:1: ( ( ( RULE_ID ) ) )
17344 // InternalProblem.g:5646:2: ( ( RULE_ID ) )
17345 {
17346 // InternalProblem.g:5646:2: ( ( RULE_ID ) )
17347 // InternalProblem.g:5647:3: ( RULE_ID )
17348 {
17349 before(grammarAccess.getTypeScopeAccess().getTargetTypeClassDeclarationCrossReference_0_0());
17350 // InternalProblem.g:5648:3: ( RULE_ID )
17351 // InternalProblem.g:5649:4: RULE_ID
17352 {
17353 before(grammarAccess.getTypeScopeAccess().getTargetTypeClassDeclarationIDTerminalRuleCall_0_0_1());
17354 match(input,RULE_ID,FOLLOW_2);
17355 after(grammarAccess.getTypeScopeAccess().getTargetTypeClassDeclarationIDTerminalRuleCall_0_0_1());
17356
17357 }
17358
17359 after(grammarAccess.getTypeScopeAccess().getTargetTypeClassDeclarationCrossReference_0_0());
17360
17361 }
17362
17363
17364 }
17365
17366 }
17367 catch (RecognitionException re) {
17368 reportError(re);
17369 recover(input,re);
17370 }
17371 finally {
17372
17373 restoreStackSize(stackSize);
17374
17375 }
17376 return ;
17377 }
17378 // $ANTLR end "rule__TypeScope__TargetTypeAssignment_0"
17379
17380
17381 // $ANTLR start "rule__TypeScope__IncrementAssignment_1_0"
17382 // InternalProblem.g:5660:1: rule__TypeScope__IncrementAssignment_1_0 : ( ( '+=' ) ) ;
17383 public final void rule__TypeScope__IncrementAssignment_1_0() throws RecognitionException {
17384
17385 int stackSize = keepStackSize();
17386
17387 try {
17388 // InternalProblem.g:5664:1: ( ( ( '+=' ) ) )
17389 // InternalProblem.g:5665:2: ( ( '+=' ) )
17390 {
17391 // InternalProblem.g:5665:2: ( ( '+=' ) )
17392 // InternalProblem.g:5666:3: ( '+=' )
17393 {
17394 before(grammarAccess.getTypeScopeAccess().getIncrementPlusSignEqualsSignKeyword_1_0_0());
17395 // InternalProblem.g:5667:3: ( '+=' )
17396 // InternalProblem.g:5668:4: '+='
17397 {
17398 before(grammarAccess.getTypeScopeAccess().getIncrementPlusSignEqualsSignKeyword_1_0_0());
17399 match(input,46,FOLLOW_2);
17400 after(grammarAccess.getTypeScopeAccess().getIncrementPlusSignEqualsSignKeyword_1_0_0());
17401
17402 }
17403
17404 after(grammarAccess.getTypeScopeAccess().getIncrementPlusSignEqualsSignKeyword_1_0_0());
17405
17406 }
17407
17408
17409 }
17410
17411 }
17412 catch (RecognitionException re) {
17413 reportError(re);
17414 recover(input,re);
17415 }
17416 finally {
17417
17418 restoreStackSize(stackSize);
17419
17420 }
17421 return ;
17422 }
17423 // $ANTLR end "rule__TypeScope__IncrementAssignment_1_0"
17424
17425
17426 // $ANTLR start "rule__TypeScope__MultiplicityAssignment_2"
17427 // InternalProblem.g:5679:1: rule__TypeScope__MultiplicityAssignment_2 : ( ruleDefiniteMultiplicity ) ;
17428 public final void rule__TypeScope__MultiplicityAssignment_2() throws RecognitionException {
17429
17430 int stackSize = keepStackSize();
17431
17432 try {
17433 // InternalProblem.g:5683:1: ( ( ruleDefiniteMultiplicity ) )
17434 // InternalProblem.g:5684:2: ( ruleDefiniteMultiplicity )
17435 {
17436 // InternalProblem.g:5684:2: ( ruleDefiniteMultiplicity )
17437 // InternalProblem.g:5685:3: ruleDefiniteMultiplicity
17438 {
17439 before(grammarAccess.getTypeScopeAccess().getMultiplicityDefiniteMultiplicityParserRuleCall_2_0());
17440 pushFollow(FOLLOW_2);
17441 ruleDefiniteMultiplicity();
17442
17443 state._fsp--;
17444
17445 after(grammarAccess.getTypeScopeAccess().getMultiplicityDefiniteMultiplicityParserRuleCall_2_0());
17446
17447 }
17448
17449
17450 }
17451
17452 }
17453 catch (RecognitionException re) {
17454 reportError(re);
17455 recover(input,re);
17456 }
17457 finally {
17458
17459 restoreStackSize(stackSize);
17460
17461 }
17462 return ;
17463 }
17464 // $ANTLR end "rule__TypeScope__MultiplicityAssignment_2"
17465
17466
17467 // $ANTLR start "rule__RangeMultiplicity__LowerBoundAssignment_0"
17468 // InternalProblem.g:5694:1: rule__RangeMultiplicity__LowerBoundAssignment_0 : ( RULE_INT ) ;
17469 public final void rule__RangeMultiplicity__LowerBoundAssignment_0() throws RecognitionException {
17470
17471 int stackSize = keepStackSize();
17472
17473 try {
17474 // InternalProblem.g:5698:1: ( ( RULE_INT ) )
17475 // InternalProblem.g:5699:2: ( RULE_INT )
17476 {
17477 // InternalProblem.g:5699:2: ( RULE_INT )
17478 // InternalProblem.g:5700:3: RULE_INT
17479 {
17480 before(grammarAccess.getRangeMultiplicityAccess().getLowerBoundINTTerminalRuleCall_0_0());
17481 match(input,RULE_INT,FOLLOW_2);
17482 after(grammarAccess.getRangeMultiplicityAccess().getLowerBoundINTTerminalRuleCall_0_0());
17483
17484 }
17485
17486
17487 }
17488
17489 }
17490 catch (RecognitionException re) {
17491 reportError(re);
17492 recover(input,re);
17493 }
17494 finally {
17495
17496 restoreStackSize(stackSize);
17497
17498 }
17499 return ;
17500 }
17501 // $ANTLR end "rule__RangeMultiplicity__LowerBoundAssignment_0"
17502
17503
17504 // $ANTLR start "rule__RangeMultiplicity__UpperBoundAssignment_2"
17505 // InternalProblem.g:5709:1: rule__RangeMultiplicity__UpperBoundAssignment_2 : ( ruleUpperBound ) ;
17506 public final void rule__RangeMultiplicity__UpperBoundAssignment_2() throws RecognitionException {
17507
17508 int stackSize = keepStackSize();
17509
17510 try {
17511 // InternalProblem.g:5713:1: ( ( ruleUpperBound ) )
17512 // InternalProblem.g:5714:2: ( ruleUpperBound )
17513 {
17514 // InternalProblem.g:5714:2: ( ruleUpperBound )
17515 // InternalProblem.g:5715:3: ruleUpperBound
17516 {
17517 before(grammarAccess.getRangeMultiplicityAccess().getUpperBoundUpperBoundParserRuleCall_2_0());
17518 pushFollow(FOLLOW_2);
17519 ruleUpperBound();
17520
17521 state._fsp--;
17522
17523 after(grammarAccess.getRangeMultiplicityAccess().getUpperBoundUpperBoundParserRuleCall_2_0());
17524
17525 }
17526
17527
17528 }
17529
17530 }
17531 catch (RecognitionException re) {
17532 reportError(re);
17533 recover(input,re);
17534 }
17535 finally {
17536
17537 restoreStackSize(stackSize);
17538
17539 }
17540 return ;
17541 }
17542 // $ANTLR end "rule__RangeMultiplicity__UpperBoundAssignment_2"
17543
17544
17545 // $ANTLR start "rule__ExactMultiplicity__ExactValueAssignment"
17546 // InternalProblem.g:5724:1: rule__ExactMultiplicity__ExactValueAssignment : ( RULE_INT ) ;
17547 public final void rule__ExactMultiplicity__ExactValueAssignment() throws RecognitionException {
17548
17549 int stackSize = keepStackSize();
17550
17551 try {
17552 // InternalProblem.g:5728:1: ( ( RULE_INT ) )
17553 // InternalProblem.g:5729:2: ( RULE_INT )
17554 {
17555 // InternalProblem.g:5729:2: ( RULE_INT )
17556 // InternalProblem.g:5730:3: RULE_INT
17557 {
17558 before(grammarAccess.getExactMultiplicityAccess().getExactValueINTTerminalRuleCall_0());
17559 match(input,RULE_INT,FOLLOW_2);
17560 after(grammarAccess.getExactMultiplicityAccess().getExactValueINTTerminalRuleCall_0());
17561
17562 }
17563
17564
17565 }
17566
17567 }
17568 catch (RecognitionException re) {
17569 reportError(re);
17570 recover(input,re);
17571 }
17572 finally {
17573
17574 restoreStackSize(stackSize);
17575
17576 }
17577 return ;
17578 }
17579 // $ANTLR end "rule__ExactMultiplicity__ExactValueAssignment"
17580
17581 // Delegated rules
17582
17583
17584 protected DFA1 dfa1 = new DFA1(this);
17585 protected DFA9 dfa9 = new DFA9(this);
17586 static final String dfa_1s = "\17\uffff";
17587 static final String dfa_2s = "\1\5\3\uffff\4\42\3\uffff\1\6\3\42";
17588 static final String dfa_3s = "\1\54\3\uffff\1\45\3\50\3\uffff\1\25\3\50";
17589 static final String dfa_4s = "\1\uffff\1\1\1\2\1\3\4\uffff\1\4\1\6\1\5\4\uffff";
17590 static final String dfa_5s = "\17\uffff}>";
17591 static final String[] dfa_6s = {
17592 "\1\4\1\5\12\uffff\1\3\2\uffff\1\6\1\7\1\uffff\2\10\1\uffff\1\1\3\uffff\1\2\7\uffff\1\11\3\uffff\1\1\1\uffff\1\3",
17593 "",
17594 "",
17595 "",
17596 "\1\10\2\uffff\1\12",
17597 "\1\10\2\uffff\1\12\2\uffff\1\13",
17598 "\1\10\2\uffff\1\12\2\uffff\1\13",
17599 "\1\10\2\uffff\1\12\2\uffff\1\13",
17600 "",
17601 "",
17602 "",
17603 "\1\14\15\uffff\1\15\1\16",
17604 "\1\10\2\uffff\1\12\2\uffff\1\13",
17605 "\1\10\2\uffff\1\12\2\uffff\1\13",
17606 "\1\10\2\uffff\1\12\2\uffff\1\13"
17607 };
17608
17609 static final short[] dfa_1 = DFA.unpackEncodedString(dfa_1s);
17610 static final char[] dfa_2 = DFA.unpackEncodedStringToUnsignedChars(dfa_2s);
17611 static final char[] dfa_3 = DFA.unpackEncodedStringToUnsignedChars(dfa_3s);
17612 static final short[] dfa_4 = DFA.unpackEncodedString(dfa_4s);
17613 static final short[] dfa_5 = DFA.unpackEncodedString(dfa_5s);
17614 static final short[][] dfa_6 = unpackEncodedStringArray(dfa_6s);
17615
17616 class DFA1 extends DFA {
17617
17618 public DFA1(BaseRecognizer recognizer) {
17619 this.recognizer = recognizer;
17620 this.decisionNumber = 1;
17621 this.eot = dfa_1;
17622 this.eof = dfa_1;
17623 this.min = dfa_2;
17624 this.max = dfa_3;
17625 this.accept = dfa_4;
17626 this.special = dfa_5;
17627 this.transition = dfa_6;
17628 }
17629 public String getDescription() {
17630 return "1000:1: rule__Statement__Alternatives : ( ( ruleClassDeclaration ) | ( ruleEnumDeclaration ) | ( rulePredicateDefinition ) | ( ruleAssertion ) | ( ruleNodeValueAssertion ) | ( ruleScopeDeclaration ) );";
17631 }
17632 }
17633 static final String dfa_7s = "\54\uffff";
17634 static final String dfa_8s = "\1\5\4\42\1\uffff\1\4\1\6\4\16\1\4\1\16\1\15\1\16\1\15\3\42\1\4\1\6\1\4\1\uffff\4\16\1\4\1\16\1\15\6\16\1\6\1\4\5\16";
17635 static final String dfa_9s = "\1\30\1\42\3\50\1\uffff\1\51\1\25\1\43\3\50\1\7\3\43\1\45\3\50\1\51\1\25\1\7\1\uffff\1\43\3\50\1\7\3\43\3\50\2\43\1\25\1\7\3\50\2\43";
17636 static final String dfa_10s = "\5\uffff\1\2\21\uffff\1\1\24\uffff";
17637 static final String dfa_11s = "\54\uffff}>";
17638 static final String[] dfa_12s = {
17639 "\1\1\1\2\15\uffff\1\3\1\4\1\uffff\2\5",
17640 "\1\6",
17641 "\1\6\5\uffff\1\7",
17642 "\1\6\5\uffff\1\7",
17643 "\1\6\5\uffff\1\7",
17644 "",
17645 "\1\16\1\10\1\11\1\15\1\17\13\uffff\1\12\1\13\15\uffff\1\20\5\uffff\1\14",
17646 "\1\21\15\uffff\1\22\1\23",
17647 "\1\24\24\uffff\1\20",
17648 "\1\24\24\uffff\1\20\4\uffff\1\25",
17649 "\1\24\24\uffff\1\20\4\uffff\1\25",
17650 "\1\24\24\uffff\1\20\4\uffff\1\25",
17651 "\1\16\2\uffff\1\15",
17652 "\1\24\24\uffff\1\20",
17653 "\1\26\1\24\24\uffff\1\20",
17654 "\1\24\24\uffff\1\20",
17655 "\1\5\27\uffff\1\27",
17656 "\1\6\5\uffff\1\7",
17657 "\1\6\5\uffff\1\7",
17658 "\1\6\5\uffff\1\7",
17659 "\1\36\1\30\1\31\1\35\1\37\13\uffff\1\32\1\33\23\uffff\1\34",
17660 "\1\40\15\uffff\1\41\1\42",
17661 "\1\43\2\uffff\1\44",
17662 "",
17663 "\1\24\24\uffff\1\20",
17664 "\1\24\24\uffff\1\20\4\uffff\1\45",
17665 "\1\24\24\uffff\1\20\4\uffff\1\45",
17666 "\1\24\24\uffff\1\20\4\uffff\1\45",
17667 "\1\36\2\uffff\1\35",
17668 "\1\24\24\uffff\1\20",
17669 "\1\46\1\24\24\uffff\1\20",
17670 "\1\24\24\uffff\1\20",
17671 "\1\24\24\uffff\1\20\4\uffff\1\25",
17672 "\1\24\24\uffff\1\20\4\uffff\1\25",
17673 "\1\24\24\uffff\1\20\4\uffff\1\25",
17674 "\1\24\24\uffff\1\20",
17675 "\1\24\24\uffff\1\20",
17676 "\1\47\15\uffff\1\50\1\51",
17677 "\1\52\2\uffff\1\53",
17678 "\1\24\24\uffff\1\20\4\uffff\1\45",
17679 "\1\24\24\uffff\1\20\4\uffff\1\45",
17680 "\1\24\24\uffff\1\20\4\uffff\1\45",
17681 "\1\24\24\uffff\1\20",
17682 "\1\24\24\uffff\1\20"
17683 };
17684
17685 static final short[] dfa_7 = DFA.unpackEncodedString(dfa_7s);
17686 static final char[] dfa_8 = DFA.unpackEncodedStringToUnsignedChars(dfa_8s);
17687 static final char[] dfa_9 = DFA.unpackEncodedStringToUnsignedChars(dfa_9s);
17688 static final short[] dfa_10 = DFA.unpackEncodedString(dfa_10s);
17689 static final short[] dfa_11 = DFA.unpackEncodedString(dfa_11s);
17690 static final short[][] dfa_12 = unpackEncodedStringArray(dfa_12s);
17691
17692 class DFA9 extends DFA {
17693
17694 public DFA9(BaseRecognizer recognizer) {
17695 this.recognizer = recognizer;
17696 this.decisionNumber = 9;
17697 this.eot = dfa_7;
17698 this.eof = dfa_7;
17699 this.min = dfa_8;
17700 this.max = dfa_9;
17701 this.accept = dfa_10;
17702 this.special = dfa_11;
17703 this.transition = dfa_12;
17704 }
17705 public String getDescription() {
17706 return "1192:1: rule__Assertion__Alternatives_0 : ( ( ( rule__Assertion__Group_0_0__0 ) ) | ( ( rule__Assertion__Group_0_1__0 ) ) );";
17707 }
17708 }
17709
17710
17711 public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
17712 public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
17713 public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x0000144045B20060L});
17714 public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000144045B20062L});
17715 public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000000000300060L});
17716 public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000000002000L});
17717 public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000040004000000L});
17718 public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000018002000L});
17719 public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000004000L});
17720 public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000000004002L});
17721 public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000080020310060L});
17722 public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000080000310062L});
17723 public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000000008000L});
17724 public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000010002000L});
17725 public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000020300060L});
17726 public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x000000000000C000L});
17727 public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000080000310060L});
17728 public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000080300060L});
17729 public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000200000000L});
17730 public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0000000000000010L});
17731 public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000100000000L});
17732 public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000000400000000L});
17733 public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000000800300060L});
17734 public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000001000002000L});
17735 public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0000000000020000L});
17736 public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000000000B00060L});
17737 public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000000000008002L});
17738 public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000200400000000L});
17739 public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x00000208003001F0L});
17740 public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x00000200003001F0L});
17741 public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000002000000000L});
17742 public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0000000000700000L});
17743 public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0000000001B00060L});
17744 public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0000000000000040L});
17745 public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0000000000006000L});
17746 public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0000400000040000L});
17747 public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x0000008000000000L});
17748 public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x0000000000080010L});
17749 public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0000010000000000L});
17750 public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x0000010000000002L});
17751 public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x0000020000000010L});
17752 public static final BitSet FOLLOW_42 = new BitSet(new long[]{0x0000020000000090L});
17753 public static final BitSet FOLLOW_43 = new BitSet(new long[]{0x0000000000000090L});
17754
17755} \ No newline at end of file
diff --git a/language-web/src/main/xtext-gen/org/eclipse/viatra/solver/language/web/AbstractProblemWebModule.java b/language-web/src/main/xtext-gen/org/eclipse/viatra/solver/language/web/AbstractProblemWebModule.java
deleted file mode 100644
index fefb7da3..00000000
--- a/language-web/src/main/xtext-gen/org/eclipse/viatra/solver/language/web/AbstractProblemWebModule.java
+++ /dev/null
@@ -1,14 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4package org.eclipse.viatra.solver.language.web;
5
6import org.eclipse.xtext.web.server.DefaultWebModule;
7
8/**
9 * Manual modifications go to {@link ProblemWebModule}.
10 */
11@SuppressWarnings("all")
12public abstract class AbstractProblemWebModule extends DefaultWebModule {
13
14}
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/AbstractProblemRuntimeModule.java b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/AbstractProblemRuntimeModule.java
deleted file mode 100644
index 24bed771..00000000
--- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/AbstractProblemRuntimeModule.java
+++ /dev/null
@@ -1,194 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4package org.eclipse.viatra.solver.language;
5
6import com.google.inject.Binder;
7import com.google.inject.Provider;
8import com.google.inject.name.Names;
9import java.util.Properties;
10import org.eclipse.viatra.solver.language.parser.antlr.ProblemAntlrTokenFileProvider;
11import org.eclipse.viatra.solver.language.parser.antlr.ProblemParser;
12import org.eclipse.viatra.solver.language.parser.antlr.internal.InternalProblemLexer;
13import org.eclipse.viatra.solver.language.scoping.ProblemScopeProvider;
14import org.eclipse.viatra.solver.language.serializer.ProblemSemanticSequencer;
15import org.eclipse.viatra.solver.language.serializer.ProblemSyntacticSequencer;
16import org.eclipse.viatra.solver.language.services.ProblemGrammarAccess;
17import org.eclipse.viatra.solver.language.validation.ProblemConfigurableIssueCodesProvider;
18import org.eclipse.viatra.solver.language.validation.ProblemValidator;
19import org.eclipse.xtext.Constants;
20import org.eclipse.xtext.IGrammarAccess;
21import org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider;
22import org.eclipse.xtext.naming.IQualifiedNameProvider;
23import org.eclipse.xtext.parser.IParser;
24import org.eclipse.xtext.parser.ITokenToStringConverter;
25import org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider;
26import org.eclipse.xtext.parser.antlr.AntlrTokenToStringConverter;
27import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider;
28import org.eclipse.xtext.parser.antlr.ITokenDefProvider;
29import org.eclipse.xtext.parser.antlr.Lexer;
30import org.eclipse.xtext.parser.antlr.LexerBindings;
31import org.eclipse.xtext.parser.antlr.LexerProvider;
32import org.eclipse.xtext.resource.IContainer;
33import org.eclipse.xtext.resource.IResourceDescriptions;
34import org.eclipse.xtext.resource.containers.IAllContainersState;
35import org.eclipse.xtext.resource.containers.ResourceSetBasedAllContainersStateProvider;
36import org.eclipse.xtext.resource.containers.StateBasedContainerManager;
37import org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider;
38import org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions;
39import org.eclipse.xtext.scoping.IGlobalScopeProvider;
40import org.eclipse.xtext.scoping.IScopeProvider;
41import org.eclipse.xtext.scoping.IgnoreCaseLinking;
42import org.eclipse.xtext.scoping.impl.AbstractDeclarativeScopeProvider;
43import org.eclipse.xtext.scoping.impl.DefaultGlobalScopeProvider;
44import org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider;
45import org.eclipse.xtext.serializer.ISerializer;
46import org.eclipse.xtext.serializer.impl.Serializer;
47import org.eclipse.xtext.serializer.sequencer.ISemanticSequencer;
48import org.eclipse.xtext.serializer.sequencer.ISyntacticSequencer;
49import org.eclipse.xtext.service.DefaultRuntimeModule;
50import org.eclipse.xtext.service.SingletonBinding;
51import org.eclipse.xtext.validation.ConfigurableIssueCodesProvider;
52
53/**
54 * Manual modifications go to {@link ProblemRuntimeModule}.
55 */
56@SuppressWarnings("all")
57public abstract class AbstractProblemRuntimeModule extends DefaultRuntimeModule {
58
59 protected Properties properties = null;
60
61 @Override
62 public void configure(Binder binder) {
63 properties = tryBindProperties(binder, "org/eclipse/viatra/solver/language/Problem.properties");
64 super.configure(binder);
65 }
66
67 public void configureLanguageName(Binder binder) {
68 binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("org.eclipse.viatra.solver.language.Problem");
69 }
70
71 public void configureFileExtensions(Binder binder) {
72 if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null)
73 binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("problem");
74 }
75
76 // contributed by org.eclipse.xtext.xtext.generator.grammarAccess.GrammarAccessFragment2
77 public ClassLoader bindClassLoaderToInstance() {
78 return getClass().getClassLoader();
79 }
80
81 // contributed by org.eclipse.xtext.xtext.generator.grammarAccess.GrammarAccessFragment2
82 public Class<? extends IGrammarAccess> bindIGrammarAccess() {
83 return ProblemGrammarAccess.class;
84 }
85
86 // contributed by org.eclipse.xtext.xtext.generator.serializer.SerializerFragment2
87 public Class<? extends ISemanticSequencer> bindISemanticSequencer() {
88 return ProblemSemanticSequencer.class;
89 }
90
91 // contributed by org.eclipse.xtext.xtext.generator.serializer.SerializerFragment2
92 public Class<? extends ISyntacticSequencer> bindISyntacticSequencer() {
93 return ProblemSyntacticSequencer.class;
94 }
95
96 // contributed by org.eclipse.xtext.xtext.generator.serializer.SerializerFragment2
97 public Class<? extends ISerializer> bindISerializer() {
98 return Serializer.class;
99 }
100
101 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
102 public Class<? extends IParser> bindIParser() {
103 return ProblemParser.class;
104 }
105
106 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
107 public Class<? extends ITokenToStringConverter> bindITokenToStringConverter() {
108 return AntlrTokenToStringConverter.class;
109 }
110
111 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
112 public Class<? extends IAntlrTokenFileProvider> bindIAntlrTokenFileProvider() {
113 return ProblemAntlrTokenFileProvider.class;
114 }
115
116 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
117 public Class<? extends Lexer> bindLexer() {
118 return InternalProblemLexer.class;
119 }
120
121 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
122 public Class<? extends ITokenDefProvider> bindITokenDefProvider() {
123 return AntlrTokenDefProvider.class;
124 }
125
126 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
127 public Provider<? extends InternalProblemLexer> provideInternalProblemLexer() {
128 return LexerProvider.create(InternalProblemLexer.class);
129 }
130
131 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
132 public void configureRuntimeLexer(Binder binder) {
133 binder.bind(Lexer.class)
134 .annotatedWith(Names.named(LexerBindings.RUNTIME))
135 .to(InternalProblemLexer.class);
136 }
137
138 // contributed by org.eclipse.xtext.xtext.generator.validation.ValidatorFragment2
139 @SingletonBinding(eager=true)
140 public Class<? extends ProblemValidator> bindProblemValidator() {
141 return ProblemValidator.class;
142 }
143
144 // contributed by org.eclipse.xtext.xtext.generator.validation.ValidatorFragment2
145 public Class<? extends ConfigurableIssueCodesProvider> bindConfigurableIssueCodesProvider() {
146 return ProblemConfigurableIssueCodesProvider.class;
147 }
148
149 // contributed by org.eclipse.xtext.xtext.generator.scoping.ImportNamespacesScopingFragment2
150 public Class<? extends IScopeProvider> bindIScopeProvider() {
151 return ProblemScopeProvider.class;
152 }
153
154 // contributed by org.eclipse.xtext.xtext.generator.scoping.ImportNamespacesScopingFragment2
155 public void configureIScopeProviderDelegate(Binder binder) {
156 binder.bind(IScopeProvider.class).annotatedWith(Names.named(AbstractDeclarativeScopeProvider.NAMED_DELEGATE)).to(ImportedNamespaceAwareLocalScopeProvider.class);
157 }
158
159 // contributed by org.eclipse.xtext.xtext.generator.scoping.ImportNamespacesScopingFragment2
160 public Class<? extends IGlobalScopeProvider> bindIGlobalScopeProvider() {
161 return DefaultGlobalScopeProvider.class;
162 }
163
164 // contributed by org.eclipse.xtext.xtext.generator.scoping.ImportNamespacesScopingFragment2
165 public void configureIgnoreCaseLinking(Binder binder) {
166 binder.bindConstant().annotatedWith(IgnoreCaseLinking.class).to(false);
167 }
168
169 // contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2
170 public Class<? extends IQualifiedNameProvider> bindIQualifiedNameProvider() {
171 return DefaultDeclarativeQualifiedNameProvider.class;
172 }
173
174 // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
175 public Class<? extends IContainer.Manager> bindIContainer$Manager() {
176 return StateBasedContainerManager.class;
177 }
178
179 // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
180 public Class<? extends IAllContainersState.Provider> bindIAllContainersState$Provider() {
181 return ResourceSetBasedAllContainersStateProvider.class;
182 }
183
184 // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
185 public void configureIResourceDescriptions(Binder binder) {
186 binder.bind(IResourceDescriptions.class).to(ResourceSetBasedResourceDescriptions.class);
187 }
188
189 // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
190 public void configureIResourceDescriptionsPersisted(Binder binder) {
191 binder.bind(IResourceDescriptions.class).annotatedWith(Names.named(ResourceDescriptionsProvider.PERSISTED_DESCRIPTIONS)).to(ResourceSetBasedResourceDescriptions.class);
192 }
193
194}
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/Problem.xtextbin b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/Problem.xtextbin
deleted file mode 100644
index 0b613873..00000000
--- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/Problem.xtextbin
+++ /dev/null
Binary files differ
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/ProblemStandaloneSetupGenerated.java b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/ProblemStandaloneSetupGenerated.java
deleted file mode 100644
index 0366f9cd..00000000
--- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/ProblemStandaloneSetupGenerated.java
+++ /dev/null
@@ -1,37 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4package org.eclipse.viatra.solver.language;
5
6import com.google.inject.Guice;
7import com.google.inject.Injector;
8import org.eclipse.emf.ecore.resource.Resource;
9import org.eclipse.xtext.ISetup;
10import org.eclipse.xtext.common.TerminalsStandaloneSetup;
11import org.eclipse.xtext.resource.IResourceFactory;
12import org.eclipse.xtext.resource.IResourceServiceProvider;
13
14@SuppressWarnings("all")
15public class ProblemStandaloneSetupGenerated implements ISetup {
16
17 @Override
18 public Injector createInjectorAndDoEMFRegistration() {
19 TerminalsStandaloneSetup.doSetup();
20
21 Injector injector = createInjector();
22 register(injector);
23 return injector;
24 }
25
26 public Injector createInjector() {
27 return Guice.createInjector(new ProblemRuntimeModule());
28 }
29
30 public void register(Injector injector) {
31 IResourceFactory resourceFactory = injector.getInstance(IResourceFactory.class);
32 IResourceServiceProvider serviceProvider = injector.getInstance(IResourceServiceProvider.class);
33
34 Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("problem", resourceFactory);
35 IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("problem", serviceProvider);
36 }
37}
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/ProblemAntlrTokenFileProvider.java b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/ProblemAntlrTokenFileProvider.java
deleted file mode 100644
index b7ecf3f6..00000000
--- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/ProblemAntlrTokenFileProvider.java
+++ /dev/null
@@ -1,16 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4package org.eclipse.viatra.solver.language.parser.antlr;
5
6import java.io.InputStream;
7import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider;
8
9public class ProblemAntlrTokenFileProvider implements IAntlrTokenFileProvider {
10
11 @Override
12 public InputStream getAntlrTokenFile() {
13 ClassLoader classLoader = getClass().getClassLoader();
14 return classLoader.getResourceAsStream("org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.tokens");
15 }
16}
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/ProblemParser.java b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/ProblemParser.java
deleted file mode 100644
index 3af86cab..00000000
--- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/ProblemParser.java
+++ /dev/null
@@ -1,40 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4package org.eclipse.viatra.solver.language.parser.antlr;
5
6import com.google.inject.Inject;
7import org.eclipse.viatra.solver.language.parser.antlr.internal.InternalProblemParser;
8import org.eclipse.viatra.solver.language.services.ProblemGrammarAccess;
9import org.eclipse.xtext.parser.antlr.AbstractAntlrParser;
10import org.eclipse.xtext.parser.antlr.XtextTokenStream;
11
12public class ProblemParser extends AbstractAntlrParser {
13
14 @Inject
15 private ProblemGrammarAccess grammarAccess;
16
17 @Override
18 protected void setInitialHiddenTokens(XtextTokenStream tokenStream) {
19 tokenStream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT");
20 }
21
22
23 @Override
24 protected InternalProblemParser createParser(XtextTokenStream stream) {
25 return new InternalProblemParser(stream, getGrammarAccess());
26 }
27
28 @Override
29 protected String getDefaultRuleName() {
30 return "Problem";
31 }
32
33 public ProblemGrammarAccess getGrammarAccess() {
34 return this.grammarAccess;
35 }
36
37 public void setGrammarAccess(ProblemGrammarAccess grammarAccess) {
38 this.grammarAccess = grammarAccess;
39 }
40}
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.g b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.g
deleted file mode 100644
index 583f8c1c..00000000
--- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.g
+++ /dev/null
@@ -1,2390 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4grammar InternalProblem;
5
6options {
7 superClass=AbstractInternalAntlrParser;
8}
9
10@lexer::header {
11package org.eclipse.viatra.solver.language.parser.antlr.internal;
12
13// Hack: Use our own Lexer superclass by means of import.
14// Currently there is no other way to specify the superclass for the lexer.
15import org.eclipse.xtext.parser.antlr.Lexer;
16}
17
18@parser::header {
19package org.eclipse.viatra.solver.language.parser.antlr.internal;
20
21import org.eclipse.xtext.*;
22import org.eclipse.xtext.parser.*;
23import org.eclipse.xtext.parser.impl.*;
24import org.eclipse.emf.ecore.util.EcoreUtil;
25import org.eclipse.emf.ecore.EObject;
26import org.eclipse.emf.common.util.Enumerator;
27import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser;
28import org.eclipse.xtext.parser.antlr.XtextTokenStream;
29import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
30import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken;
31import org.eclipse.viatra.solver.language.services.ProblemGrammarAccess;
32
33}
34
35@parser::members {
36
37 private ProblemGrammarAccess grammarAccess;
38
39 public InternalProblemParser(TokenStream input, ProblemGrammarAccess grammarAccess) {
40 this(input);
41 this.grammarAccess = grammarAccess;
42 registerRules(grammarAccess.getGrammar());
43 }
44
45 @Override
46 protected String getFirstRuleName() {
47 return "Problem";
48 }
49
50 @Override
51 protected ProblemGrammarAccess getGrammarAccess() {
52 return grammarAccess;
53 }
54
55}
56
57@rulecatch {
58 catch (RecognitionException re) {
59 recover(input,re);
60 appendSkippedTokens();
61 }
62}
63
64// Entry rule entryRuleProblem
65entryRuleProblem returns [EObject current=null]:
66 { newCompositeNode(grammarAccess.getProblemRule()); }
67 iv_ruleProblem=ruleProblem
68 { $current=$iv_ruleProblem.current; }
69 EOF;
70
71// Rule Problem
72ruleProblem returns [EObject current=null]
73@init {
74 enterRule();
75}
76@after {
77 leaveRule();
78}:
79 (
80 (
81 otherlv_0='problem'
82 {
83 newLeafNode(otherlv_0, grammarAccess.getProblemAccess().getProblemKeyword_0_0());
84 }
85 (
86 (
87 {
88 newCompositeNode(grammarAccess.getProblemAccess().getNameIdentifierParserRuleCall_0_1_0());
89 }
90 lv_name_1_0=ruleIdentifier
91 {
92 if ($current==null) {
93 $current = createModelElementForParent(grammarAccess.getProblemRule());
94 }
95 set(
96 $current,
97 "name",
98 lv_name_1_0,
99 "org.eclipse.viatra.solver.language.Problem.Identifier");
100 afterParserOrEnumRuleCall();
101 }
102 )
103 )
104 otherlv_2='.'
105 {
106 newLeafNode(otherlv_2, grammarAccess.getProblemAccess().getFullStopKeyword_0_2());
107 }
108 )?
109 (
110 (
111 {
112 newCompositeNode(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_1_0());
113 }
114 lv_statements_3_0=ruleStatement
115 {
116 if ($current==null) {
117 $current = createModelElementForParent(grammarAccess.getProblemRule());
118 }
119 add(
120 $current,
121 "statements",
122 lv_statements_3_0,
123 "org.eclipse.viatra.solver.language.Problem.Statement");
124 afterParserOrEnumRuleCall();
125 }
126 )
127 )*
128 )
129;
130
131// Entry rule entryRuleStatement
132entryRuleStatement returns [EObject current=null]:
133 { newCompositeNode(grammarAccess.getStatementRule()); }
134 iv_ruleStatement=ruleStatement
135 { $current=$iv_ruleStatement.current; }
136 EOF;
137
138// Rule Statement
139ruleStatement returns [EObject current=null]
140@init {
141 enterRule();
142}
143@after {
144 leaveRule();
145}:
146 (
147 {
148 newCompositeNode(grammarAccess.getStatementAccess().getClassDeclarationParserRuleCall_0());
149 }
150 this_ClassDeclaration_0=ruleClassDeclaration
151 {
152 $current = $this_ClassDeclaration_0.current;
153 afterParserOrEnumRuleCall();
154 }
155 |
156 {
157 newCompositeNode(grammarAccess.getStatementAccess().getEnumDeclarationParserRuleCall_1());
158 }
159 this_EnumDeclaration_1=ruleEnumDeclaration
160 {
161 $current = $this_EnumDeclaration_1.current;
162 afterParserOrEnumRuleCall();
163 }
164 |
165 {
166 newCompositeNode(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_2());
167 }
168 this_PredicateDefinition_2=rulePredicateDefinition
169 {
170 $current = $this_PredicateDefinition_2.current;
171 afterParserOrEnumRuleCall();
172 }
173 |
174 {
175 newCompositeNode(grammarAccess.getStatementAccess().getAssertionParserRuleCall_3());
176 }
177 this_Assertion_3=ruleAssertion
178 {
179 $current = $this_Assertion_3.current;
180 afterParserOrEnumRuleCall();
181 }
182 |
183 {
184 newCompositeNode(grammarAccess.getStatementAccess().getNodeValueAssertionParserRuleCall_4());
185 }
186 this_NodeValueAssertion_4=ruleNodeValueAssertion
187 {
188 $current = $this_NodeValueAssertion_4.current;
189 afterParserOrEnumRuleCall();
190 }
191 |
192 {
193 newCompositeNode(grammarAccess.getStatementAccess().getScopeDeclarationParserRuleCall_5());
194 }
195 this_ScopeDeclaration_5=ruleScopeDeclaration
196 {
197 $current = $this_ScopeDeclaration_5.current;
198 afterParserOrEnumRuleCall();
199 }
200 )
201;
202
203// Entry rule entryRuleClassDeclaration
204entryRuleClassDeclaration returns [EObject current=null]:
205 { newCompositeNode(grammarAccess.getClassDeclarationRule()); }
206 iv_ruleClassDeclaration=ruleClassDeclaration
207 { $current=$iv_ruleClassDeclaration.current; }
208 EOF;
209
210// Rule ClassDeclaration
211ruleClassDeclaration returns [EObject current=null]
212@init {
213 enterRule();
214}
215@after {
216 leaveRule();
217}:
218 (
219 (
220 (
221 lv_abstract_0_0='abstract'
222 {
223 newLeafNode(lv_abstract_0_0, grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0());
224 }
225 {
226 if ($current==null) {
227 $current = createModelElement(grammarAccess.getClassDeclarationRule());
228 }
229 setWithLastConsumed($current, "abstract", lv_abstract_0_0 != null, "abstract");
230 }
231 )
232 )?
233 otherlv_1='class'
234 {
235 newLeafNode(otherlv_1, grammarAccess.getClassDeclarationAccess().getClassKeyword_1());
236 }
237 (
238 (
239 {
240 newCompositeNode(grammarAccess.getClassDeclarationAccess().getNameIdentifierParserRuleCall_2_0());
241 }
242 lv_name_2_0=ruleIdentifier
243 {
244 if ($current==null) {
245 $current = createModelElementForParent(grammarAccess.getClassDeclarationRule());
246 }
247 set(
248 $current,
249 "name",
250 lv_name_2_0,
251 "org.eclipse.viatra.solver.language.Problem.Identifier");
252 afterParserOrEnumRuleCall();
253 }
254 )
255 )
256 (
257 otherlv_3='extends'
258 {
259 newLeafNode(otherlv_3, grammarAccess.getClassDeclarationAccess().getExtendsKeyword_3_0());
260 }
261 (
262 (
263 {
264 if ($current==null) {
265 $current = createModelElement(grammarAccess.getClassDeclarationRule());
266 }
267 }
268 {
269 newCompositeNode(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationCrossReference_3_1_0());
270 }
271 ruleQualifiedName
272 {
273 afterParserOrEnumRuleCall();
274 }
275 )
276 )
277 (
278 otherlv_5=','
279 {
280 newLeafNode(otherlv_5, grammarAccess.getClassDeclarationAccess().getCommaKeyword_3_2_0());
281 }
282 (
283 (
284 {
285 if ($current==null) {
286 $current = createModelElement(grammarAccess.getClassDeclarationRule());
287 }
288 }
289 {
290 newCompositeNode(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationCrossReference_3_2_1_0());
291 }
292 ruleQualifiedName
293 {
294 afterParserOrEnumRuleCall();
295 }
296 )
297 )
298 )*
299 )?
300 (
301 (
302 otherlv_7='{'
303 {
304 newLeafNode(otherlv_7, grammarAccess.getClassDeclarationAccess().getLeftCurlyBracketKeyword_4_0_0());
305 }
306 (
307 (
308 (
309 {
310 newCompositeNode(grammarAccess.getClassDeclarationAccess().getReferenceDeclarationsReferenceDeclarationParserRuleCall_4_0_1_0_0());
311 }
312 lv_referenceDeclarations_8_0=ruleReferenceDeclaration
313 {
314 if ($current==null) {
315 $current = createModelElementForParent(grammarAccess.getClassDeclarationRule());
316 }
317 add(
318 $current,
319 "referenceDeclarations",
320 lv_referenceDeclarations_8_0,
321 "org.eclipse.viatra.solver.language.Problem.ReferenceDeclaration");
322 afterParserOrEnumRuleCall();
323 }
324 )
325 )
326 (
327 otherlv_9=';'
328 {
329 newLeafNode(otherlv_9, grammarAccess.getClassDeclarationAccess().getSemicolonKeyword_4_0_1_1());
330 }
331 )?
332 )*
333 otherlv_10='}'
334 {
335 newLeafNode(otherlv_10, grammarAccess.getClassDeclarationAccess().getRightCurlyBracketKeyword_4_0_2());
336 }
337 )
338 |
339 otherlv_11='.'
340 {
341 newLeafNode(otherlv_11, grammarAccess.getClassDeclarationAccess().getFullStopKeyword_4_1());
342 }
343 )
344 )
345;
346
347// Entry rule entryRuleEnumDeclaration
348entryRuleEnumDeclaration returns [EObject current=null]:
349 { newCompositeNode(grammarAccess.getEnumDeclarationRule()); }
350 iv_ruleEnumDeclaration=ruleEnumDeclaration
351 { $current=$iv_ruleEnumDeclaration.current; }
352 EOF;
353
354// Rule EnumDeclaration
355ruleEnumDeclaration returns [EObject current=null]
356@init {
357 enterRule();
358}
359@after {
360 leaveRule();
361}:
362 (
363 otherlv_0='enum'
364 {
365 newLeafNode(otherlv_0, grammarAccess.getEnumDeclarationAccess().getEnumKeyword_0());
366 }
367 (
368 (
369 {
370 newCompositeNode(grammarAccess.getEnumDeclarationAccess().getNameIdentifierParserRuleCall_1_0());
371 }
372 lv_name_1_0=ruleIdentifier
373 {
374 if ($current==null) {
375 $current = createModelElementForParent(grammarAccess.getEnumDeclarationRule());
376 }
377 set(
378 $current,
379 "name",
380 lv_name_1_0,
381 "org.eclipse.viatra.solver.language.Problem.Identifier");
382 afterParserOrEnumRuleCall();
383 }
384 )
385 )
386 (
387 (
388 otherlv_2='{'
389 {
390 newLeafNode(otherlv_2, grammarAccess.getEnumDeclarationAccess().getLeftCurlyBracketKeyword_2_0_0());
391 }
392 (
393 (
394 (
395 {
396 newCompositeNode(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_0_0());
397 }
398 lv_literals_3_0=ruleEnumLiteral
399 {
400 if ($current==null) {
401 $current = createModelElementForParent(grammarAccess.getEnumDeclarationRule());
402 }
403 add(
404 $current,
405 "literals",
406 lv_literals_3_0,
407 "org.eclipse.viatra.solver.language.Problem.EnumLiteral");
408 afterParserOrEnumRuleCall();
409 }
410 )
411 )
412 (
413 otherlv_4=','
414 {
415 newLeafNode(otherlv_4, grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_1_0());
416 }
417 (
418 (
419 {
420 newCompositeNode(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0());
421 }
422 lv_literals_5_0=ruleEnumLiteral
423 {
424 if ($current==null) {
425 $current = createModelElementForParent(grammarAccess.getEnumDeclarationRule());
426 }
427 add(
428 $current,
429 "literals",
430 lv_literals_5_0,
431 "org.eclipse.viatra.solver.language.Problem.EnumLiteral");
432 afterParserOrEnumRuleCall();
433 }
434 )
435 )
436 )*
437 (
438 otherlv_6=','
439 {
440 newLeafNode(otherlv_6, grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_2_0());
441 }
442 |
443 otherlv_7=';'
444 {
445 newLeafNode(otherlv_7, grammarAccess.getEnumDeclarationAccess().getSemicolonKeyword_2_0_1_2_1());
446 }
447 )?
448 )?
449 otherlv_8='}'
450 {
451 newLeafNode(otherlv_8, grammarAccess.getEnumDeclarationAccess().getRightCurlyBracketKeyword_2_0_2());
452 }
453 )
454 |
455 otherlv_9='.'
456 {
457 newLeafNode(otherlv_9, grammarAccess.getEnumDeclarationAccess().getFullStopKeyword_2_1());
458 }
459 )
460 )
461;
462
463// Entry rule entryRuleEnumLiteral
464entryRuleEnumLiteral returns [EObject current=null]:
465 { newCompositeNode(grammarAccess.getEnumLiteralRule()); }
466 iv_ruleEnumLiteral=ruleEnumLiteral
467 { $current=$iv_ruleEnumLiteral.current; }
468 EOF;
469
470// Rule EnumLiteral
471ruleEnumLiteral returns [EObject current=null]
472@init {
473 enterRule();
474}
475@after {
476 leaveRule();
477}:
478 (
479 (
480 {
481 newCompositeNode(grammarAccess.getEnumLiteralAccess().getNameIdentifierParserRuleCall_0());
482 }
483 lv_name_0_0=ruleIdentifier
484 {
485 if ($current==null) {
486 $current = createModelElementForParent(grammarAccess.getEnumLiteralRule());
487 }
488 set(
489 $current,
490 "name",
491 lv_name_0_0,
492 "org.eclipse.viatra.solver.language.Problem.Identifier");
493 afterParserOrEnumRuleCall();
494 }
495 )
496 )
497;
498
499// Entry rule entryRuleReferenceDeclaration
500entryRuleReferenceDeclaration returns [EObject current=null]:
501 { newCompositeNode(grammarAccess.getReferenceDeclarationRule()); }
502 iv_ruleReferenceDeclaration=ruleReferenceDeclaration
503 { $current=$iv_ruleReferenceDeclaration.current; }
504 EOF;
505
506// Rule ReferenceDeclaration
507ruleReferenceDeclaration returns [EObject current=null]
508@init {
509 enterRule();
510}
511@after {
512 leaveRule();
513}:
514 (
515 (
516 (
517 (
518 lv_containment_0_0='contains'
519 {
520 newLeafNode(lv_containment_0_0, grammarAccess.getReferenceDeclarationAccess().getContainmentContainsKeyword_0_0_0());
521 }
522 {
523 if ($current==null) {
524 $current = createModelElement(grammarAccess.getReferenceDeclarationRule());
525 }
526 setWithLastConsumed($current, "containment", lv_containment_0_0 != null, "contains");
527 }
528 )
529 )
530 |
531 otherlv_1='refers'
532 {
533 newLeafNode(otherlv_1, grammarAccess.getReferenceDeclarationAccess().getRefersKeyword_0_1());
534 }
535 )?
536 (
537 (
538 {
539 if ($current==null) {
540 $current = createModelElement(grammarAccess.getReferenceDeclarationRule());
541 }
542 }
543 {
544 newCompositeNode(grammarAccess.getReferenceDeclarationAccess().getReferenceTypeRelationCrossReference_1_0());
545 }
546 ruleQualifiedName
547 {
548 afterParserOrEnumRuleCall();
549 }
550 )
551 )
552 (
553 otherlv_3='['
554 {
555 newLeafNode(otherlv_3, grammarAccess.getReferenceDeclarationAccess().getLeftSquareBracketKeyword_2_0());
556 }
557 (
558 (
559 {
560 newCompositeNode(grammarAccess.getReferenceDeclarationAccess().getMultiplicityMultiplicityParserRuleCall_2_1_0());
561 }
562 lv_multiplicity_4_0=ruleMultiplicity
563 {
564 if ($current==null) {
565 $current = createModelElementForParent(grammarAccess.getReferenceDeclarationRule());
566 }
567 set(
568 $current,
569 "multiplicity",
570 lv_multiplicity_4_0,
571 "org.eclipse.viatra.solver.language.Problem.Multiplicity");
572 afterParserOrEnumRuleCall();
573 }
574 )
575 )
576 otherlv_5=']'
577 {
578 newLeafNode(otherlv_5, grammarAccess.getReferenceDeclarationAccess().getRightSquareBracketKeyword_2_2());
579 }
580 )?
581 (
582 (
583 {
584 newCompositeNode(grammarAccess.getReferenceDeclarationAccess().getNameIdentifierParserRuleCall_3_0());
585 }
586 lv_name_6_0=ruleIdentifier
587 {
588 if ($current==null) {
589 $current = createModelElementForParent(grammarAccess.getReferenceDeclarationRule());
590 }
591 set(
592 $current,
593 "name",
594 lv_name_6_0,
595 "org.eclipse.viatra.solver.language.Problem.Identifier");
596 afterParserOrEnumRuleCall();
597 }
598 )
599 )
600 (
601 otherlv_7='opposite'
602 {
603 newLeafNode(otherlv_7, grammarAccess.getReferenceDeclarationAccess().getOppositeKeyword_4_0());
604 }
605 (
606 (
607 {
608 if ($current==null) {
609 $current = createModelElement(grammarAccess.getReferenceDeclarationRule());
610 }
611 }
612 {
613 newCompositeNode(grammarAccess.getReferenceDeclarationAccess().getOppositeReferenceDeclarationCrossReference_4_1_0());
614 }
615 ruleQualifiedName
616 {
617 afterParserOrEnumRuleCall();
618 }
619 )
620 )
621 )?
622 )
623;
624
625// Entry rule entryRulePredicateDefinition
626entryRulePredicateDefinition returns [EObject current=null]:
627 { newCompositeNode(grammarAccess.getPredicateDefinitionRule()); }
628 iv_rulePredicateDefinition=rulePredicateDefinition
629 { $current=$iv_rulePredicateDefinition.current; }
630 EOF;
631
632// Rule PredicateDefinition
633rulePredicateDefinition returns [EObject current=null]
634@init {
635 enterRule();
636}
637@after {
638 leaveRule();
639}:
640 (
641 (
642 (
643 (
644 (
645 lv_error_0_0='error'
646 {
647 newLeafNode(lv_error_0_0, grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_0_0_0());
648 }
649 {
650 if ($current==null) {
651 $current = createModelElement(grammarAccess.getPredicateDefinitionRule());
652 }
653 setWithLastConsumed($current, "error", lv_error_0_0 != null, "error");
654 }
655 )
656 )
657 (
658 otherlv_1='pred'
659 {
660 newLeafNode(otherlv_1, grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_0_1());
661 }
662 )?
663 )
664 |
665 otherlv_2='pred'
666 {
667 newLeafNode(otherlv_2, grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_1());
668 }
669 )
670 (
671 (
672 {
673 newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getNameIdentifierParserRuleCall_1_0());
674 }
675 lv_name_3_0=ruleIdentifier
676 {
677 if ($current==null) {
678 $current = createModelElementForParent(grammarAccess.getPredicateDefinitionRule());
679 }
680 set(
681 $current,
682 "name",
683 lv_name_3_0,
684 "org.eclipse.viatra.solver.language.Problem.Identifier");
685 afterParserOrEnumRuleCall();
686 }
687 )
688 )
689 otherlv_4='('
690 {
691 newLeafNode(otherlv_4, grammarAccess.getPredicateDefinitionAccess().getLeftParenthesisKeyword_2());
692 }
693 (
694 (
695 (
696 {
697 newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getParametersParameterParserRuleCall_3_0_0());
698 }
699 lv_parameters_5_0=ruleParameter
700 {
701 if ($current==null) {
702 $current = createModelElementForParent(grammarAccess.getPredicateDefinitionRule());
703 }
704 add(
705 $current,
706 "parameters",
707 lv_parameters_5_0,
708 "org.eclipse.viatra.solver.language.Problem.Parameter");
709 afterParserOrEnumRuleCall();
710 }
711 )
712 )
713 (
714 otherlv_6=','
715 {
716 newLeafNode(otherlv_6, grammarAccess.getPredicateDefinitionAccess().getCommaKeyword_3_1_0());
717 }
718 (
719 (
720 {
721 newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getParametersParameterParserRuleCall_3_1_1_0());
722 }
723 lv_parameters_7_0=ruleParameter
724 {
725 if ($current==null) {
726 $current = createModelElementForParent(grammarAccess.getPredicateDefinitionRule());
727 }
728 add(
729 $current,
730 "parameters",
731 lv_parameters_7_0,
732 "org.eclipse.viatra.solver.language.Problem.Parameter");
733 afterParserOrEnumRuleCall();
734 }
735 )
736 )
737 )*
738 )?
739 otherlv_8=')'
740 {
741 newLeafNode(otherlv_8, grammarAccess.getPredicateDefinitionAccess().getRightParenthesisKeyword_4());
742 }
743 (
744 otherlv_9=':-'
745 {
746 newLeafNode(otherlv_9, grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_5_0());
747 }
748 (
749 (
750 {
751 newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getBodiesConjunctionParserRuleCall_5_1_0());
752 }
753 lv_bodies_10_0=ruleConjunction
754 {
755 if ($current==null) {
756 $current = createModelElementForParent(grammarAccess.getPredicateDefinitionRule());
757 }
758 add(
759 $current,
760 "bodies",
761 lv_bodies_10_0,
762 "org.eclipse.viatra.solver.language.Problem.Conjunction");
763 afterParserOrEnumRuleCall();
764 }
765 )
766 )
767 (
768 otherlv_11=';'
769 {
770 newLeafNode(otherlv_11, grammarAccess.getPredicateDefinitionAccess().getSemicolonKeyword_5_2_0());
771 }
772 (
773 (
774 {
775 newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getBodiesConjunctionParserRuleCall_5_2_1_0());
776 }
777 lv_bodies_12_0=ruleConjunction
778 {
779 if ($current==null) {
780 $current = createModelElementForParent(grammarAccess.getPredicateDefinitionRule());
781 }
782 add(
783 $current,
784 "bodies",
785 lv_bodies_12_0,
786 "org.eclipse.viatra.solver.language.Problem.Conjunction");
787 afterParserOrEnumRuleCall();
788 }
789 )
790 )
791 )*
792 )?
793 otherlv_13='.'
794 {
795 newLeafNode(otherlv_13, grammarAccess.getPredicateDefinitionAccess().getFullStopKeyword_6());
796 }
797 )
798;
799
800// Entry rule entryRuleParameter
801entryRuleParameter returns [EObject current=null]:
802 { newCompositeNode(grammarAccess.getParameterRule()); }
803 iv_ruleParameter=ruleParameter
804 { $current=$iv_ruleParameter.current; }
805 EOF;
806
807// Rule Parameter
808ruleParameter returns [EObject current=null]
809@init {
810 enterRule();
811}
812@after {
813 leaveRule();
814}:
815 (
816 (
817 (
818 {
819 if ($current==null) {
820 $current = createModelElement(grammarAccess.getParameterRule());
821 }
822 }
823 {
824 newCompositeNode(grammarAccess.getParameterAccess().getParameterTypeRelationCrossReference_0_0());
825 }
826 ruleQualifiedName
827 {
828 afterParserOrEnumRuleCall();
829 }
830 )
831 )?
832 (
833 (
834 {
835 newCompositeNode(grammarAccess.getParameterAccess().getNameIdentifierParserRuleCall_1_0());
836 }
837 lv_name_1_0=ruleIdentifier
838 {
839 if ($current==null) {
840 $current = createModelElementForParent(grammarAccess.getParameterRule());
841 }
842 set(
843 $current,
844 "name",
845 lv_name_1_0,
846 "org.eclipse.viatra.solver.language.Problem.Identifier");
847 afterParserOrEnumRuleCall();
848 }
849 )
850 )
851 )
852;
853
854// Entry rule entryRuleConjunction
855entryRuleConjunction returns [EObject current=null]:
856 { newCompositeNode(grammarAccess.getConjunctionRule()); }
857 iv_ruleConjunction=ruleConjunction
858 { $current=$iv_ruleConjunction.current; }
859 EOF;
860
861// Rule Conjunction
862ruleConjunction returns [EObject current=null]
863@init {
864 enterRule();
865}
866@after {
867 leaveRule();
868}:
869 (
870 (
871 (
872 {
873 newCompositeNode(grammarAccess.getConjunctionAccess().getLiteralsLiteralParserRuleCall_0_0());
874 }
875 lv_literals_0_0=ruleLiteral
876 {
877 if ($current==null) {
878 $current = createModelElementForParent(grammarAccess.getConjunctionRule());
879 }
880 add(
881 $current,
882 "literals",
883 lv_literals_0_0,
884 "org.eclipse.viatra.solver.language.Problem.Literal");
885 afterParserOrEnumRuleCall();
886 }
887 )
888 )
889 (
890 otherlv_1=','
891 {
892 newLeafNode(otherlv_1, grammarAccess.getConjunctionAccess().getCommaKeyword_1_0());
893 }
894 (
895 (
896 {
897 newCompositeNode(grammarAccess.getConjunctionAccess().getLiteralsLiteralParserRuleCall_1_1_0());
898 }
899 lv_literals_2_0=ruleLiteral
900 {
901 if ($current==null) {
902 $current = createModelElementForParent(grammarAccess.getConjunctionRule());
903 }
904 add(
905 $current,
906 "literals",
907 lv_literals_2_0,
908 "org.eclipse.viatra.solver.language.Problem.Literal");
909 afterParserOrEnumRuleCall();
910 }
911 )
912 )
913 )*
914 )
915;
916
917// Entry rule entryRuleLiteral
918entryRuleLiteral returns [EObject current=null]:
919 { newCompositeNode(grammarAccess.getLiteralRule()); }
920 iv_ruleLiteral=ruleLiteral
921 { $current=$iv_ruleLiteral.current; }
922 EOF;
923
924// Rule Literal
925ruleLiteral returns [EObject current=null]
926@init {
927 enterRule();
928}
929@after {
930 leaveRule();
931}:
932 (
933 {
934 newCompositeNode(grammarAccess.getLiteralAccess().getAtomParserRuleCall_0());
935 }
936 this_Atom_0=ruleAtom
937 {
938 $current = $this_Atom_0.current;
939 afterParserOrEnumRuleCall();
940 }
941 |
942 {
943 newCompositeNode(grammarAccess.getLiteralAccess().getNegativeLiteralParserRuleCall_1());
944 }
945 this_NegativeLiteral_1=ruleNegativeLiteral
946 {
947 $current = $this_NegativeLiteral_1.current;
948 afterParserOrEnumRuleCall();
949 }
950 )
951;
952
953// Entry rule entryRuleNegativeLiteral
954entryRuleNegativeLiteral returns [EObject current=null]:
955 { newCompositeNode(grammarAccess.getNegativeLiteralRule()); }
956 iv_ruleNegativeLiteral=ruleNegativeLiteral
957 { $current=$iv_ruleNegativeLiteral.current; }
958 EOF;
959
960// Rule NegativeLiteral
961ruleNegativeLiteral returns [EObject current=null]
962@init {
963 enterRule();
964}
965@after {
966 leaveRule();
967}:
968 (
969 otherlv_0='!'
970 {
971 newLeafNode(otherlv_0, grammarAccess.getNegativeLiteralAccess().getExclamationMarkKeyword_0());
972 }
973 (
974 (
975 {
976 newCompositeNode(grammarAccess.getNegativeLiteralAccess().getAtomAtomParserRuleCall_1_0());
977 }
978 lv_atom_1_0=ruleAtom
979 {
980 if ($current==null) {
981 $current = createModelElementForParent(grammarAccess.getNegativeLiteralRule());
982 }
983 set(
984 $current,
985 "atom",
986 lv_atom_1_0,
987 "org.eclipse.viatra.solver.language.Problem.Atom");
988 afterParserOrEnumRuleCall();
989 }
990 )
991 )
992 )
993;
994
995// Entry rule entryRuleAtom
996entryRuleAtom returns [EObject current=null]:
997 { newCompositeNode(grammarAccess.getAtomRule()); }
998 iv_ruleAtom=ruleAtom
999 { $current=$iv_ruleAtom.current; }
1000 EOF;
1001
1002// Rule Atom
1003ruleAtom returns [EObject current=null]
1004@init {
1005 enterRule();
1006}
1007@after {
1008 leaveRule();
1009}:
1010 (
1011 (
1012 (
1013 {
1014 if ($current==null) {
1015 $current = createModelElement(grammarAccess.getAtomRule());
1016 }
1017 }
1018 {
1019 newCompositeNode(grammarAccess.getAtomAccess().getRelationRelationCrossReference_0_0());
1020 }
1021 ruleQualifiedName
1022 {
1023 afterParserOrEnumRuleCall();
1024 }
1025 )
1026 )
1027 (
1028 (
1029 lv_transitiveClosure_1_0='+'
1030 {
1031 newLeafNode(lv_transitiveClosure_1_0, grammarAccess.getAtomAccess().getTransitiveClosurePlusSignKeyword_1_0());
1032 }
1033 {
1034 if ($current==null) {
1035 $current = createModelElement(grammarAccess.getAtomRule());
1036 }
1037 setWithLastConsumed($current, "transitiveClosure", lv_transitiveClosure_1_0 != null, "+");
1038 }
1039 )
1040 )?
1041 otherlv_2='('
1042 {
1043 newLeafNode(otherlv_2, grammarAccess.getAtomAccess().getLeftParenthesisKeyword_2());
1044 }
1045 (
1046 (
1047 (
1048 {
1049 newCompositeNode(grammarAccess.getAtomAccess().getArgumentsArgumentParserRuleCall_3_0_0());
1050 }
1051 lv_arguments_3_0=ruleArgument
1052 {
1053 if ($current==null) {
1054 $current = createModelElementForParent(grammarAccess.getAtomRule());
1055 }
1056 add(
1057 $current,
1058 "arguments",
1059 lv_arguments_3_0,
1060 "org.eclipse.viatra.solver.language.Problem.Argument");
1061 afterParserOrEnumRuleCall();
1062 }
1063 )
1064 )
1065 (
1066 otherlv_4=','
1067 {
1068 newLeafNode(otherlv_4, grammarAccess.getAtomAccess().getCommaKeyword_3_1_0());
1069 }
1070 (
1071 (
1072 {
1073 newCompositeNode(grammarAccess.getAtomAccess().getArgumentsArgumentParserRuleCall_3_1_1_0());
1074 }
1075 lv_arguments_5_0=ruleArgument
1076 {
1077 if ($current==null) {
1078 $current = createModelElementForParent(grammarAccess.getAtomRule());
1079 }
1080 add(
1081 $current,
1082 "arguments",
1083 lv_arguments_5_0,
1084 "org.eclipse.viatra.solver.language.Problem.Argument");
1085 afterParserOrEnumRuleCall();
1086 }
1087 )
1088 )
1089 )*
1090 )?
1091 otherlv_6=')'
1092 {
1093 newLeafNode(otherlv_6, grammarAccess.getAtomAccess().getRightParenthesisKeyword_4());
1094 }
1095 )
1096;
1097
1098// Entry rule entryRuleArgument
1099entryRuleArgument returns [EObject current=null]:
1100 { newCompositeNode(grammarAccess.getArgumentRule()); }
1101 iv_ruleArgument=ruleArgument
1102 { $current=$iv_ruleArgument.current; }
1103 EOF;
1104
1105// Rule Argument
1106ruleArgument returns [EObject current=null]
1107@init {
1108 enterRule();
1109}
1110@after {
1111 leaveRule();
1112}:
1113 (
1114 {
1115 newCompositeNode(grammarAccess.getArgumentAccess().getVariableOrNodeArgumentParserRuleCall_0());
1116 }
1117 this_VariableOrNodeArgument_0=ruleVariableOrNodeArgument
1118 {
1119 $current = $this_VariableOrNodeArgument_0.current;
1120 afterParserOrEnumRuleCall();
1121 }
1122 |
1123 {
1124 newCompositeNode(grammarAccess.getArgumentAccess().getConstantArgumentParserRuleCall_1());
1125 }
1126 this_ConstantArgument_1=ruleConstantArgument
1127 {
1128 $current = $this_ConstantArgument_1.current;
1129 afterParserOrEnumRuleCall();
1130 }
1131 )
1132;
1133
1134// Entry rule entryRuleVariableOrNodeArgument
1135entryRuleVariableOrNodeArgument returns [EObject current=null]:
1136 { newCompositeNode(grammarAccess.getVariableOrNodeArgumentRule()); }
1137 iv_ruleVariableOrNodeArgument=ruleVariableOrNodeArgument
1138 { $current=$iv_ruleVariableOrNodeArgument.current; }
1139 EOF;
1140
1141// Rule VariableOrNodeArgument
1142ruleVariableOrNodeArgument returns [EObject current=null]
1143@init {
1144 enterRule();
1145}
1146@after {
1147 leaveRule();
1148}:
1149 (
1150 (
1151 {
1152 if ($current==null) {
1153 $current = createModelElement(grammarAccess.getVariableOrNodeArgumentRule());
1154 }
1155 }
1156 {
1157 newCompositeNode(grammarAccess.getVariableOrNodeArgumentAccess().getVariableOrNodeVariableOrNodeCrossReference_0());
1158 }
1159 ruleQualifiedName
1160 {
1161 afterParserOrEnumRuleCall();
1162 }
1163 )
1164 )
1165;
1166
1167// Entry rule entryRuleConstantArgument
1168entryRuleConstantArgument returns [EObject current=null]:
1169 { newCompositeNode(grammarAccess.getConstantArgumentRule()); }
1170 iv_ruleConstantArgument=ruleConstantArgument
1171 { $current=$iv_ruleConstantArgument.current; }
1172 EOF;
1173
1174// Rule ConstantArgument
1175ruleConstantArgument returns [EObject current=null]
1176@init {
1177 enterRule();
1178}
1179@after {
1180 leaveRule();
1181}:
1182 (
1183 (
1184 {
1185 newCompositeNode(grammarAccess.getConstantArgumentAccess().getConstantConstantParserRuleCall_0());
1186 }
1187 lv_constant_0_0=ruleConstant
1188 {
1189 if ($current==null) {
1190 $current = createModelElementForParent(grammarAccess.getConstantArgumentRule());
1191 }
1192 set(
1193 $current,
1194 "constant",
1195 lv_constant_0_0,
1196 "org.eclipse.viatra.solver.language.Problem.Constant");
1197 afterParserOrEnumRuleCall();
1198 }
1199 )
1200 )
1201;
1202
1203// Entry rule entryRuleAssertion
1204entryRuleAssertion returns [EObject current=null]:
1205 { newCompositeNode(grammarAccess.getAssertionRule()); }
1206 iv_ruleAssertion=ruleAssertion
1207 { $current=$iv_ruleAssertion.current; }
1208 EOF;
1209
1210// Rule Assertion
1211ruleAssertion returns [EObject current=null]
1212@init {
1213 enterRule();
1214}
1215@after {
1216 leaveRule();
1217}:
1218 (
1219 (
1220 (
1221 (
1222 (
1223 {
1224 if ($current==null) {
1225 $current = createModelElement(grammarAccess.getAssertionRule());
1226 }
1227 }
1228 {
1229 newCompositeNode(grammarAccess.getAssertionAccess().getRelationRelationCrossReference_0_0_0_0());
1230 }
1231 ruleQualifiedName
1232 {
1233 afterParserOrEnumRuleCall();
1234 }
1235 )
1236 )
1237 otherlv_1='('
1238 {
1239 newLeafNode(otherlv_1, grammarAccess.getAssertionAccess().getLeftParenthesisKeyword_0_0_1());
1240 }
1241 (
1242 (
1243 (
1244 {
1245 newCompositeNode(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_0_2_0_0());
1246 }
1247 lv_arguments_2_0=ruleAssertionArgument
1248 {
1249 if ($current==null) {
1250 $current = createModelElementForParent(grammarAccess.getAssertionRule());
1251 }
1252 add(
1253 $current,
1254 "arguments",
1255 lv_arguments_2_0,
1256 "org.eclipse.viatra.solver.language.Problem.AssertionArgument");
1257 afterParserOrEnumRuleCall();
1258 }
1259 )
1260 )
1261 (
1262 otherlv_3=','
1263 {
1264 newLeafNode(otherlv_3, grammarAccess.getAssertionAccess().getCommaKeyword_0_0_2_1_0());
1265 }
1266 (
1267 (
1268 {
1269 newCompositeNode(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_0_2_1_1_0());
1270 }
1271 lv_arguments_4_0=ruleAssertionArgument
1272 {
1273 if ($current==null) {
1274 $current = createModelElementForParent(grammarAccess.getAssertionRule());
1275 }
1276 add(
1277 $current,
1278 "arguments",
1279 lv_arguments_4_0,
1280 "org.eclipse.viatra.solver.language.Problem.AssertionArgument");
1281 afterParserOrEnumRuleCall();
1282 }
1283 )
1284 )
1285 )*
1286 )?
1287 otherlv_5=')'
1288 {
1289 newLeafNode(otherlv_5, grammarAccess.getAssertionAccess().getRightParenthesisKeyword_0_0_3());
1290 }
1291 otherlv_6=':'
1292 {
1293 newLeafNode(otherlv_6, grammarAccess.getAssertionAccess().getColonKeyword_0_0_4());
1294 }
1295 (
1296 (
1297 {
1298 newCompositeNode(grammarAccess.getAssertionAccess().getValueLogicValueEnumRuleCall_0_0_5_0());
1299 }
1300 lv_value_7_0=ruleLogicValue
1301 {
1302 if ($current==null) {
1303 $current = createModelElementForParent(grammarAccess.getAssertionRule());
1304 }
1305 set(
1306 $current,
1307 "value",
1308 lv_value_7_0,
1309 "org.eclipse.viatra.solver.language.Problem.LogicValue");
1310 afterParserOrEnumRuleCall();
1311 }
1312 )
1313 )
1314 )
1315 |
1316 (
1317 (
1318 (
1319 {
1320 newCompositeNode(grammarAccess.getAssertionAccess().getValueShortLogicValueEnumRuleCall_0_1_0_0());
1321 }
1322 lv_value_8_0=ruleShortLogicValue
1323 {
1324 if ($current==null) {
1325 $current = createModelElementForParent(grammarAccess.getAssertionRule());
1326 }
1327 set(
1328 $current,
1329 "value",
1330 lv_value_8_0,
1331 "org.eclipse.viatra.solver.language.Problem.ShortLogicValue");
1332 afterParserOrEnumRuleCall();
1333 }
1334 )
1335 )?
1336 (
1337 (
1338 {
1339 if ($current==null) {
1340 $current = createModelElement(grammarAccess.getAssertionRule());
1341 }
1342 }
1343 {
1344 newCompositeNode(grammarAccess.getAssertionAccess().getRelationRelationCrossReference_0_1_1_0());
1345 }
1346 ruleQualifiedName
1347 {
1348 afterParserOrEnumRuleCall();
1349 }
1350 )
1351 )
1352 otherlv_10='('
1353 {
1354 newLeafNode(otherlv_10, grammarAccess.getAssertionAccess().getLeftParenthesisKeyword_0_1_2());
1355 }
1356 (
1357 (
1358 (
1359 {
1360 newCompositeNode(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_1_3_0_0());
1361 }
1362 lv_arguments_11_0=ruleAssertionArgument
1363 {
1364 if ($current==null) {
1365 $current = createModelElementForParent(grammarAccess.getAssertionRule());
1366 }
1367 add(
1368 $current,
1369 "arguments",
1370 lv_arguments_11_0,
1371 "org.eclipse.viatra.solver.language.Problem.AssertionArgument");
1372 afterParserOrEnumRuleCall();
1373 }
1374 )
1375 )
1376 (
1377 otherlv_12=','
1378 {
1379 newLeafNode(otherlv_12, grammarAccess.getAssertionAccess().getCommaKeyword_0_1_3_1_0());
1380 }
1381 (
1382 (
1383 {
1384 newCompositeNode(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_1_3_1_1_0());
1385 }
1386 lv_arguments_13_0=ruleAssertionArgument
1387 {
1388 if ($current==null) {
1389 $current = createModelElementForParent(grammarAccess.getAssertionRule());
1390 }
1391 add(
1392 $current,
1393 "arguments",
1394 lv_arguments_13_0,
1395 "org.eclipse.viatra.solver.language.Problem.AssertionArgument");
1396 afterParserOrEnumRuleCall();
1397 }
1398 )
1399 )
1400 )*
1401 )?
1402 otherlv_14=')'
1403 {
1404 newLeafNode(otherlv_14, grammarAccess.getAssertionAccess().getRightParenthesisKeyword_0_1_4());
1405 }
1406 )
1407 )
1408 otherlv_15='.'
1409 {
1410 newLeafNode(otherlv_15, grammarAccess.getAssertionAccess().getFullStopKeyword_1());
1411 }
1412 )
1413;
1414
1415// Entry rule entryRuleAssertionArgument
1416entryRuleAssertionArgument returns [EObject current=null]:
1417 { newCompositeNode(grammarAccess.getAssertionArgumentRule()); }
1418 iv_ruleAssertionArgument=ruleAssertionArgument
1419 { $current=$iv_ruleAssertionArgument.current; }
1420 EOF;
1421
1422// Rule AssertionArgument
1423ruleAssertionArgument returns [EObject current=null]
1424@init {
1425 enterRule();
1426}
1427@after {
1428 leaveRule();
1429}:
1430 (
1431 {
1432 newCompositeNode(grammarAccess.getAssertionArgumentAccess().getNodeAssertionArgumentParserRuleCall_0());
1433 }
1434 this_NodeAssertionArgument_0=ruleNodeAssertionArgument
1435 {
1436 $current = $this_NodeAssertionArgument_0.current;
1437 afterParserOrEnumRuleCall();
1438 }
1439 |
1440 {
1441 newCompositeNode(grammarAccess.getAssertionArgumentAccess().getConstantAssertionArgumentParserRuleCall_1());
1442 }
1443 this_ConstantAssertionArgument_1=ruleConstantAssertionArgument
1444 {
1445 $current = $this_ConstantAssertionArgument_1.current;
1446 afterParserOrEnumRuleCall();
1447 }
1448 )
1449;
1450
1451// Entry rule entryRuleNodeAssertionArgument
1452entryRuleNodeAssertionArgument returns [EObject current=null]:
1453 { newCompositeNode(grammarAccess.getNodeAssertionArgumentRule()); }
1454 iv_ruleNodeAssertionArgument=ruleNodeAssertionArgument
1455 { $current=$iv_ruleNodeAssertionArgument.current; }
1456 EOF;
1457
1458// Rule NodeAssertionArgument
1459ruleNodeAssertionArgument returns [EObject current=null]
1460@init {
1461 enterRule();
1462}
1463@after {
1464 leaveRule();
1465}:
1466 (
1467 (
1468 {
1469 if ($current==null) {
1470 $current = createModelElement(grammarAccess.getNodeAssertionArgumentRule());
1471 }
1472 }
1473 {
1474 newCompositeNode(grammarAccess.getNodeAssertionArgumentAccess().getNodeNodeCrossReference_0());
1475 }
1476 ruleQualifiedName
1477 {
1478 afterParserOrEnumRuleCall();
1479 }
1480 )
1481 )
1482;
1483
1484// Entry rule entryRuleConstantAssertionArgument
1485entryRuleConstantAssertionArgument returns [EObject current=null]:
1486 { newCompositeNode(grammarAccess.getConstantAssertionArgumentRule()); }
1487 iv_ruleConstantAssertionArgument=ruleConstantAssertionArgument
1488 { $current=$iv_ruleConstantAssertionArgument.current; }
1489 EOF;
1490
1491// Rule ConstantAssertionArgument
1492ruleConstantAssertionArgument returns [EObject current=null]
1493@init {
1494 enterRule();
1495}
1496@after {
1497 leaveRule();
1498}:
1499 (
1500 (
1501 {
1502 newCompositeNode(grammarAccess.getConstantAssertionArgumentAccess().getConstantConstantParserRuleCall_0());
1503 }
1504 lv_constant_0_0=ruleConstant
1505 {
1506 if ($current==null) {
1507 $current = createModelElementForParent(grammarAccess.getConstantAssertionArgumentRule());
1508 }
1509 set(
1510 $current,
1511 "constant",
1512 lv_constant_0_0,
1513 "org.eclipse.viatra.solver.language.Problem.Constant");
1514 afterParserOrEnumRuleCall();
1515 }
1516 )
1517 )
1518;
1519
1520// Entry rule entryRuleNodeValueAssertion
1521entryRuleNodeValueAssertion returns [EObject current=null]:
1522 { newCompositeNode(grammarAccess.getNodeValueAssertionRule()); }
1523 iv_ruleNodeValueAssertion=ruleNodeValueAssertion
1524 { $current=$iv_ruleNodeValueAssertion.current; }
1525 EOF;
1526
1527// Rule NodeValueAssertion
1528ruleNodeValueAssertion returns [EObject current=null]
1529@init {
1530 enterRule();
1531}
1532@after {
1533 leaveRule();
1534}:
1535 (
1536 (
1537 (
1538 {
1539 if ($current==null) {
1540 $current = createModelElement(grammarAccess.getNodeValueAssertionRule());
1541 }
1542 }
1543 {
1544 newCompositeNode(grammarAccess.getNodeValueAssertionAccess().getNodeNodeCrossReference_0_0());
1545 }
1546 ruleQualifiedName
1547 {
1548 afterParserOrEnumRuleCall();
1549 }
1550 )
1551 )
1552 otherlv_1=':'
1553 {
1554 newLeafNode(otherlv_1, grammarAccess.getNodeValueAssertionAccess().getColonKeyword_1());
1555 }
1556 (
1557 (
1558 {
1559 newCompositeNode(grammarAccess.getNodeValueAssertionAccess().getValueConstantParserRuleCall_2_0());
1560 }
1561 lv_value_2_0=ruleConstant
1562 {
1563 if ($current==null) {
1564 $current = createModelElementForParent(grammarAccess.getNodeValueAssertionRule());
1565 }
1566 set(
1567 $current,
1568 "value",
1569 lv_value_2_0,
1570 "org.eclipse.viatra.solver.language.Problem.Constant");
1571 afterParserOrEnumRuleCall();
1572 }
1573 )
1574 )
1575 otherlv_3='.'
1576 {
1577 newLeafNode(otherlv_3, grammarAccess.getNodeValueAssertionAccess().getFullStopKeyword_3());
1578 }
1579 )
1580;
1581
1582// Entry rule entryRuleConstant
1583entryRuleConstant returns [EObject current=null]:
1584 { newCompositeNode(grammarAccess.getConstantRule()); }
1585 iv_ruleConstant=ruleConstant
1586 { $current=$iv_ruleConstant.current; }
1587 EOF;
1588
1589// Rule Constant
1590ruleConstant returns [EObject current=null]
1591@init {
1592 enterRule();
1593}
1594@after {
1595 leaveRule();
1596}:
1597 (
1598 {
1599 newCompositeNode(grammarAccess.getConstantAccess().getRealConstantParserRuleCall_0());
1600 }
1601 this_RealConstant_0=ruleRealConstant
1602 {
1603 $current = $this_RealConstant_0.current;
1604 afterParserOrEnumRuleCall();
1605 }
1606 |
1607 {
1608 newCompositeNode(grammarAccess.getConstantAccess().getIntConstantParserRuleCall_1());
1609 }
1610 this_IntConstant_1=ruleIntConstant
1611 {
1612 $current = $this_IntConstant_1.current;
1613 afterParserOrEnumRuleCall();
1614 }
1615 |
1616 {
1617 newCompositeNode(grammarAccess.getConstantAccess().getStringConstantParserRuleCall_2());
1618 }
1619 this_StringConstant_2=ruleStringConstant
1620 {
1621 $current = $this_StringConstant_2.current;
1622 afterParserOrEnumRuleCall();
1623 }
1624 )
1625;
1626
1627// Entry rule entryRuleIntConstant
1628entryRuleIntConstant returns [EObject current=null]:
1629 { newCompositeNode(grammarAccess.getIntConstantRule()); }
1630 iv_ruleIntConstant=ruleIntConstant
1631 { $current=$iv_ruleIntConstant.current; }
1632 EOF;
1633
1634// Rule IntConstant
1635ruleIntConstant returns [EObject current=null]
1636@init {
1637 enterRule();
1638}
1639@after {
1640 leaveRule();
1641}:
1642 (
1643 (
1644 {
1645 newCompositeNode(grammarAccess.getIntConstantAccess().getIntValueIntegerParserRuleCall_0());
1646 }
1647 lv_intValue_0_0=ruleInteger
1648 {
1649 if ($current==null) {
1650 $current = createModelElementForParent(grammarAccess.getIntConstantRule());
1651 }
1652 set(
1653 $current,
1654 "intValue",
1655 lv_intValue_0_0,
1656 "org.eclipse.viatra.solver.language.Problem.Integer");
1657 afterParserOrEnumRuleCall();
1658 }
1659 )
1660 )
1661;
1662
1663// Entry rule entryRuleRealConstant
1664entryRuleRealConstant returns [EObject current=null]:
1665 { newCompositeNode(grammarAccess.getRealConstantRule()); }
1666 iv_ruleRealConstant=ruleRealConstant
1667 { $current=$iv_ruleRealConstant.current; }
1668 EOF;
1669
1670// Rule RealConstant
1671ruleRealConstant returns [EObject current=null]
1672@init {
1673 enterRule();
1674}
1675@after {
1676 leaveRule();
1677}:
1678 (
1679 (
1680 {
1681 newCompositeNode(grammarAccess.getRealConstantAccess().getRealValueRealParserRuleCall_0());
1682 }
1683 lv_realValue_0_0=ruleReal
1684 {
1685 if ($current==null) {
1686 $current = createModelElementForParent(grammarAccess.getRealConstantRule());
1687 }
1688 set(
1689 $current,
1690 "realValue",
1691 lv_realValue_0_0,
1692 "org.eclipse.viatra.solver.language.Problem.Real");
1693 afterParserOrEnumRuleCall();
1694 }
1695 )
1696 )
1697;
1698
1699// Entry rule entryRuleStringConstant
1700entryRuleStringConstant returns [EObject current=null]:
1701 { newCompositeNode(grammarAccess.getStringConstantRule()); }
1702 iv_ruleStringConstant=ruleStringConstant
1703 { $current=$iv_ruleStringConstant.current; }
1704 EOF;
1705
1706// Rule StringConstant
1707ruleStringConstant returns [EObject current=null]
1708@init {
1709 enterRule();
1710}
1711@after {
1712 leaveRule();
1713}:
1714 (
1715 (
1716 lv_stringValue_0_0=RULE_STRING
1717 {
1718 newLeafNode(lv_stringValue_0_0, grammarAccess.getStringConstantAccess().getStringValueSTRINGTerminalRuleCall_0());
1719 }
1720 {
1721 if ($current==null) {
1722 $current = createModelElement(grammarAccess.getStringConstantRule());
1723 }
1724 setWithLastConsumed(
1725 $current,
1726 "stringValue",
1727 lv_stringValue_0_0,
1728 "org.eclipse.viatra.solver.language.Problem.STRING");
1729 }
1730 )
1731 )
1732;
1733
1734// Entry rule entryRuleScopeDeclaration
1735entryRuleScopeDeclaration returns [EObject current=null]:
1736 { newCompositeNode(grammarAccess.getScopeDeclarationRule()); }
1737 iv_ruleScopeDeclaration=ruleScopeDeclaration
1738 { $current=$iv_ruleScopeDeclaration.current; }
1739 EOF;
1740
1741// Rule ScopeDeclaration
1742ruleScopeDeclaration returns [EObject current=null]
1743@init {
1744 enterRule();
1745}
1746@after {
1747 leaveRule();
1748}:
1749 (
1750 otherlv_0='scope'
1751 {
1752 newLeafNode(otherlv_0, grammarAccess.getScopeDeclarationAccess().getScopeKeyword_0());
1753 }
1754 (
1755 (
1756 {
1757 newCompositeNode(grammarAccess.getScopeDeclarationAccess().getTypeScopesTypeScopeParserRuleCall_1_0());
1758 }
1759 lv_typeScopes_1_0=ruleTypeScope
1760 {
1761 if ($current==null) {
1762 $current = createModelElementForParent(grammarAccess.getScopeDeclarationRule());
1763 }
1764 add(
1765 $current,
1766 "typeScopes",
1767 lv_typeScopes_1_0,
1768 "org.eclipse.viatra.solver.language.Problem.TypeScope");
1769 afterParserOrEnumRuleCall();
1770 }
1771 )
1772 )
1773 (
1774 otherlv_2=','
1775 {
1776 newLeafNode(otherlv_2, grammarAccess.getScopeDeclarationAccess().getCommaKeyword_2_0());
1777 }
1778 (
1779 (
1780 {
1781 newCompositeNode(grammarAccess.getScopeDeclarationAccess().getTypeScopesTypeScopeParserRuleCall_2_1_0());
1782 }
1783 lv_typeScopes_3_0=ruleTypeScope
1784 {
1785 if ($current==null) {
1786 $current = createModelElementForParent(grammarAccess.getScopeDeclarationRule());
1787 }
1788 add(
1789 $current,
1790 "typeScopes",
1791 lv_typeScopes_3_0,
1792 "org.eclipse.viatra.solver.language.Problem.TypeScope");
1793 afterParserOrEnumRuleCall();
1794 }
1795 )
1796 )
1797 )*
1798 otherlv_4='.'
1799 {
1800 newLeafNode(otherlv_4, grammarAccess.getScopeDeclarationAccess().getFullStopKeyword_3());
1801 }
1802 )
1803;
1804
1805// Entry rule entryRuleTypeScope
1806entryRuleTypeScope returns [EObject current=null]:
1807 { newCompositeNode(grammarAccess.getTypeScopeRule()); }
1808 iv_ruleTypeScope=ruleTypeScope
1809 { $current=$iv_ruleTypeScope.current; }
1810 EOF;
1811
1812// Rule TypeScope
1813ruleTypeScope returns [EObject current=null]
1814@init {
1815 enterRule();
1816}
1817@after {
1818 leaveRule();
1819}:
1820 (
1821 (
1822 (
1823 {
1824 if ($current==null) {
1825 $current = createModelElement(grammarAccess.getTypeScopeRule());
1826 }
1827 }
1828 otherlv_0=RULE_ID
1829 {
1830 newLeafNode(otherlv_0, grammarAccess.getTypeScopeAccess().getTargetTypeClassDeclarationCrossReference_0_0());
1831 }
1832 )
1833 )
1834 (
1835 (
1836 (
1837 lv_increment_1_0='+='
1838 {
1839 newLeafNode(lv_increment_1_0, grammarAccess.getTypeScopeAccess().getIncrementPlusSignEqualsSignKeyword_1_0_0());
1840 }
1841 {
1842 if ($current==null) {
1843 $current = createModelElement(grammarAccess.getTypeScopeRule());
1844 }
1845 setWithLastConsumed($current, "increment", lv_increment_1_0 != null, "+=");
1846 }
1847 )
1848 )
1849 |
1850 otherlv_2='='
1851 {
1852 newLeafNode(otherlv_2, grammarAccess.getTypeScopeAccess().getEqualsSignKeyword_1_1());
1853 }
1854 )
1855 (
1856 (
1857 {
1858 newCompositeNode(grammarAccess.getTypeScopeAccess().getMultiplicityDefiniteMultiplicityParserRuleCall_2_0());
1859 }
1860 lv_multiplicity_3_0=ruleDefiniteMultiplicity
1861 {
1862 if ($current==null) {
1863 $current = createModelElementForParent(grammarAccess.getTypeScopeRule());
1864 }
1865 set(
1866 $current,
1867 "multiplicity",
1868 lv_multiplicity_3_0,
1869 "org.eclipse.viatra.solver.language.Problem.DefiniteMultiplicity");
1870 afterParserOrEnumRuleCall();
1871 }
1872 )
1873 )
1874 )
1875;
1876
1877// Entry rule entryRuleMultiplicity
1878entryRuleMultiplicity returns [EObject current=null]:
1879 { newCompositeNode(grammarAccess.getMultiplicityRule()); }
1880 iv_ruleMultiplicity=ruleMultiplicity
1881 { $current=$iv_ruleMultiplicity.current; }
1882 EOF;
1883
1884// Rule Multiplicity
1885ruleMultiplicity returns [EObject current=null]
1886@init {
1887 enterRule();
1888}
1889@after {
1890 leaveRule();
1891}:
1892 (
1893 {
1894 newCompositeNode(grammarAccess.getMultiplicityAccess().getUnboundedMultiplicityParserRuleCall_0());
1895 }
1896 this_UnboundedMultiplicity_0=ruleUnboundedMultiplicity
1897 {
1898 $current = $this_UnboundedMultiplicity_0.current;
1899 afterParserOrEnumRuleCall();
1900 }
1901 |
1902 {
1903 newCompositeNode(grammarAccess.getMultiplicityAccess().getDefiniteMultiplicityParserRuleCall_1());
1904 }
1905 this_DefiniteMultiplicity_1=ruleDefiniteMultiplicity
1906 {
1907 $current = $this_DefiniteMultiplicity_1.current;
1908 afterParserOrEnumRuleCall();
1909 }
1910 )
1911;
1912
1913// Entry rule entryRuleDefiniteMultiplicity
1914entryRuleDefiniteMultiplicity returns [EObject current=null]:
1915 { newCompositeNode(grammarAccess.getDefiniteMultiplicityRule()); }
1916 iv_ruleDefiniteMultiplicity=ruleDefiniteMultiplicity
1917 { $current=$iv_ruleDefiniteMultiplicity.current; }
1918 EOF;
1919
1920// Rule DefiniteMultiplicity
1921ruleDefiniteMultiplicity returns [EObject current=null]
1922@init {
1923 enterRule();
1924}
1925@after {
1926 leaveRule();
1927}:
1928 (
1929 {
1930 newCompositeNode(grammarAccess.getDefiniteMultiplicityAccess().getRangeMultiplicityParserRuleCall_0());
1931 }
1932 this_RangeMultiplicity_0=ruleRangeMultiplicity
1933 {
1934 $current = $this_RangeMultiplicity_0.current;
1935 afterParserOrEnumRuleCall();
1936 }
1937 |
1938 {
1939 newCompositeNode(grammarAccess.getDefiniteMultiplicityAccess().getExactMultiplicityParserRuleCall_1());
1940 }
1941 this_ExactMultiplicity_1=ruleExactMultiplicity
1942 {
1943 $current = $this_ExactMultiplicity_1.current;
1944 afterParserOrEnumRuleCall();
1945 }
1946 )
1947;
1948
1949// Entry rule entryRuleUnboundedMultiplicity
1950entryRuleUnboundedMultiplicity returns [EObject current=null]:
1951 { newCompositeNode(grammarAccess.getUnboundedMultiplicityRule()); }
1952 iv_ruleUnboundedMultiplicity=ruleUnboundedMultiplicity
1953 { $current=$iv_ruleUnboundedMultiplicity.current; }
1954 EOF;
1955
1956// Rule UnboundedMultiplicity
1957ruleUnboundedMultiplicity returns [EObject current=null]
1958@init {
1959 enterRule();
1960}
1961@after {
1962 leaveRule();
1963}:
1964 (
1965 {
1966 $current = forceCreateModelElement(
1967 grammarAccess.getUnboundedMultiplicityAccess().getUnboundedMultiplicityAction(),
1968 $current);
1969 }
1970 )
1971;
1972
1973// Entry rule entryRuleRangeMultiplicity
1974entryRuleRangeMultiplicity returns [EObject current=null]:
1975 { newCompositeNode(grammarAccess.getRangeMultiplicityRule()); }
1976 iv_ruleRangeMultiplicity=ruleRangeMultiplicity
1977 { $current=$iv_ruleRangeMultiplicity.current; }
1978 EOF;
1979
1980// Rule RangeMultiplicity
1981ruleRangeMultiplicity returns [EObject current=null]
1982@init {
1983 enterRule();
1984}
1985@after {
1986 leaveRule();
1987}:
1988 (
1989 (
1990 (
1991 lv_lowerBound_0_0=RULE_INT
1992 {
1993 newLeafNode(lv_lowerBound_0_0, grammarAccess.getRangeMultiplicityAccess().getLowerBoundINTTerminalRuleCall_0_0());
1994 }
1995 {
1996 if ($current==null) {
1997 $current = createModelElement(grammarAccess.getRangeMultiplicityRule());
1998 }
1999 setWithLastConsumed(
2000 $current,
2001 "lowerBound",
2002 lv_lowerBound_0_0,
2003 "org.eclipse.xtext.common.Terminals.INT");
2004 }
2005 )
2006 )
2007 otherlv_1='..'
2008 {
2009 newLeafNode(otherlv_1, grammarAccess.getRangeMultiplicityAccess().getFullStopFullStopKeyword_1());
2010 }
2011 (
2012 (
2013 {
2014 newCompositeNode(grammarAccess.getRangeMultiplicityAccess().getUpperBoundUpperBoundParserRuleCall_2_0());
2015 }
2016 lv_upperBound_2_0=ruleUpperBound
2017 {
2018 if ($current==null) {
2019 $current = createModelElementForParent(grammarAccess.getRangeMultiplicityRule());
2020 }
2021 set(
2022 $current,
2023 "upperBound",
2024 lv_upperBound_2_0,
2025 "org.eclipse.viatra.solver.language.Problem.UpperBound");
2026 afterParserOrEnumRuleCall();
2027 }
2028 )
2029 )
2030 )
2031;
2032
2033// Entry rule entryRuleExactMultiplicity
2034entryRuleExactMultiplicity returns [EObject current=null]:
2035 { newCompositeNode(grammarAccess.getExactMultiplicityRule()); }
2036 iv_ruleExactMultiplicity=ruleExactMultiplicity
2037 { $current=$iv_ruleExactMultiplicity.current; }
2038 EOF;
2039
2040// Rule ExactMultiplicity
2041ruleExactMultiplicity returns [EObject current=null]
2042@init {
2043 enterRule();
2044}
2045@after {
2046 leaveRule();
2047}:
2048 (
2049 (
2050 lv_exactValue_0_0=RULE_INT
2051 {
2052 newLeafNode(lv_exactValue_0_0, grammarAccess.getExactMultiplicityAccess().getExactValueINTTerminalRuleCall_0());
2053 }
2054 {
2055 if ($current==null) {
2056 $current = createModelElement(grammarAccess.getExactMultiplicityRule());
2057 }
2058 setWithLastConsumed(
2059 $current,
2060 "exactValue",
2061 lv_exactValue_0_0,
2062 "org.eclipse.xtext.common.Terminals.INT");
2063 }
2064 )
2065 )
2066;
2067
2068// Entry rule entryRuleUpperBound
2069entryRuleUpperBound returns [String current=null]:
2070 { newCompositeNode(grammarAccess.getUpperBoundRule()); }
2071 iv_ruleUpperBound=ruleUpperBound
2072 { $current=$iv_ruleUpperBound.current.getText(); }
2073 EOF;
2074
2075// Rule UpperBound
2076ruleUpperBound returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
2077@init {
2078 enterRule();
2079}
2080@after {
2081 leaveRule();
2082}:
2083 (
2084 this_INT_0=RULE_INT
2085 {
2086 $current.merge(this_INT_0);
2087 }
2088 {
2089 newLeafNode(this_INT_0, grammarAccess.getUpperBoundAccess().getINTTerminalRuleCall_0());
2090 }
2091 |
2092 kw='*'
2093 {
2094 $current.merge(kw);
2095 newLeafNode(kw, grammarAccess.getUpperBoundAccess().getAsteriskKeyword_1());
2096 }
2097 )
2098;
2099
2100// Entry rule entryRuleQualifiedName
2101entryRuleQualifiedName returns [String current=null]@init {
2102 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
2103}:
2104 { newCompositeNode(grammarAccess.getQualifiedNameRule()); }
2105 iv_ruleQualifiedName=ruleQualifiedName
2106 { $current=$iv_ruleQualifiedName.current.getText(); }
2107 EOF;
2108finally {
2109 myHiddenTokenState.restore();
2110}
2111
2112// Rule QualifiedName
2113ruleQualifiedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
2114@init {
2115 enterRule();
2116 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
2117}
2118@after {
2119 leaveRule();
2120}:
2121 (
2122 this_QUOTED_ID_0=RULE_QUOTED_ID
2123 {
2124 $current.merge(this_QUOTED_ID_0);
2125 }
2126 {
2127 newLeafNode(this_QUOTED_ID_0, grammarAccess.getQualifiedNameAccess().getQUOTED_IDTerminalRuleCall_0());
2128 }
2129 |
2130 (
2131 {
2132 newCompositeNode(grammarAccess.getQualifiedNameAccess().getIdentifierParserRuleCall_1_0());
2133 }
2134 this_Identifier_1=ruleIdentifier
2135 {
2136 $current.merge(this_Identifier_1);
2137 }
2138 {
2139 afterParserOrEnumRuleCall();
2140 }
2141 (
2142 kw='::'
2143 {
2144 $current.merge(kw);
2145 newLeafNode(kw, grammarAccess.getQualifiedNameAccess().getColonColonKeyword_1_1_0());
2146 }
2147 {
2148 newCompositeNode(grammarAccess.getQualifiedNameAccess().getIdentifierParserRuleCall_1_1_1());
2149 }
2150 this_Identifier_3=ruleIdentifier
2151 {
2152 $current.merge(this_Identifier_3);
2153 }
2154 {
2155 afterParserOrEnumRuleCall();
2156 }
2157 )*
2158 )
2159 )
2160;
2161finally {
2162 myHiddenTokenState.restore();
2163}
2164
2165// Entry rule entryRuleIdentifier
2166entryRuleIdentifier returns [String current=null]:
2167 { newCompositeNode(grammarAccess.getIdentifierRule()); }
2168 iv_ruleIdentifier=ruleIdentifier
2169 { $current=$iv_ruleIdentifier.current.getText(); }
2170 EOF;
2171
2172// Rule Identifier
2173ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
2174@init {
2175 enterRule();
2176}
2177@after {
2178 leaveRule();
2179}:
2180 (
2181 this_ID_0=RULE_ID
2182 {
2183 $current.merge(this_ID_0);
2184 }
2185 {
2186 newLeafNode(this_ID_0, grammarAccess.getIdentifierAccess().getIDTerminalRuleCall_0());
2187 }
2188 |
2189 kw='true'
2190 {
2191 $current.merge(kw);
2192 newLeafNode(kw, grammarAccess.getIdentifierAccess().getTrueKeyword_1());
2193 }
2194 |
2195 kw='false'
2196 {
2197 $current.merge(kw);
2198 newLeafNode(kw, grammarAccess.getIdentifierAccess().getFalseKeyword_2());
2199 }
2200 )
2201;
2202
2203// Entry rule entryRuleInteger
2204entryRuleInteger returns [String current=null]@init {
2205 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
2206}:
2207 { newCompositeNode(grammarAccess.getIntegerRule()); }
2208 iv_ruleInteger=ruleInteger
2209 { $current=$iv_ruleInteger.current.getText(); }
2210 EOF;
2211finally {
2212 myHiddenTokenState.restore();
2213}
2214
2215// Rule Integer
2216ruleInteger returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
2217@init {
2218 enterRule();
2219 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
2220}
2221@after {
2222 leaveRule();
2223}:
2224 (
2225 (
2226 kw='-'
2227 {
2228 $current.merge(kw);
2229 newLeafNode(kw, grammarAccess.getIntegerAccess().getHyphenMinusKeyword_0());
2230 }
2231 )?
2232 this_INT_1=RULE_INT
2233 {
2234 $current.merge(this_INT_1);
2235 }
2236 {
2237 newLeafNode(this_INT_1, grammarAccess.getIntegerAccess().getINTTerminalRuleCall_1());
2238 }
2239 )
2240;
2241finally {
2242 myHiddenTokenState.restore();
2243}
2244
2245// Entry rule entryRuleReal
2246entryRuleReal returns [String current=null]:
2247 { newCompositeNode(grammarAccess.getRealRule()); }
2248 iv_ruleReal=ruleReal
2249 { $current=$iv_ruleReal.current.getText(); }
2250 EOF;
2251
2252// Rule Real
2253ruleReal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
2254@init {
2255 enterRule();
2256}
2257@after {
2258 leaveRule();
2259}:
2260 (
2261 (
2262 kw='-'
2263 {
2264 $current.merge(kw);
2265 newLeafNode(kw, grammarAccess.getRealAccess().getHyphenMinusKeyword_0());
2266 }
2267 )?
2268 (
2269 this_EXPONENTIAL_1=RULE_EXPONENTIAL
2270 {
2271 $current.merge(this_EXPONENTIAL_1);
2272 }
2273 {
2274 newLeafNode(this_EXPONENTIAL_1, grammarAccess.getRealAccess().getEXPONENTIALTerminalRuleCall_1_0());
2275 }
2276 |
2277 (
2278 this_INT_2=RULE_INT
2279 {
2280 $current.merge(this_INT_2);
2281 }
2282 {
2283 newLeafNode(this_INT_2, grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1_0());
2284 }
2285 kw='.'
2286 {
2287 $current.merge(kw);
2288 newLeafNode(kw, grammarAccess.getRealAccess().getFullStopKeyword_1_1_1());
2289 }
2290 (
2291 this_INT_4=RULE_INT
2292 {
2293 $current.merge(this_INT_4);
2294 }
2295 {
2296 newLeafNode(this_INT_4, grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1_2_0());
2297 }
2298 |
2299 this_EXPONENTIAL_5=RULE_EXPONENTIAL
2300 {
2301 $current.merge(this_EXPONENTIAL_5);
2302 }
2303 {
2304 newLeafNode(this_EXPONENTIAL_5, grammarAccess.getRealAccess().getEXPONENTIALTerminalRuleCall_1_1_2_1());
2305 }
2306 )
2307 )
2308 )
2309 )
2310;
2311
2312// Rule LogicValue
2313ruleLogicValue returns [Enumerator current=null]
2314@init {
2315 enterRule();
2316}
2317@after {
2318 leaveRule();
2319}:
2320 (
2321 (
2322 enumLiteral_0='true'
2323 {
2324 $current = grammarAccess.getLogicValueAccess().getTRUEEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
2325 newLeafNode(enumLiteral_0, grammarAccess.getLogicValueAccess().getTRUEEnumLiteralDeclaration_0());
2326 }
2327 )
2328 |
2329 (
2330 enumLiteral_1='false'
2331 {
2332 $current = grammarAccess.getLogicValueAccess().getFALSEEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
2333 newLeafNode(enumLiteral_1, grammarAccess.getLogicValueAccess().getFALSEEnumLiteralDeclaration_1());
2334 }
2335 )
2336 |
2337 (
2338 enumLiteral_2='unknown'
2339 {
2340 $current = grammarAccess.getLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
2341 newLeafNode(enumLiteral_2, grammarAccess.getLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_2());
2342 }
2343 )
2344 )
2345;
2346
2347// Rule ShortLogicValue
2348ruleShortLogicValue returns [Enumerator current=null]
2349@init {
2350 enterRule();
2351}
2352@after {
2353 leaveRule();
2354}:
2355 (
2356 (
2357 enumLiteral_0='!'
2358 {
2359 $current = grammarAccess.getShortLogicValueAccess().getFALSEEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
2360 newLeafNode(enumLiteral_0, grammarAccess.getShortLogicValueAccess().getFALSEEnumLiteralDeclaration_0());
2361 }
2362 )
2363 |
2364 (
2365 enumLiteral_1='?'
2366 {
2367 $current = grammarAccess.getShortLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
2368 newLeafNode(enumLiteral_1, grammarAccess.getShortLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_1());
2369 }
2370 )
2371 )
2372;
2373
2374RULE_ID : ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
2375
2376RULE_EXPONENTIAL : RULE_INT ('e'|'E') ('+'|'-')? RULE_INT;
2377
2378RULE_STRING : '"' ('\\' .|~(('\\'|'"')))* '"';
2379
2380RULE_QUOTED_ID : '\'' ('\\' .|~(('\\'|'\'')))* '\'';
2381
2382RULE_SL_COMMENT : ('%'|'//') ~(('\n'|'\r'))* ('\r'? '\n')?;
2383
2384RULE_INT : ('0'..'9')+;
2385
2386RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/';
2387
2388RULE_WS : (' '|'\t'|'\r'|'\n')+;
2389
2390RULE_ANY_OTHER : .;
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.tokens b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.tokens
deleted file mode 100644
index 7ceb60d6..00000000
--- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.tokens
+++ /dev/null
@@ -1,77 +0,0 @@
1'!'=33
2'('=30
3')'=31
4'*'=40
5'+'=34
6'+='=37
7','=18
8'-'=44
9'.'=14
10'..'=39
11':'=35
12':-'=32
13'::'=41
14';'=20
15'='=38
16'?'=46
17'['=25
18']'=26
19'abstract'=15
20'class'=16
21'contains'=23
22'enum'=22
23'error'=28
24'extends'=17
25'false'=43
26'opposite'=27
27'pred'=29
28'problem'=13
29'refers'=24
30'scope'=36
31'true'=42
32'unknown'=45
33'{'=19
34'}'=21
35RULE_ANY_OTHER=12
36RULE_EXPONENTIAL=8
37RULE_ID=5
38RULE_INT=6
39RULE_ML_COMMENT=10
40RULE_QUOTED_ID=7
41RULE_SL_COMMENT=9
42RULE_STRING=4
43RULE_WS=11
44T__13=13
45T__14=14
46T__15=15
47T__16=16
48T__17=17
49T__18=18
50T__19=19
51T__20=20
52T__21=21
53T__22=22
54T__23=23
55T__24=24
56T__25=25
57T__26=26
58T__27=27
59T__28=28
60T__29=29
61T__30=30
62T__31=31
63T__32=32
64T__33=33
65T__34=34
66T__35=35
67T__36=36
68T__37=37
69T__38=38
70T__39=39
71T__40=40
72T__41=41
73T__42=42
74T__43=43
75T__44=44
76T__45=45
77T__46=46
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblemLexer.java b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblemLexer.java
deleted file mode 100644
index cc9b39b6..00000000
--- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblemLexer.java
+++ /dev/null
@@ -1,1940 +0,0 @@
1package org.eclipse.viatra.solver.language.parser.antlr.internal;
2
3// Hack: Use our own Lexer superclass by means of import.
4// Currently there is no other way to specify the superclass for the lexer.
5import org.eclipse.xtext.parser.antlr.Lexer;
6
7
8import org.antlr.runtime.*;
9import java.util.Stack;
10import java.util.List;
11import java.util.ArrayList;
12
13@SuppressWarnings("all")
14public class InternalProblemLexer extends Lexer {
15 public static final int T__19=19;
16 public static final int T__15=15;
17 public static final int T__16=16;
18 public static final int T__17=17;
19 public static final int T__18=18;
20 public static final int T__13=13;
21 public static final int T__14=14;
22 public static final int RULE_EXPONENTIAL=8;
23 public static final int RULE_ID=5;
24 public static final int RULE_QUOTED_ID=7;
25 public static final int T__26=26;
26 public static final int T__27=27;
27 public static final int T__28=28;
28 public static final int RULE_INT=6;
29 public static final int T__29=29;
30 public static final int T__22=22;
31 public static final int RULE_ML_COMMENT=10;
32 public static final int T__23=23;
33 public static final int T__24=24;
34 public static final int T__25=25;
35 public static final int T__20=20;
36 public static final int T__21=21;
37 public static final int RULE_STRING=4;
38 public static final int RULE_SL_COMMENT=9;
39 public static final int T__37=37;
40 public static final int T__38=38;
41 public static final int T__39=39;
42 public static final int T__33=33;
43 public static final int T__34=34;
44 public static final int T__35=35;
45 public static final int T__36=36;
46 public static final int EOF=-1;
47 public static final int T__30=30;
48 public static final int T__31=31;
49 public static final int T__32=32;
50 public static final int RULE_WS=11;
51 public static final int RULE_ANY_OTHER=12;
52 public static final int T__44=44;
53 public static final int T__45=45;
54 public static final int T__46=46;
55 public static final int T__40=40;
56 public static final int T__41=41;
57 public static final int T__42=42;
58 public static final int T__43=43;
59
60 // delegates
61 // delegators
62
63 public InternalProblemLexer() {;}
64 public InternalProblemLexer(CharStream input) {
65 this(input, new RecognizerSharedState());
66 }
67 public InternalProblemLexer(CharStream input, RecognizerSharedState state) {
68 super(input,state);
69
70 }
71 public String getGrammarFileName() { return "InternalProblem.g"; }
72
73 // $ANTLR start "T__13"
74 public final void mT__13() throws RecognitionException {
75 try {
76 int _type = T__13;
77 int _channel = DEFAULT_TOKEN_CHANNEL;
78 // InternalProblem.g:11:7: ( 'problem' )
79 // InternalProblem.g:11:9: 'problem'
80 {
81 match("problem");
82
83
84 }
85
86 state.type = _type;
87 state.channel = _channel;
88 }
89 finally {
90 }
91 }
92 // $ANTLR end "T__13"
93
94 // $ANTLR start "T__14"
95 public final void mT__14() throws RecognitionException {
96 try {
97 int _type = T__14;
98 int _channel = DEFAULT_TOKEN_CHANNEL;
99 // InternalProblem.g:12:7: ( '.' )
100 // InternalProblem.g:12:9: '.'
101 {
102 match('.');
103
104 }
105
106 state.type = _type;
107 state.channel = _channel;
108 }
109 finally {
110 }
111 }
112 // $ANTLR end "T__14"
113
114 // $ANTLR start "T__15"
115 public final void mT__15() throws RecognitionException {
116 try {
117 int _type = T__15;
118 int _channel = DEFAULT_TOKEN_CHANNEL;
119 // InternalProblem.g:13:7: ( 'abstract' )
120 // InternalProblem.g:13:9: 'abstract'
121 {
122 match("abstract");
123
124
125 }
126
127 state.type = _type;
128 state.channel = _channel;
129 }
130 finally {
131 }
132 }
133 // $ANTLR end "T__15"
134
135 // $ANTLR start "T__16"
136 public final void mT__16() throws RecognitionException {
137 try {
138 int _type = T__16;
139 int _channel = DEFAULT_TOKEN_CHANNEL;
140 // InternalProblem.g:14:7: ( 'class' )
141 // InternalProblem.g:14:9: 'class'
142 {
143 match("class");
144
145
146 }
147
148 state.type = _type;
149 state.channel = _channel;
150 }
151 finally {
152 }
153 }
154 // $ANTLR end "T__16"
155
156 // $ANTLR start "T__17"
157 public final void mT__17() throws RecognitionException {
158 try {
159 int _type = T__17;
160 int _channel = DEFAULT_TOKEN_CHANNEL;
161 // InternalProblem.g:15:7: ( 'extends' )
162 // InternalProblem.g:15:9: 'extends'
163 {
164 match("extends");
165
166
167 }
168
169 state.type = _type;
170 state.channel = _channel;
171 }
172 finally {
173 }
174 }
175 // $ANTLR end "T__17"
176
177 // $ANTLR start "T__18"
178 public final void mT__18() throws RecognitionException {
179 try {
180 int _type = T__18;
181 int _channel = DEFAULT_TOKEN_CHANNEL;
182 // InternalProblem.g:16:7: ( ',' )
183 // InternalProblem.g:16:9: ','
184 {
185 match(',');
186
187 }
188
189 state.type = _type;
190 state.channel = _channel;
191 }
192 finally {
193 }
194 }
195 // $ANTLR end "T__18"
196
197 // $ANTLR start "T__19"
198 public final void mT__19() throws RecognitionException {
199 try {
200 int _type = T__19;
201 int _channel = DEFAULT_TOKEN_CHANNEL;
202 // InternalProblem.g:17:7: ( '{' )
203 // InternalProblem.g:17:9: '{'
204 {
205 match('{');
206
207 }
208
209 state.type = _type;
210 state.channel = _channel;
211 }
212 finally {
213 }
214 }
215 // $ANTLR end "T__19"
216
217 // $ANTLR start "T__20"
218 public final void mT__20() throws RecognitionException {
219 try {
220 int _type = T__20;
221 int _channel = DEFAULT_TOKEN_CHANNEL;
222 // InternalProblem.g:18:7: ( ';' )
223 // InternalProblem.g:18:9: ';'
224 {
225 match(';');
226
227 }
228
229 state.type = _type;
230 state.channel = _channel;
231 }
232 finally {
233 }
234 }
235 // $ANTLR end "T__20"
236
237 // $ANTLR start "T__21"
238 public final void mT__21() throws RecognitionException {
239 try {
240 int _type = T__21;
241 int _channel = DEFAULT_TOKEN_CHANNEL;
242 // InternalProblem.g:19:7: ( '}' )
243 // InternalProblem.g:19:9: '}'
244 {
245 match('}');
246
247 }
248
249 state.type = _type;
250 state.channel = _channel;
251 }
252 finally {
253 }
254 }
255 // $ANTLR end "T__21"
256
257 // $ANTLR start "T__22"
258 public final void mT__22() throws RecognitionException {
259 try {
260 int _type = T__22;
261 int _channel = DEFAULT_TOKEN_CHANNEL;
262 // InternalProblem.g:20:7: ( 'enum' )
263 // InternalProblem.g:20:9: 'enum'
264 {
265 match("enum");
266
267
268 }
269
270 state.type = _type;
271 state.channel = _channel;
272 }
273 finally {
274 }
275 }
276 // $ANTLR end "T__22"
277
278 // $ANTLR start "T__23"
279 public final void mT__23() throws RecognitionException {
280 try {
281 int _type = T__23;
282 int _channel = DEFAULT_TOKEN_CHANNEL;
283 // InternalProblem.g:21:7: ( 'contains' )
284 // InternalProblem.g:21:9: 'contains'
285 {
286 match("contains");
287
288
289 }
290
291 state.type = _type;
292 state.channel = _channel;
293 }
294 finally {
295 }
296 }
297 // $ANTLR end "T__23"
298
299 // $ANTLR start "T__24"
300 public final void mT__24() throws RecognitionException {
301 try {
302 int _type = T__24;
303 int _channel = DEFAULT_TOKEN_CHANNEL;
304 // InternalProblem.g:22:7: ( 'refers' )
305 // InternalProblem.g:22:9: 'refers'
306 {
307 match("refers");
308
309
310 }
311
312 state.type = _type;
313 state.channel = _channel;
314 }
315 finally {
316 }
317 }
318 // $ANTLR end "T__24"
319
320 // $ANTLR start "T__25"
321 public final void mT__25() throws RecognitionException {
322 try {
323 int _type = T__25;
324 int _channel = DEFAULT_TOKEN_CHANNEL;
325 // InternalProblem.g:23:7: ( '[' )
326 // InternalProblem.g:23:9: '['
327 {
328 match('[');
329
330 }
331
332 state.type = _type;
333 state.channel = _channel;
334 }
335 finally {
336 }
337 }
338 // $ANTLR end "T__25"
339
340 // $ANTLR start "T__26"
341 public final void mT__26() throws RecognitionException {
342 try {
343 int _type = T__26;
344 int _channel = DEFAULT_TOKEN_CHANNEL;
345 // InternalProblem.g:24:7: ( ']' )
346 // InternalProblem.g:24:9: ']'
347 {
348 match(']');
349
350 }
351
352 state.type = _type;
353 state.channel = _channel;
354 }
355 finally {
356 }
357 }
358 // $ANTLR end "T__26"
359
360 // $ANTLR start "T__27"
361 public final void mT__27() throws RecognitionException {
362 try {
363 int _type = T__27;
364 int _channel = DEFAULT_TOKEN_CHANNEL;
365 // InternalProblem.g:25:7: ( 'opposite' )
366 // InternalProblem.g:25:9: 'opposite'
367 {
368 match("opposite");
369
370
371 }
372
373 state.type = _type;
374 state.channel = _channel;
375 }
376 finally {
377 }
378 }
379 // $ANTLR end "T__27"
380
381 // $ANTLR start "T__28"
382 public final void mT__28() throws RecognitionException {
383 try {
384 int _type = T__28;
385 int _channel = DEFAULT_TOKEN_CHANNEL;
386 // InternalProblem.g:26:7: ( 'error' )
387 // InternalProblem.g:26:9: 'error'
388 {
389 match("error");
390
391
392 }
393
394 state.type = _type;
395 state.channel = _channel;
396 }
397 finally {
398 }
399 }
400 // $ANTLR end "T__28"
401
402 // $ANTLR start "T__29"
403 public final void mT__29() throws RecognitionException {
404 try {
405 int _type = T__29;
406 int _channel = DEFAULT_TOKEN_CHANNEL;
407 // InternalProblem.g:27:7: ( 'pred' )
408 // InternalProblem.g:27:9: 'pred'
409 {
410 match("pred");
411
412
413 }
414
415 state.type = _type;
416 state.channel = _channel;
417 }
418 finally {
419 }
420 }
421 // $ANTLR end "T__29"
422
423 // $ANTLR start "T__30"
424 public final void mT__30() throws RecognitionException {
425 try {
426 int _type = T__30;
427 int _channel = DEFAULT_TOKEN_CHANNEL;
428 // InternalProblem.g:28:7: ( '(' )
429 // InternalProblem.g:28:9: '('
430 {
431 match('(');
432
433 }
434
435 state.type = _type;
436 state.channel = _channel;
437 }
438 finally {
439 }
440 }
441 // $ANTLR end "T__30"
442
443 // $ANTLR start "T__31"
444 public final void mT__31() throws RecognitionException {
445 try {
446 int _type = T__31;
447 int _channel = DEFAULT_TOKEN_CHANNEL;
448 // InternalProblem.g:29:7: ( ')' )
449 // InternalProblem.g:29:9: ')'
450 {
451 match(')');
452
453 }
454
455 state.type = _type;
456 state.channel = _channel;
457 }
458 finally {
459 }
460 }
461 // $ANTLR end "T__31"
462
463 // $ANTLR start "T__32"
464 public final void mT__32() throws RecognitionException {
465 try {
466 int _type = T__32;
467 int _channel = DEFAULT_TOKEN_CHANNEL;
468 // InternalProblem.g:30:7: ( ':-' )
469 // InternalProblem.g:30:9: ':-'
470 {
471 match(":-");
472
473
474 }
475
476 state.type = _type;
477 state.channel = _channel;
478 }
479 finally {
480 }
481 }
482 // $ANTLR end "T__32"
483
484 // $ANTLR start "T__33"
485 public final void mT__33() throws RecognitionException {
486 try {
487 int _type = T__33;
488 int _channel = DEFAULT_TOKEN_CHANNEL;
489 // InternalProblem.g:31:7: ( '!' )
490 // InternalProblem.g:31:9: '!'
491 {
492 match('!');
493
494 }
495
496 state.type = _type;
497 state.channel = _channel;
498 }
499 finally {
500 }
501 }
502 // $ANTLR end "T__33"
503
504 // $ANTLR start "T__34"
505 public final void mT__34() throws RecognitionException {
506 try {
507 int _type = T__34;
508 int _channel = DEFAULT_TOKEN_CHANNEL;
509 // InternalProblem.g:32:7: ( '+' )
510 // InternalProblem.g:32:9: '+'
511 {
512 match('+');
513
514 }
515
516 state.type = _type;
517 state.channel = _channel;
518 }
519 finally {
520 }
521 }
522 // $ANTLR end "T__34"
523
524 // $ANTLR start "T__35"
525 public final void mT__35() throws RecognitionException {
526 try {
527 int _type = T__35;
528 int _channel = DEFAULT_TOKEN_CHANNEL;
529 // InternalProblem.g:33:7: ( ':' )
530 // InternalProblem.g:33:9: ':'
531 {
532 match(':');
533
534 }
535
536 state.type = _type;
537 state.channel = _channel;
538 }
539 finally {
540 }
541 }
542 // $ANTLR end "T__35"
543
544 // $ANTLR start "T__36"
545 public final void mT__36() throws RecognitionException {
546 try {
547 int _type = T__36;
548 int _channel = DEFAULT_TOKEN_CHANNEL;
549 // InternalProblem.g:34:7: ( 'scope' )
550 // InternalProblem.g:34:9: 'scope'
551 {
552 match("scope");
553
554
555 }
556
557 state.type = _type;
558 state.channel = _channel;
559 }
560 finally {
561 }
562 }
563 // $ANTLR end "T__36"
564
565 // $ANTLR start "T__37"
566 public final void mT__37() throws RecognitionException {
567 try {
568 int _type = T__37;
569 int _channel = DEFAULT_TOKEN_CHANNEL;
570 // InternalProblem.g:35:7: ( '+=' )
571 // InternalProblem.g:35:9: '+='
572 {
573 match("+=");
574
575
576 }
577
578 state.type = _type;
579 state.channel = _channel;
580 }
581 finally {
582 }
583 }
584 // $ANTLR end "T__37"
585
586 // $ANTLR start "T__38"
587 public final void mT__38() throws RecognitionException {
588 try {
589 int _type = T__38;
590 int _channel = DEFAULT_TOKEN_CHANNEL;
591 // InternalProblem.g:36:7: ( '=' )
592 // InternalProblem.g:36:9: '='
593 {
594 match('=');
595
596 }
597
598 state.type = _type;
599 state.channel = _channel;
600 }
601 finally {
602 }
603 }
604 // $ANTLR end "T__38"
605
606 // $ANTLR start "T__39"
607 public final void mT__39() throws RecognitionException {
608 try {
609 int _type = T__39;
610 int _channel = DEFAULT_TOKEN_CHANNEL;
611 // InternalProblem.g:37:7: ( '..' )
612 // InternalProblem.g:37:9: '..'
613 {
614 match("..");
615
616
617 }
618
619 state.type = _type;
620 state.channel = _channel;
621 }
622 finally {
623 }
624 }
625 // $ANTLR end "T__39"
626
627 // $ANTLR start "T__40"
628 public final void mT__40() throws RecognitionException {
629 try {
630 int _type = T__40;
631 int _channel = DEFAULT_TOKEN_CHANNEL;
632 // InternalProblem.g:38:7: ( '*' )
633 // InternalProblem.g:38:9: '*'
634 {
635 match('*');
636
637 }
638
639 state.type = _type;
640 state.channel = _channel;
641 }
642 finally {
643 }
644 }
645 // $ANTLR end "T__40"
646
647 // $ANTLR start "T__41"
648 public final void mT__41() throws RecognitionException {
649 try {
650 int _type = T__41;
651 int _channel = DEFAULT_TOKEN_CHANNEL;
652 // InternalProblem.g:39:7: ( '::' )
653 // InternalProblem.g:39:9: '::'
654 {
655 match("::");
656
657
658 }
659
660 state.type = _type;
661 state.channel = _channel;
662 }
663 finally {
664 }
665 }
666 // $ANTLR end "T__41"
667
668 // $ANTLR start "T__42"
669 public final void mT__42() throws RecognitionException {
670 try {
671 int _type = T__42;
672 int _channel = DEFAULT_TOKEN_CHANNEL;
673 // InternalProblem.g:40:7: ( 'true' )
674 // InternalProblem.g:40:9: 'true'
675 {
676 match("true");
677
678
679 }
680
681 state.type = _type;
682 state.channel = _channel;
683 }
684 finally {
685 }
686 }
687 // $ANTLR end "T__42"
688
689 // $ANTLR start "T__43"
690 public final void mT__43() throws RecognitionException {
691 try {
692 int _type = T__43;
693 int _channel = DEFAULT_TOKEN_CHANNEL;
694 // InternalProblem.g:41:7: ( 'false' )
695 // InternalProblem.g:41:9: 'false'
696 {
697 match("false");
698
699
700 }
701
702 state.type = _type;
703 state.channel = _channel;
704 }
705 finally {
706 }
707 }
708 // $ANTLR end "T__43"
709
710 // $ANTLR start "T__44"
711 public final void mT__44() throws RecognitionException {
712 try {
713 int _type = T__44;
714 int _channel = DEFAULT_TOKEN_CHANNEL;
715 // InternalProblem.g:42:7: ( '-' )
716 // InternalProblem.g:42:9: '-'
717 {
718 match('-');
719
720 }
721
722 state.type = _type;
723 state.channel = _channel;
724 }
725 finally {
726 }
727 }
728 // $ANTLR end "T__44"
729
730 // $ANTLR start "T__45"
731 public final void mT__45() throws RecognitionException {
732 try {
733 int _type = T__45;
734 int _channel = DEFAULT_TOKEN_CHANNEL;
735 // InternalProblem.g:43:7: ( 'unknown' )
736 // InternalProblem.g:43:9: 'unknown'
737 {
738 match("unknown");
739
740
741 }
742
743 state.type = _type;
744 state.channel = _channel;
745 }
746 finally {
747 }
748 }
749 // $ANTLR end "T__45"
750
751 // $ANTLR start "T__46"
752 public final void mT__46() throws RecognitionException {
753 try {
754 int _type = T__46;
755 int _channel = DEFAULT_TOKEN_CHANNEL;
756 // InternalProblem.g:44:7: ( '?' )
757 // InternalProblem.g:44:9: '?'
758 {
759 match('?');
760
761 }
762
763 state.type = _type;
764 state.channel = _channel;
765 }
766 finally {
767 }
768 }
769 // $ANTLR end "T__46"
770
771 // $ANTLR start "RULE_ID"
772 public final void mRULE_ID() throws RecognitionException {
773 try {
774 int _type = RULE_ID;
775 int _channel = DEFAULT_TOKEN_CHANNEL;
776 // InternalProblem.g:2374:9: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
777 // InternalProblem.g:2374:11: ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
778 {
779 if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
780 input.consume();
781
782 }
783 else {
784 MismatchedSetException mse = new MismatchedSetException(null,input);
785 recover(mse);
786 throw mse;}
787
788 // InternalProblem.g:2374:35: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
789 loop1:
790 do {
791 int alt1=2;
792 int LA1_0 = input.LA(1);
793
794 if ( ((LA1_0>='0' && LA1_0<='9')||(LA1_0>='A' && LA1_0<='Z')||LA1_0=='_'||(LA1_0>='a' && LA1_0<='z')) ) {
795 alt1=1;
796 }
797
798
799 switch (alt1) {
800 case 1 :
801 // InternalProblem.g:
802 {
803 if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
804 input.consume();
805
806 }
807 else {
808 MismatchedSetException mse = new MismatchedSetException(null,input);
809 recover(mse);
810 throw mse;}
811
812
813 }
814 break;
815
816 default :
817 break loop1;
818 }
819 } while (true);
820
821
822 }
823
824 state.type = _type;
825 state.channel = _channel;
826 }
827 finally {
828 }
829 }
830 // $ANTLR end "RULE_ID"
831
832 // $ANTLR start "RULE_EXPONENTIAL"
833 public final void mRULE_EXPONENTIAL() throws RecognitionException {
834 try {
835 int _type = RULE_EXPONENTIAL;
836 int _channel = DEFAULT_TOKEN_CHANNEL;
837 // InternalProblem.g:2376:18: ( RULE_INT ( 'e' | 'E' ) ( '+' | '-' )? RULE_INT )
838 // InternalProblem.g:2376:20: RULE_INT ( 'e' | 'E' ) ( '+' | '-' )? RULE_INT
839 {
840 mRULE_INT();
841 if ( input.LA(1)=='E'||input.LA(1)=='e' ) {
842 input.consume();
843
844 }
845 else {
846 MismatchedSetException mse = new MismatchedSetException(null,input);
847 recover(mse);
848 throw mse;}
849
850 // InternalProblem.g:2376:39: ( '+' | '-' )?
851 int alt2=2;
852 int LA2_0 = input.LA(1);
853
854 if ( (LA2_0=='+'||LA2_0=='-') ) {
855 alt2=1;
856 }
857 switch (alt2) {
858 case 1 :
859 // InternalProblem.g:
860 {
861 if ( input.LA(1)=='+'||input.LA(1)=='-' ) {
862 input.consume();
863
864 }
865 else {
866 MismatchedSetException mse = new MismatchedSetException(null,input);
867 recover(mse);
868 throw mse;}
869
870
871 }
872 break;
873
874 }
875
876 mRULE_INT();
877
878 }
879
880 state.type = _type;
881 state.channel = _channel;
882 }
883 finally {
884 }
885 }
886 // $ANTLR end "RULE_EXPONENTIAL"
887
888 // $ANTLR start "RULE_STRING"
889 public final void mRULE_STRING() throws RecognitionException {
890 try {
891 int _type = RULE_STRING;
892 int _channel = DEFAULT_TOKEN_CHANNEL;
893 // InternalProblem.g:2378:13: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
894 // InternalProblem.g:2378:15: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
895 {
896 match('\"');
897 // InternalProblem.g:2378:19: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )*
898 loop3:
899 do {
900 int alt3=3;
901 int LA3_0 = input.LA(1);
902
903 if ( (LA3_0=='\\') ) {
904 alt3=1;
905 }
906 else if ( ((LA3_0>='\u0000' && LA3_0<='!')||(LA3_0>='#' && LA3_0<='[')||(LA3_0>=']' && LA3_0<='\uFFFF')) ) {
907 alt3=2;
908 }
909
910
911 switch (alt3) {
912 case 1 :
913 // InternalProblem.g:2378:20: '\\\\' .
914 {
915 match('\\');
916 matchAny();
917
918 }
919 break;
920 case 2 :
921 // InternalProblem.g:2378:27: ~ ( ( '\\\\' | '\"' ) )
922 {
923 if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
924 input.consume();
925
926 }
927 else {
928 MismatchedSetException mse = new MismatchedSetException(null,input);
929 recover(mse);
930 throw mse;}
931
932
933 }
934 break;
935
936 default :
937 break loop3;
938 }
939 } while (true);
940
941 match('\"');
942
943 }
944
945 state.type = _type;
946 state.channel = _channel;
947 }
948 finally {
949 }
950 }
951 // $ANTLR end "RULE_STRING"
952
953 // $ANTLR start "RULE_QUOTED_ID"
954 public final void mRULE_QUOTED_ID() throws RecognitionException {
955 try {
956 int _type = RULE_QUOTED_ID;
957 int _channel = DEFAULT_TOKEN_CHANNEL;
958 // InternalProblem.g:2380:16: ( '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
959 // InternalProblem.g:2380:18: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
960 {
961 match('\'');
962 // InternalProblem.g:2380:23: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )*
963 loop4:
964 do {
965 int alt4=3;
966 int LA4_0 = input.LA(1);
967
968 if ( (LA4_0=='\\') ) {
969 alt4=1;
970 }
971 else if ( ((LA4_0>='\u0000' && LA4_0<='&')||(LA4_0>='(' && LA4_0<='[')||(LA4_0>=']' && LA4_0<='\uFFFF')) ) {
972 alt4=2;
973 }
974
975
976 switch (alt4) {
977 case 1 :
978 // InternalProblem.g:2380:24: '\\\\' .
979 {
980 match('\\');
981 matchAny();
982
983 }
984 break;
985 case 2 :
986 // InternalProblem.g:2380:31: ~ ( ( '\\\\' | '\\'' ) )
987 {
988 if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
989 input.consume();
990
991 }
992 else {
993 MismatchedSetException mse = new MismatchedSetException(null,input);
994 recover(mse);
995 throw mse;}
996
997
998 }
999 break;
1000
1001 default :
1002 break loop4;
1003 }
1004 } while (true);
1005
1006 match('\'');
1007
1008 }
1009
1010 state.type = _type;
1011 state.channel = _channel;
1012 }
1013 finally {
1014 }
1015 }
1016 // $ANTLR end "RULE_QUOTED_ID"
1017
1018 // $ANTLR start "RULE_SL_COMMENT"
1019 public final void mRULE_SL_COMMENT() throws RecognitionException {
1020 try {
1021 int _type = RULE_SL_COMMENT;
1022 int _channel = DEFAULT_TOKEN_CHANNEL;
1023 // InternalProblem.g:2382:17: ( ( '%' | '//' ) (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
1024 // InternalProblem.g:2382:19: ( '%' | '//' ) (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
1025 {
1026 // InternalProblem.g:2382:19: ( '%' | '//' )
1027 int alt5=2;
1028 int LA5_0 = input.LA(1);
1029
1030 if ( (LA5_0=='%') ) {
1031 alt5=1;
1032 }
1033 else if ( (LA5_0=='/') ) {
1034 alt5=2;
1035 }
1036 else {
1037 NoViableAltException nvae =
1038 new NoViableAltException("", 5, 0, input);
1039
1040 throw nvae;
1041 }
1042 switch (alt5) {
1043 case 1 :
1044 // InternalProblem.g:2382:20: '%'
1045 {
1046 match('%');
1047
1048 }
1049 break;
1050 case 2 :
1051 // InternalProblem.g:2382:24: '//'
1052 {
1053 match("//");
1054
1055
1056 }
1057 break;
1058
1059 }
1060
1061 // InternalProblem.g:2382:30: (~ ( ( '\\n' | '\\r' ) ) )*
1062 loop6:
1063 do {
1064 int alt6=2;
1065 int LA6_0 = input.LA(1);
1066
1067 if ( ((LA6_0>='\u0000' && LA6_0<='\t')||(LA6_0>='\u000B' && LA6_0<='\f')||(LA6_0>='\u000E' && LA6_0<='\uFFFF')) ) {
1068 alt6=1;
1069 }
1070
1071
1072 switch (alt6) {
1073 case 1 :
1074 // InternalProblem.g:2382:30: ~ ( ( '\\n' | '\\r' ) )
1075 {
1076 if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
1077 input.consume();
1078
1079 }
1080 else {
1081 MismatchedSetException mse = new MismatchedSetException(null,input);
1082 recover(mse);
1083 throw mse;}
1084
1085
1086 }
1087 break;
1088
1089 default :
1090 break loop6;
1091 }
1092 } while (true);
1093
1094 // InternalProblem.g:2382:46: ( ( '\\r' )? '\\n' )?
1095 int alt8=2;
1096 int LA8_0 = input.LA(1);
1097
1098 if ( (LA8_0=='\n'||LA8_0=='\r') ) {
1099 alt8=1;
1100 }
1101 switch (alt8) {
1102 case 1 :
1103 // InternalProblem.g:2382:47: ( '\\r' )? '\\n'
1104 {
1105 // InternalProblem.g:2382:47: ( '\\r' )?
1106 int alt7=2;
1107 int LA7_0 = input.LA(1);
1108
1109 if ( (LA7_0=='\r') ) {
1110 alt7=1;
1111 }
1112 switch (alt7) {
1113 case 1 :
1114 // InternalProblem.g:2382:47: '\\r'
1115 {
1116 match('\r');
1117
1118 }
1119 break;
1120
1121 }
1122
1123 match('\n');
1124
1125 }
1126 break;
1127
1128 }
1129
1130
1131 }
1132
1133 state.type = _type;
1134 state.channel = _channel;
1135 }
1136 finally {
1137 }
1138 }
1139 // $ANTLR end "RULE_SL_COMMENT"
1140
1141 // $ANTLR start "RULE_INT"
1142 public final void mRULE_INT() throws RecognitionException {
1143 try {
1144 int _type = RULE_INT;
1145 int _channel = DEFAULT_TOKEN_CHANNEL;
1146 // InternalProblem.g:2384:10: ( ( '0' .. '9' )+ )
1147 // InternalProblem.g:2384:12: ( '0' .. '9' )+
1148 {
1149 // InternalProblem.g:2384:12: ( '0' .. '9' )+
1150 int cnt9=0;
1151 loop9:
1152 do {
1153 int alt9=2;
1154 int LA9_0 = input.LA(1);
1155
1156 if ( ((LA9_0>='0' && LA9_0<='9')) ) {
1157 alt9=1;
1158 }
1159
1160
1161 switch (alt9) {
1162 case 1 :
1163 // InternalProblem.g:2384:13: '0' .. '9'
1164 {
1165 matchRange('0','9');
1166
1167 }
1168 break;
1169
1170 default :
1171 if ( cnt9 >= 1 ) break loop9;
1172 EarlyExitException eee =
1173 new EarlyExitException(9, input);
1174 throw eee;
1175 }
1176 cnt9++;
1177 } while (true);
1178
1179
1180 }
1181
1182 state.type = _type;
1183 state.channel = _channel;
1184 }
1185 finally {
1186 }
1187 }
1188 // $ANTLR end "RULE_INT"
1189
1190 // $ANTLR start "RULE_ML_COMMENT"
1191 public final void mRULE_ML_COMMENT() throws RecognitionException {
1192 try {
1193 int _type = RULE_ML_COMMENT;
1194 int _channel = DEFAULT_TOKEN_CHANNEL;
1195 // InternalProblem.g:2386:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
1196 // InternalProblem.g:2386:19: '/*' ( options {greedy=false; } : . )* '*/'
1197 {
1198 match("/*");
1199
1200 // InternalProblem.g:2386:24: ( options {greedy=false; } : . )*
1201 loop10:
1202 do {
1203 int alt10=2;
1204 int LA10_0 = input.LA(1);
1205
1206 if ( (LA10_0=='*') ) {
1207 int LA10_1 = input.LA(2);
1208
1209 if ( (LA10_1=='/') ) {
1210 alt10=2;
1211 }
1212 else if ( ((LA10_1>='\u0000' && LA10_1<='.')||(LA10_1>='0' && LA10_1<='\uFFFF')) ) {
1213 alt10=1;
1214 }
1215
1216
1217 }
1218 else if ( ((LA10_0>='\u0000' && LA10_0<=')')||(LA10_0>='+' && LA10_0<='\uFFFF')) ) {
1219 alt10=1;
1220 }
1221
1222
1223 switch (alt10) {
1224 case 1 :
1225 // InternalProblem.g:2386:52: .
1226 {
1227 matchAny();
1228
1229 }
1230 break;
1231
1232 default :
1233 break loop10;
1234 }
1235 } while (true);
1236
1237 match("*/");
1238
1239
1240 }
1241
1242 state.type = _type;
1243 state.channel = _channel;
1244 }
1245 finally {
1246 }
1247 }
1248 // $ANTLR end "RULE_ML_COMMENT"
1249
1250 // $ANTLR start "RULE_WS"
1251 public final void mRULE_WS() throws RecognitionException {
1252 try {
1253 int _type = RULE_WS;
1254 int _channel = DEFAULT_TOKEN_CHANNEL;
1255 // InternalProblem.g:2388:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
1256 // InternalProblem.g:2388:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
1257 {
1258 // InternalProblem.g:2388:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
1259 int cnt11=0;
1260 loop11:
1261 do {
1262 int alt11=2;
1263 int LA11_0 = input.LA(1);
1264
1265 if ( ((LA11_0>='\t' && LA11_0<='\n')||LA11_0=='\r'||LA11_0==' ') ) {
1266 alt11=1;
1267 }
1268
1269
1270 switch (alt11) {
1271 case 1 :
1272 // InternalProblem.g:
1273 {
1274 if ( (input.LA(1)>='\t' && input.LA(1)<='\n')||input.LA(1)=='\r'||input.LA(1)==' ' ) {
1275 input.consume();
1276
1277 }
1278 else {
1279 MismatchedSetException mse = new MismatchedSetException(null,input);
1280 recover(mse);
1281 throw mse;}
1282
1283
1284 }
1285 break;
1286
1287 default :
1288 if ( cnt11 >= 1 ) break loop11;
1289 EarlyExitException eee =
1290 new EarlyExitException(11, input);
1291 throw eee;
1292 }
1293 cnt11++;
1294 } while (true);
1295
1296
1297 }
1298
1299 state.type = _type;
1300 state.channel = _channel;
1301 }
1302 finally {
1303 }
1304 }
1305 // $ANTLR end "RULE_WS"
1306
1307 // $ANTLR start "RULE_ANY_OTHER"
1308 public final void mRULE_ANY_OTHER() throws RecognitionException {
1309 try {
1310 int _type = RULE_ANY_OTHER;
1311 int _channel = DEFAULT_TOKEN_CHANNEL;
1312 // InternalProblem.g:2390:16: ( . )
1313 // InternalProblem.g:2390:18: .
1314 {
1315 matchAny();
1316
1317 }
1318
1319 state.type = _type;
1320 state.channel = _channel;
1321 }
1322 finally {
1323 }
1324 }
1325 // $ANTLR end "RULE_ANY_OTHER"
1326
1327 public void mTokens() throws RecognitionException {
1328 // InternalProblem.g:1:8: ( T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | RULE_ID | RULE_EXPONENTIAL | RULE_STRING | RULE_QUOTED_ID | RULE_SL_COMMENT | RULE_INT | RULE_ML_COMMENT | RULE_WS | RULE_ANY_OTHER )
1329 int alt12=43;
1330 alt12 = dfa12.predict(input);
1331 switch (alt12) {
1332 case 1 :
1333 // InternalProblem.g:1:10: T__13
1334 {
1335 mT__13();
1336
1337 }
1338 break;
1339 case 2 :
1340 // InternalProblem.g:1:16: T__14
1341 {
1342 mT__14();
1343
1344 }
1345 break;
1346 case 3 :
1347 // InternalProblem.g:1:22: T__15
1348 {
1349 mT__15();
1350
1351 }
1352 break;
1353 case 4 :
1354 // InternalProblem.g:1:28: T__16
1355 {
1356 mT__16();
1357
1358 }
1359 break;
1360 case 5 :
1361 // InternalProblem.g:1:34: T__17
1362 {
1363 mT__17();
1364
1365 }
1366 break;
1367 case 6 :
1368 // InternalProblem.g:1:40: T__18
1369 {
1370 mT__18();
1371
1372 }
1373 break;
1374 case 7 :
1375 // InternalProblem.g:1:46: T__19
1376 {
1377 mT__19();
1378
1379 }
1380 break;
1381 case 8 :
1382 // InternalProblem.g:1:52: T__20
1383 {
1384 mT__20();
1385
1386 }
1387 break;
1388 case 9 :
1389 // InternalProblem.g:1:58: T__21
1390 {
1391 mT__21();
1392
1393 }
1394 break;
1395 case 10 :
1396 // InternalProblem.g:1:64: T__22
1397 {
1398 mT__22();
1399
1400 }
1401 break;
1402 case 11 :
1403 // InternalProblem.g:1:70: T__23
1404 {
1405 mT__23();
1406
1407 }
1408 break;
1409 case 12 :
1410 // InternalProblem.g:1:76: T__24
1411 {
1412 mT__24();
1413
1414 }
1415 break;
1416 case 13 :
1417 // InternalProblem.g:1:82: T__25
1418 {
1419 mT__25();
1420
1421 }
1422 break;
1423 case 14 :
1424 // InternalProblem.g:1:88: T__26
1425 {
1426 mT__26();
1427
1428 }
1429 break;
1430 case 15 :
1431 // InternalProblem.g:1:94: T__27
1432 {
1433 mT__27();
1434
1435 }
1436 break;
1437 case 16 :
1438 // InternalProblem.g:1:100: T__28
1439 {
1440 mT__28();
1441
1442 }
1443 break;
1444 case 17 :
1445 // InternalProblem.g:1:106: T__29
1446 {
1447 mT__29();
1448
1449 }
1450 break;
1451 case 18 :
1452 // InternalProblem.g:1:112: T__30
1453 {
1454 mT__30();
1455
1456 }
1457 break;
1458 case 19 :
1459 // InternalProblem.g:1:118: T__31
1460 {
1461 mT__31();
1462
1463 }
1464 break;
1465 case 20 :
1466 // InternalProblem.g:1:124: T__32
1467 {
1468 mT__32();
1469
1470 }
1471 break;
1472 case 21 :
1473 // InternalProblem.g:1:130: T__33
1474 {
1475 mT__33();
1476
1477 }
1478 break;
1479 case 22 :
1480 // InternalProblem.g:1:136: T__34
1481 {
1482 mT__34();
1483
1484 }
1485 break;
1486 case 23 :
1487 // InternalProblem.g:1:142: T__35
1488 {
1489 mT__35();
1490
1491 }
1492 break;
1493 case 24 :
1494 // InternalProblem.g:1:148: T__36
1495 {
1496 mT__36();
1497
1498 }
1499 break;
1500 case 25 :
1501 // InternalProblem.g:1:154: T__37
1502 {
1503 mT__37();
1504
1505 }
1506 break;
1507 case 26 :
1508 // InternalProblem.g:1:160: T__38
1509 {
1510 mT__38();
1511
1512 }
1513 break;
1514 case 27 :
1515 // InternalProblem.g:1:166: T__39
1516 {
1517 mT__39();
1518
1519 }
1520 break;
1521 case 28 :
1522 // InternalProblem.g:1:172: T__40
1523 {
1524 mT__40();
1525
1526 }
1527 break;
1528 case 29 :
1529 // InternalProblem.g:1:178: T__41
1530 {
1531 mT__41();
1532
1533 }
1534 break;
1535 case 30 :
1536 // InternalProblem.g:1:184: T__42
1537 {
1538 mT__42();
1539
1540 }
1541 break;
1542 case 31 :
1543 // InternalProblem.g:1:190: T__43
1544 {
1545 mT__43();
1546
1547 }
1548 break;
1549 case 32 :
1550 // InternalProblem.g:1:196: T__44
1551 {
1552 mT__44();
1553
1554 }
1555 break;
1556 case 33 :
1557 // InternalProblem.g:1:202: T__45
1558 {
1559 mT__45();
1560
1561 }
1562 break;
1563 case 34 :
1564 // InternalProblem.g:1:208: T__46
1565 {
1566 mT__46();
1567
1568 }
1569 break;
1570 case 35 :
1571 // InternalProblem.g:1:214: RULE_ID
1572 {
1573 mRULE_ID();
1574
1575 }
1576 break;
1577 case 36 :
1578 // InternalProblem.g:1:222: RULE_EXPONENTIAL
1579 {
1580 mRULE_EXPONENTIAL();
1581
1582 }
1583 break;
1584 case 37 :
1585 // InternalProblem.g:1:239: RULE_STRING
1586 {
1587 mRULE_STRING();
1588
1589 }
1590 break;
1591 case 38 :
1592 // InternalProblem.g:1:251: RULE_QUOTED_ID
1593 {
1594 mRULE_QUOTED_ID();
1595
1596 }
1597 break;
1598 case 39 :
1599 // InternalProblem.g:1:266: RULE_SL_COMMENT
1600 {
1601 mRULE_SL_COMMENT();
1602
1603 }
1604 break;
1605 case 40 :
1606 // InternalProblem.g:1:282: RULE_INT
1607 {
1608 mRULE_INT();
1609
1610 }
1611 break;
1612 case 41 :
1613 // InternalProblem.g:1:291: RULE_ML_COMMENT
1614 {
1615 mRULE_ML_COMMENT();
1616
1617 }
1618 break;
1619 case 42 :
1620 // InternalProblem.g:1:307: RULE_WS
1621 {
1622 mRULE_WS();
1623
1624 }
1625 break;
1626 case 43 :
1627 // InternalProblem.g:1:315: RULE_ANY_OTHER
1628 {
1629 mRULE_ANY_OTHER();
1630
1631 }
1632 break;
1633
1634 }
1635
1636 }
1637
1638
1639 protected DFA12 dfa12 = new DFA12(this);
1640 static final String DFA12_eotS =
1641 "\1\uffff\1\44\1\46\3\44\4\uffff\1\44\2\uffff\1\44\2\uffff\1\71\1\uffff\1\74\1\44\2\uffff\2\44\1\uffff\1\44\2\uffff\1\105\2\42\1\uffff\1\42\2\uffff\1\44\3\uffff\6\44\4\uffff\1\44\2\uffff\1\44\10\uffff\1\44\2\uffff\2\44\1\uffff\1\44\2\uffff\1\105\6\uffff\17\44\1\152\4\44\1\157\4\44\1\164\3\44\1\uffff\1\44\1\171\2\44\1\uffff\1\174\2\44\1\177\1\uffff\1\u0080\3\44\1\uffff\2\44\1\uffff\1\u0086\1\44\2\uffff\1\44\1\u0089\2\44\1\u008c\1\uffff\1\44\1\u008e\1\uffff\1\u008f\1\u0090\1\uffff\1\u0091\4\uffff";
1642 static final String DFA12_eofS =
1643 "\u0092\uffff";
1644 static final String DFA12_minS =
1645 "\1\0\1\162\1\56\1\142\1\154\1\156\4\uffff\1\145\2\uffff\1\160\2\uffff\1\55\1\uffff\1\75\1\143\2\uffff\1\162\1\141\1\uffff\1\156\2\uffff\1\60\2\0\1\uffff\1\52\2\uffff\1\145\3\uffff\1\163\1\141\1\156\1\164\1\165\1\162\4\uffff\1\146\2\uffff\1\160\10\uffff\1\157\2\uffff\1\165\1\154\1\uffff\1\153\2\uffff\1\60\6\uffff\1\142\1\144\1\164\1\163\1\164\1\145\1\155\1\157\1\145\1\157\1\160\1\145\1\163\1\156\1\154\1\60\1\162\1\163\1\141\1\156\1\60\2\162\1\163\1\145\1\60\1\145\1\157\1\145\1\uffff\1\141\1\60\1\151\1\144\1\uffff\1\60\1\163\1\151\1\60\1\uffff\1\60\1\167\1\155\1\143\1\uffff\1\156\1\163\1\uffff\1\60\1\164\2\uffff\1\156\1\60\1\164\1\163\1\60\1\uffff\1\145\1\60\1\uffff\2\60\1\uffff\1\60\4\uffff";
1646 static final String DFA12_maxS =
1647 "\1\uffff\1\162\1\56\1\142\1\157\1\170\4\uffff\1\145\2\uffff\1\160\2\uffff\1\72\1\uffff\1\75\1\143\2\uffff\1\162\1\141\1\uffff\1\156\2\uffff\1\145\2\uffff\1\uffff\1\57\2\uffff\1\157\3\uffff\1\163\1\141\1\156\1\164\1\165\1\162\4\uffff\1\146\2\uffff\1\160\10\uffff\1\157\2\uffff\1\165\1\154\1\uffff\1\153\2\uffff\1\145\6\uffff\1\142\1\144\1\164\1\163\1\164\1\145\1\155\1\157\1\145\1\157\1\160\1\145\1\163\1\156\1\154\1\172\1\162\1\163\1\141\1\156\1\172\2\162\1\163\1\145\1\172\1\145\1\157\1\145\1\uffff\1\141\1\172\1\151\1\144\1\uffff\1\172\1\163\1\151\1\172\1\uffff\1\172\1\167\1\155\1\143\1\uffff\1\156\1\163\1\uffff\1\172\1\164\2\uffff\1\156\1\172\1\164\1\163\1\172\1\uffff\1\145\1\172\1\uffff\2\172\1\uffff\1\172\4\uffff";
1648 static final String DFA12_acceptS =
1649 "\6\uffff\1\6\1\7\1\10\1\11\1\uffff\1\15\1\16\1\uffff\1\22\1\23\1\uffff\1\25\2\uffff\1\32\1\34\2\uffff\1\40\1\uffff\1\42\1\43\3\uffff\1\47\1\uffff\1\52\1\53\1\uffff\1\43\1\33\1\2\6\uffff\1\6\1\7\1\10\1\11\1\uffff\1\15\1\16\1\uffff\1\22\1\23\1\24\1\35\1\27\1\25\1\31\1\26\1\uffff\1\32\1\34\2\uffff\1\40\1\uffff\1\42\1\50\1\uffff\1\44\1\45\1\46\1\47\1\51\1\52\35\uffff\1\21\4\uffff\1\12\4\uffff\1\36\4\uffff\1\4\2\uffff\1\20\2\uffff\1\30\1\37\5\uffff\1\14\2\uffff\1\1\2\uffff\1\5\1\uffff\1\41\1\3\1\13\1\17";
1650 static final String DFA12_specialS =
1651 "\1\2\34\uffff\1\0\1\1\163\uffff}>";
1652 static final String[] DFA12_transitionS = {
1653 "\11\42\2\41\2\42\1\41\22\42\1\41\1\21\1\35\2\42\1\37\1\42\1\36\1\16\1\17\1\25\1\22\1\6\1\30\1\2\1\40\12\34\1\20\1\10\1\42\1\24\1\42\1\32\1\42\32\33\1\13\1\42\1\14\1\42\1\33\1\42\1\3\1\33\1\4\1\33\1\5\1\27\10\33\1\15\1\1\1\33\1\12\1\23\1\26\1\31\5\33\1\7\1\42\1\11\uff82\42",
1654 "\1\43",
1655 "\1\45",
1656 "\1\47",
1657 "\1\50\2\uffff\1\51",
1658 "\1\53\3\uffff\1\54\5\uffff\1\52",
1659 "",
1660 "",
1661 "",
1662 "",
1663 "\1\61",
1664 "",
1665 "",
1666 "\1\64",
1667 "",
1668 "",
1669 "\1\67\14\uffff\1\70",
1670 "",
1671 "\1\73",
1672 "\1\75",
1673 "",
1674 "",
1675 "\1\100",
1676 "\1\101",
1677 "",
1678 "\1\103",
1679 "",
1680 "",
1681 "\12\106\13\uffff\1\107\37\uffff\1\107",
1682 "\0\110",
1683 "\0\111",
1684 "",
1685 "\1\113\4\uffff\1\112",
1686 "",
1687 "",
1688 "\1\116\11\uffff\1\115",
1689 "",
1690 "",
1691 "",
1692 "\1\117",
1693 "\1\120",
1694 "\1\121",
1695 "\1\122",
1696 "\1\123",
1697 "\1\124",
1698 "",
1699 "",
1700 "",
1701 "",
1702 "\1\125",
1703 "",
1704 "",
1705 "\1\126",
1706 "",
1707 "",
1708 "",
1709 "",
1710 "",
1711 "",
1712 "",
1713 "",
1714 "\1\127",
1715 "",
1716 "",
1717 "\1\130",
1718 "\1\131",
1719 "",
1720 "\1\132",
1721 "",
1722 "",
1723 "\12\106\13\uffff\1\107\37\uffff\1\107",
1724 "",
1725 "",
1726 "",
1727 "",
1728 "",
1729 "",
1730 "\1\133",
1731 "\1\134",
1732 "\1\135",
1733 "\1\136",
1734 "\1\137",
1735 "\1\140",
1736 "\1\141",
1737 "\1\142",
1738 "\1\143",
1739 "\1\144",
1740 "\1\145",
1741 "\1\146",
1742 "\1\147",
1743 "\1\150",
1744 "\1\151",
1745 "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
1746 "\1\153",
1747 "\1\154",
1748 "\1\155",
1749 "\1\156",
1750 "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
1751 "\1\160",
1752 "\1\161",
1753 "\1\162",
1754 "\1\163",
1755 "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
1756 "\1\165",
1757 "\1\166",
1758 "\1\167",
1759 "",
1760 "\1\170",
1761 "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
1762 "\1\172",
1763 "\1\173",
1764 "",
1765 "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
1766 "\1\175",
1767 "\1\176",
1768 "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
1769 "",
1770 "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
1771 "\1\u0081",
1772 "\1\u0082",
1773 "\1\u0083",
1774 "",
1775 "\1\u0084",
1776 "\1\u0085",
1777 "",
1778 "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
1779 "\1\u0087",
1780 "",
1781 "",
1782 "\1\u0088",
1783 "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
1784 "\1\u008a",
1785 "\1\u008b",
1786 "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
1787 "",
1788 "\1\u008d",
1789 "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
1790 "",
1791 "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
1792 "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
1793 "",
1794 "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44",
1795 "",
1796 "",
1797 "",
1798 ""
1799 };
1800
1801 static final short[] DFA12_eot = DFA.unpackEncodedString(DFA12_eotS);
1802 static final short[] DFA12_eof = DFA.unpackEncodedString(DFA12_eofS);
1803 static final char[] DFA12_min = DFA.unpackEncodedStringToUnsignedChars(DFA12_minS);
1804 static final char[] DFA12_max = DFA.unpackEncodedStringToUnsignedChars(DFA12_maxS);
1805 static final short[] DFA12_accept = DFA.unpackEncodedString(DFA12_acceptS);
1806 static final short[] DFA12_special = DFA.unpackEncodedString(DFA12_specialS);
1807 static final short[][] DFA12_transition;
1808
1809 static {
1810 int numStates = DFA12_transitionS.length;
1811 DFA12_transition = new short[numStates][];
1812 for (int i=0; i<numStates; i++) {
1813 DFA12_transition[i] = DFA.unpackEncodedString(DFA12_transitionS[i]);
1814 }
1815 }
1816
1817 class DFA12 extends DFA {
1818
1819 public DFA12(BaseRecognizer recognizer) {
1820 this.recognizer = recognizer;
1821 this.decisionNumber = 12;
1822 this.eot = DFA12_eot;
1823 this.eof = DFA12_eof;
1824 this.min = DFA12_min;
1825 this.max = DFA12_max;
1826 this.accept = DFA12_accept;
1827 this.special = DFA12_special;
1828 this.transition = DFA12_transition;
1829 }
1830 public String getDescription() {
1831 return "1:1: Tokens : ( T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | RULE_ID | RULE_EXPONENTIAL | RULE_STRING | RULE_QUOTED_ID | RULE_SL_COMMENT | RULE_INT | RULE_ML_COMMENT | RULE_WS | RULE_ANY_OTHER );";
1832 }
1833 public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
1834 IntStream input = _input;
1835 int _s = s;
1836 switch ( s ) {
1837 case 0 :
1838 int LA12_29 = input.LA(1);
1839
1840 s = -1;
1841 if ( ((LA12_29>='\u0000' && LA12_29<='\uFFFF')) ) {s = 72;}
1842
1843 else s = 34;
1844
1845 if ( s>=0 ) return s;
1846 break;
1847 case 1 :
1848 int LA12_30 = input.LA(1);
1849
1850 s = -1;
1851 if ( ((LA12_30>='\u0000' && LA12_30<='\uFFFF')) ) {s = 73;}
1852
1853 else s = 34;
1854
1855 if ( s>=0 ) return s;
1856 break;
1857 case 2 :
1858 int LA12_0 = input.LA(1);
1859
1860 s = -1;
1861 if ( (LA12_0=='p') ) {s = 1;}
1862
1863 else if ( (LA12_0=='.') ) {s = 2;}
1864
1865 else if ( (LA12_0=='a') ) {s = 3;}
1866
1867 else if ( (LA12_0=='c') ) {s = 4;}
1868
1869 else if ( (LA12_0=='e') ) {s = 5;}
1870
1871 else if ( (LA12_0==',') ) {s = 6;}
1872
1873 else if ( (LA12_0=='{') ) {s = 7;}
1874
1875 else if ( (LA12_0==';') ) {s = 8;}
1876
1877 else if ( (LA12_0=='}') ) {s = 9;}
1878
1879 else if ( (LA12_0=='r') ) {s = 10;}
1880
1881 else if ( (LA12_0=='[') ) {s = 11;}
1882
1883 else if ( (LA12_0==']') ) {s = 12;}
1884
1885 else if ( (LA12_0=='o') ) {s = 13;}
1886
1887 else if ( (LA12_0=='(') ) {s = 14;}
1888
1889 else if ( (LA12_0==')') ) {s = 15;}
1890
1891 else if ( (LA12_0==':') ) {s = 16;}
1892
1893 else if ( (LA12_0=='!') ) {s = 17;}
1894
1895 else if ( (LA12_0=='+') ) {s = 18;}
1896
1897 else if ( (LA12_0=='s') ) {s = 19;}
1898
1899 else if ( (LA12_0=='=') ) {s = 20;}
1900
1901 else if ( (LA12_0=='*') ) {s = 21;}
1902
1903 else if ( (LA12_0=='t') ) {s = 22;}
1904
1905 else if ( (LA12_0=='f') ) {s = 23;}
1906
1907 else if ( (LA12_0=='-') ) {s = 24;}
1908
1909 else if ( (LA12_0=='u') ) {s = 25;}
1910
1911 else if ( (LA12_0=='?') ) {s = 26;}
1912
1913 else if ( ((LA12_0>='A' && LA12_0<='Z')||LA12_0=='_'||LA12_0=='b'||LA12_0=='d'||(LA12_0>='g' && LA12_0<='n')||LA12_0=='q'||(LA12_0>='v' && LA12_0<='z')) ) {s = 27;}
1914
1915 else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 28;}
1916
1917 else if ( (LA12_0=='\"') ) {s = 29;}
1918
1919 else if ( (LA12_0=='\'') ) {s = 30;}
1920
1921 else if ( (LA12_0=='%') ) {s = 31;}
1922
1923 else if ( (LA12_0=='/') ) {s = 32;}
1924
1925 else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 33;}
1926
1927 else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||(LA12_0>='#' && LA12_0<='$')||LA12_0=='&'||LA12_0=='<'||LA12_0=='>'||LA12_0=='@'||LA12_0=='\\'||LA12_0=='^'||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 34;}
1928
1929 if ( s>=0 ) return s;
1930 break;
1931 }
1932 NoViableAltException nvae =
1933 new NoViableAltException(getDescription(), 12, _s, input);
1934 error(nvae);
1935 throw nvae;
1936 }
1937 }
1938
1939
1940} \ No newline at end of file
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblemParser.java b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblemParser.java
deleted file mode 100644
index cddaa9c1..00000000
--- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblemParser.java
+++ /dev/null
@@ -1,6752 +0,0 @@
1package org.eclipse.viatra.solver.language.parser.antlr.internal;
2
3import org.eclipse.xtext.*;
4import org.eclipse.xtext.parser.*;
5import org.eclipse.xtext.parser.impl.*;
6import org.eclipse.emf.ecore.util.EcoreUtil;
7import org.eclipse.emf.ecore.EObject;
8import org.eclipse.emf.common.util.Enumerator;
9import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser;
10import org.eclipse.xtext.parser.antlr.XtextTokenStream;
11import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
12import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken;
13import org.eclipse.viatra.solver.language.services.ProblemGrammarAccess;
14
15
16
17import org.antlr.runtime.*;
18import java.util.Stack;
19import java.util.List;
20import java.util.ArrayList;
21
22@SuppressWarnings("all")
23public class InternalProblemParser extends AbstractInternalAntlrParser {
24 public static final String[] tokenNames = new String[] {
25 "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INT", "RULE_QUOTED_ID", "RULE_EXPONENTIAL", "RULE_SL_COMMENT", "RULE_ML_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'problem'", "'.'", "'abstract'", "'class'", "'extends'", "','", "'{'", "';'", "'}'", "'enum'", "'contains'", "'refers'", "'['", "']'", "'opposite'", "'error'", "'pred'", "'('", "')'", "':-'", "'!'", "'+'", "':'", "'scope'", "'+='", "'='", "'..'", "'*'", "'::'", "'true'", "'false'", "'-'", "'unknown'", "'?'"
26 };
27 public static final int T__19=19;
28 public static final int T__15=15;
29 public static final int T__16=16;
30 public static final int T__17=17;
31 public static final int T__18=18;
32 public static final int T__13=13;
33 public static final int T__14=14;
34 public static final int RULE_EXPONENTIAL=8;
35 public static final int RULE_ID=5;
36 public static final int RULE_QUOTED_ID=7;
37 public static final int T__26=26;
38 public static final int T__27=27;
39 public static final int T__28=28;
40 public static final int RULE_INT=6;
41 public static final int T__29=29;
42 public static final int T__22=22;
43 public static final int RULE_ML_COMMENT=10;
44 public static final int T__23=23;
45 public static final int T__24=24;
46 public static final int T__25=25;
47 public static final int T__20=20;
48 public static final int T__21=21;
49 public static final int RULE_STRING=4;
50 public static final int RULE_SL_COMMENT=9;
51 public static final int T__37=37;
52 public static final int T__38=38;
53 public static final int T__39=39;
54 public static final int T__33=33;
55 public static final int T__34=34;
56 public static final int T__35=35;
57 public static final int T__36=36;
58 public static final int EOF=-1;
59 public static final int T__30=30;
60 public static final int T__31=31;
61 public static final int T__32=32;
62 public static final int RULE_WS=11;
63 public static final int RULE_ANY_OTHER=12;
64 public static final int T__44=44;
65 public static final int T__45=45;
66 public static final int T__46=46;
67 public static final int T__40=40;
68 public static final int T__41=41;
69 public static final int T__42=42;
70 public static final int T__43=43;
71
72 // delegates
73 // delegators
74
75
76 public InternalProblemParser(TokenStream input) {
77 this(input, new RecognizerSharedState());
78 }
79 public InternalProblemParser(TokenStream input, RecognizerSharedState state) {
80 super(input, state);
81
82 }
83
84
85 public String[] getTokenNames() { return InternalProblemParser.tokenNames; }
86 public String getGrammarFileName() { return "InternalProblem.g"; }
87
88
89
90 private ProblemGrammarAccess grammarAccess;
91
92 public InternalProblemParser(TokenStream input, ProblemGrammarAccess grammarAccess) {
93 this(input);
94 this.grammarAccess = grammarAccess;
95 registerRules(grammarAccess.getGrammar());
96 }
97
98 @Override
99 protected String getFirstRuleName() {
100 return "Problem";
101 }
102
103 @Override
104 protected ProblemGrammarAccess getGrammarAccess() {
105 return grammarAccess;
106 }
107
108
109
110
111 // $ANTLR start "entryRuleProblem"
112 // InternalProblem.g:65:1: entryRuleProblem returns [EObject current=null] : iv_ruleProblem= ruleProblem EOF ;
113 public final EObject entryRuleProblem() throws RecognitionException {
114 EObject current = null;
115
116 EObject iv_ruleProblem = null;
117
118
119 try {
120 // InternalProblem.g:65:48: (iv_ruleProblem= ruleProblem EOF )
121 // InternalProblem.g:66:2: iv_ruleProblem= ruleProblem EOF
122 {
123 newCompositeNode(grammarAccess.getProblemRule());
124 pushFollow(FOLLOW_1);
125 iv_ruleProblem=ruleProblem();
126
127 state._fsp--;
128
129 current =iv_ruleProblem;
130 match(input,EOF,FOLLOW_2);
131
132 }
133
134 }
135
136 catch (RecognitionException re) {
137 recover(input,re);
138 appendSkippedTokens();
139 }
140 finally {
141 }
142 return current;
143 }
144 // $ANTLR end "entryRuleProblem"
145
146
147 // $ANTLR start "ruleProblem"
148 // InternalProblem.g:72:1: ruleProblem returns [EObject current=null] : ( (otherlv_0= 'problem' ( (lv_name_1_0= ruleIdentifier ) ) otherlv_2= '.' )? ( (lv_statements_3_0= ruleStatement ) )* ) ;
149 public final EObject ruleProblem() throws RecognitionException {
150 EObject current = null;
151
152 Token otherlv_0=null;
153 Token otherlv_2=null;
154 AntlrDatatypeRuleToken lv_name_1_0 = null;
155
156 EObject lv_statements_3_0 = null;
157
158
159
160 enterRule();
161
162 try {
163 // InternalProblem.g:78:2: ( ( (otherlv_0= 'problem' ( (lv_name_1_0= ruleIdentifier ) ) otherlv_2= '.' )? ( (lv_statements_3_0= ruleStatement ) )* ) )
164 // InternalProblem.g:79:2: ( (otherlv_0= 'problem' ( (lv_name_1_0= ruleIdentifier ) ) otherlv_2= '.' )? ( (lv_statements_3_0= ruleStatement ) )* )
165 {
166 // InternalProblem.g:79:2: ( (otherlv_0= 'problem' ( (lv_name_1_0= ruleIdentifier ) ) otherlv_2= '.' )? ( (lv_statements_3_0= ruleStatement ) )* )
167 // InternalProblem.g:80:3: (otherlv_0= 'problem' ( (lv_name_1_0= ruleIdentifier ) ) otherlv_2= '.' )? ( (lv_statements_3_0= ruleStatement ) )*
168 {
169 // InternalProblem.g:80:3: (otherlv_0= 'problem' ( (lv_name_1_0= ruleIdentifier ) ) otherlv_2= '.' )?
170 int alt1=2;
171 int LA1_0 = input.LA(1);
172
173 if ( (LA1_0==13) ) {
174 alt1=1;
175 }
176 switch (alt1) {
177 case 1 :
178 // InternalProblem.g:81:4: otherlv_0= 'problem' ( (lv_name_1_0= ruleIdentifier ) ) otherlv_2= '.'
179 {
180 otherlv_0=(Token)match(input,13,FOLLOW_3);
181
182 newLeafNode(otherlv_0, grammarAccess.getProblemAccess().getProblemKeyword_0_0());
183
184 // InternalProblem.g:85:4: ( (lv_name_1_0= ruleIdentifier ) )
185 // InternalProblem.g:86:5: (lv_name_1_0= ruleIdentifier )
186 {
187 // InternalProblem.g:86:5: (lv_name_1_0= ruleIdentifier )
188 // InternalProblem.g:87:6: lv_name_1_0= ruleIdentifier
189 {
190
191 newCompositeNode(grammarAccess.getProblemAccess().getNameIdentifierParserRuleCall_0_1_0());
192
193 pushFollow(FOLLOW_4);
194 lv_name_1_0=ruleIdentifier();
195
196 state._fsp--;
197
198
199 if (current==null) {
200 current = createModelElementForParent(grammarAccess.getProblemRule());
201 }
202 set(
203 current,
204 "name",
205 lv_name_1_0,
206 "org.eclipse.viatra.solver.language.Problem.Identifier");
207 afterParserOrEnumRuleCall();
208
209
210 }
211
212
213 }
214
215 otherlv_2=(Token)match(input,14,FOLLOW_5);
216
217 newLeafNode(otherlv_2, grammarAccess.getProblemAccess().getFullStopKeyword_0_2());
218
219
220 }
221 break;
222
223 }
224
225 // InternalProblem.g:109:3: ( (lv_statements_3_0= ruleStatement ) )*
226 loop2:
227 do {
228 int alt2=2;
229 int LA2_0 = input.LA(1);
230
231 if ( (LA2_0==RULE_ID||LA2_0==RULE_QUOTED_ID||(LA2_0>=15 && LA2_0<=16)||LA2_0==22||(LA2_0>=28 && LA2_0<=29)||LA2_0==33||LA2_0==36||(LA2_0>=42 && LA2_0<=43)||LA2_0==46) ) {
232 alt2=1;
233 }
234
235
236 switch (alt2) {
237 case 1 :
238 // InternalProblem.g:110:4: (lv_statements_3_0= ruleStatement )
239 {
240 // InternalProblem.g:110:4: (lv_statements_3_0= ruleStatement )
241 // InternalProblem.g:111:5: lv_statements_3_0= ruleStatement
242 {
243
244 newCompositeNode(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_1_0());
245
246 pushFollow(FOLLOW_5);
247 lv_statements_3_0=ruleStatement();
248
249 state._fsp--;
250
251
252 if (current==null) {
253 current = createModelElementForParent(grammarAccess.getProblemRule());
254 }
255 add(
256 current,
257 "statements",
258 lv_statements_3_0,
259 "org.eclipse.viatra.solver.language.Problem.Statement");
260 afterParserOrEnumRuleCall();
261
262
263 }
264
265
266 }
267 break;
268
269 default :
270 break loop2;
271 }
272 } while (true);
273
274
275 }
276
277
278 }
279
280
281 leaveRule();
282
283 }
284
285 catch (RecognitionException re) {
286 recover(input,re);
287 appendSkippedTokens();
288 }
289 finally {
290 }
291 return current;
292 }
293 // $ANTLR end "ruleProblem"
294
295
296 // $ANTLR start "entryRuleStatement"
297 // InternalProblem.g:132:1: entryRuleStatement returns [EObject current=null] : iv_ruleStatement= ruleStatement EOF ;
298 public final EObject entryRuleStatement() throws RecognitionException {
299 EObject current = null;
300
301 EObject iv_ruleStatement = null;
302
303
304 try {
305 // InternalProblem.g:132:50: (iv_ruleStatement= ruleStatement EOF )
306 // InternalProblem.g:133:2: iv_ruleStatement= ruleStatement EOF
307 {
308 newCompositeNode(grammarAccess.getStatementRule());
309 pushFollow(FOLLOW_1);
310 iv_ruleStatement=ruleStatement();
311
312 state._fsp--;
313
314 current =iv_ruleStatement;
315 match(input,EOF,FOLLOW_2);
316
317 }
318
319 }
320
321 catch (RecognitionException re) {
322 recover(input,re);
323 appendSkippedTokens();
324 }
325 finally {
326 }
327 return current;
328 }
329 // $ANTLR end "entryRuleStatement"
330
331
332 // $ANTLR start "ruleStatement"
333 // InternalProblem.g:139:1: ruleStatement returns [EObject current=null] : (this_ClassDeclaration_0= ruleClassDeclaration | this_EnumDeclaration_1= ruleEnumDeclaration | this_PredicateDefinition_2= rulePredicateDefinition | this_Assertion_3= ruleAssertion | this_NodeValueAssertion_4= ruleNodeValueAssertion | this_ScopeDeclaration_5= ruleScopeDeclaration ) ;
334 public final EObject ruleStatement() throws RecognitionException {
335 EObject current = null;
336
337 EObject this_ClassDeclaration_0 = null;
338
339 EObject this_EnumDeclaration_1 = null;
340
341 EObject this_PredicateDefinition_2 = null;
342
343 EObject this_Assertion_3 = null;
344
345 EObject this_NodeValueAssertion_4 = null;
346
347 EObject this_ScopeDeclaration_5 = null;
348
349
350
351 enterRule();
352
353 try {
354 // InternalProblem.g:145:2: ( (this_ClassDeclaration_0= ruleClassDeclaration | this_EnumDeclaration_1= ruleEnumDeclaration | this_PredicateDefinition_2= rulePredicateDefinition | this_Assertion_3= ruleAssertion | this_NodeValueAssertion_4= ruleNodeValueAssertion | this_ScopeDeclaration_5= ruleScopeDeclaration ) )
355 // InternalProblem.g:146:2: (this_ClassDeclaration_0= ruleClassDeclaration | this_EnumDeclaration_1= ruleEnumDeclaration | this_PredicateDefinition_2= rulePredicateDefinition | this_Assertion_3= ruleAssertion | this_NodeValueAssertion_4= ruleNodeValueAssertion | this_ScopeDeclaration_5= ruleScopeDeclaration )
356 {
357 // InternalProblem.g:146:2: (this_ClassDeclaration_0= ruleClassDeclaration | this_EnumDeclaration_1= ruleEnumDeclaration | this_PredicateDefinition_2= rulePredicateDefinition | this_Assertion_3= ruleAssertion | this_NodeValueAssertion_4= ruleNodeValueAssertion | this_ScopeDeclaration_5= ruleScopeDeclaration )
358 int alt3=6;
359 alt3 = dfa3.predict(input);
360 switch (alt3) {
361 case 1 :
362 // InternalProblem.g:147:3: this_ClassDeclaration_0= ruleClassDeclaration
363 {
364
365 newCompositeNode(grammarAccess.getStatementAccess().getClassDeclarationParserRuleCall_0());
366
367 pushFollow(FOLLOW_2);
368 this_ClassDeclaration_0=ruleClassDeclaration();
369
370 state._fsp--;
371
372
373 current = this_ClassDeclaration_0;
374 afterParserOrEnumRuleCall();
375
376
377 }
378 break;
379 case 2 :
380 // InternalProblem.g:156:3: this_EnumDeclaration_1= ruleEnumDeclaration
381 {
382
383 newCompositeNode(grammarAccess.getStatementAccess().getEnumDeclarationParserRuleCall_1());
384
385 pushFollow(FOLLOW_2);
386 this_EnumDeclaration_1=ruleEnumDeclaration();
387
388 state._fsp--;
389
390
391 current = this_EnumDeclaration_1;
392 afterParserOrEnumRuleCall();
393
394
395 }
396 break;
397 case 3 :
398 // InternalProblem.g:165:3: this_PredicateDefinition_2= rulePredicateDefinition
399 {
400
401 newCompositeNode(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_2());
402
403 pushFollow(FOLLOW_2);
404 this_PredicateDefinition_2=rulePredicateDefinition();
405
406 state._fsp--;
407
408
409 current = this_PredicateDefinition_2;
410 afterParserOrEnumRuleCall();
411
412
413 }
414 break;
415 case 4 :
416 // InternalProblem.g:174:3: this_Assertion_3= ruleAssertion
417 {
418
419 newCompositeNode(grammarAccess.getStatementAccess().getAssertionParserRuleCall_3());
420
421 pushFollow(FOLLOW_2);
422 this_Assertion_3=ruleAssertion();
423
424 state._fsp--;
425
426
427 current = this_Assertion_3;
428 afterParserOrEnumRuleCall();
429
430
431 }
432 break;
433 case 5 :
434 // InternalProblem.g:183:3: this_NodeValueAssertion_4= ruleNodeValueAssertion
435 {
436
437 newCompositeNode(grammarAccess.getStatementAccess().getNodeValueAssertionParserRuleCall_4());
438
439 pushFollow(FOLLOW_2);
440 this_NodeValueAssertion_4=ruleNodeValueAssertion();
441
442 state._fsp--;
443
444
445 current = this_NodeValueAssertion_4;
446 afterParserOrEnumRuleCall();
447
448
449 }
450 break;
451 case 6 :
452 // InternalProblem.g:192:3: this_ScopeDeclaration_5= ruleScopeDeclaration
453 {
454
455 newCompositeNode(grammarAccess.getStatementAccess().getScopeDeclarationParserRuleCall_5());
456
457 pushFollow(FOLLOW_2);
458 this_ScopeDeclaration_5=ruleScopeDeclaration();
459
460 state._fsp--;
461
462
463 current = this_ScopeDeclaration_5;
464 afterParserOrEnumRuleCall();
465
466
467 }
468 break;
469
470 }
471
472
473 }
474
475
476 leaveRule();
477
478 }
479
480 catch (RecognitionException re) {
481 recover(input,re);
482 appendSkippedTokens();
483 }
484 finally {
485 }
486 return current;
487 }
488 // $ANTLR end "ruleStatement"
489
490
491 // $ANTLR start "entryRuleClassDeclaration"
492 // InternalProblem.g:204:1: entryRuleClassDeclaration returns [EObject current=null] : iv_ruleClassDeclaration= ruleClassDeclaration EOF ;
493 public final EObject entryRuleClassDeclaration() throws RecognitionException {
494 EObject current = null;
495
496 EObject iv_ruleClassDeclaration = null;
497
498
499 try {
500 // InternalProblem.g:204:57: (iv_ruleClassDeclaration= ruleClassDeclaration EOF )
501 // InternalProblem.g:205:2: iv_ruleClassDeclaration= ruleClassDeclaration EOF
502 {
503 newCompositeNode(grammarAccess.getClassDeclarationRule());
504 pushFollow(FOLLOW_1);
505 iv_ruleClassDeclaration=ruleClassDeclaration();
506
507 state._fsp--;
508
509 current =iv_ruleClassDeclaration;
510 match(input,EOF,FOLLOW_2);
511
512 }
513
514 }
515
516 catch (RecognitionException re) {
517 recover(input,re);
518 appendSkippedTokens();
519 }
520 finally {
521 }
522 return current;
523 }
524 // $ANTLR end "entryRuleClassDeclaration"
525
526
527 // $ANTLR start "ruleClassDeclaration"
528 // InternalProblem.g:211:1: ruleClassDeclaration returns [EObject current=null] : ( ( (lv_abstract_0_0= 'abstract' ) )? otherlv_1= 'class' ( (lv_name_2_0= ruleIdentifier ) ) (otherlv_3= 'extends' ( ( ruleQualifiedName ) ) (otherlv_5= ',' ( ( ruleQualifiedName ) ) )* )? ( (otherlv_7= '{' ( ( (lv_referenceDeclarations_8_0= ruleReferenceDeclaration ) ) (otherlv_9= ';' )? )* otherlv_10= '}' ) | otherlv_11= '.' ) ) ;
529 public final EObject ruleClassDeclaration() throws RecognitionException {
530 EObject current = null;
531
532 Token lv_abstract_0_0=null;
533 Token otherlv_1=null;
534 Token otherlv_3=null;
535 Token otherlv_5=null;
536 Token otherlv_7=null;
537 Token otherlv_9=null;
538 Token otherlv_10=null;
539 Token otherlv_11=null;
540 AntlrDatatypeRuleToken lv_name_2_0 = null;
541
542 EObject lv_referenceDeclarations_8_0 = null;
543
544
545
546 enterRule();
547
548 try {
549 // InternalProblem.g:217:2: ( ( ( (lv_abstract_0_0= 'abstract' ) )? otherlv_1= 'class' ( (lv_name_2_0= ruleIdentifier ) ) (otherlv_3= 'extends' ( ( ruleQualifiedName ) ) (otherlv_5= ',' ( ( ruleQualifiedName ) ) )* )? ( (otherlv_7= '{' ( ( (lv_referenceDeclarations_8_0= ruleReferenceDeclaration ) ) (otherlv_9= ';' )? )* otherlv_10= '}' ) | otherlv_11= '.' ) ) )
550 // InternalProblem.g:218:2: ( ( (lv_abstract_0_0= 'abstract' ) )? otherlv_1= 'class' ( (lv_name_2_0= ruleIdentifier ) ) (otherlv_3= 'extends' ( ( ruleQualifiedName ) ) (otherlv_5= ',' ( ( ruleQualifiedName ) ) )* )? ( (otherlv_7= '{' ( ( (lv_referenceDeclarations_8_0= ruleReferenceDeclaration ) ) (otherlv_9= ';' )? )* otherlv_10= '}' ) | otherlv_11= '.' ) )
551 {
552 // InternalProblem.g:218:2: ( ( (lv_abstract_0_0= 'abstract' ) )? otherlv_1= 'class' ( (lv_name_2_0= ruleIdentifier ) ) (otherlv_3= 'extends' ( ( ruleQualifiedName ) ) (otherlv_5= ',' ( ( ruleQualifiedName ) ) )* )? ( (otherlv_7= '{' ( ( (lv_referenceDeclarations_8_0= ruleReferenceDeclaration ) ) (otherlv_9= ';' )? )* otherlv_10= '}' ) | otherlv_11= '.' ) )
553 // InternalProblem.g:219:3: ( (lv_abstract_0_0= 'abstract' ) )? otherlv_1= 'class' ( (lv_name_2_0= ruleIdentifier ) ) (otherlv_3= 'extends' ( ( ruleQualifiedName ) ) (otherlv_5= ',' ( ( ruleQualifiedName ) ) )* )? ( (otherlv_7= '{' ( ( (lv_referenceDeclarations_8_0= ruleReferenceDeclaration ) ) (otherlv_9= ';' )? )* otherlv_10= '}' ) | otherlv_11= '.' )
554 {
555 // InternalProblem.g:219:3: ( (lv_abstract_0_0= 'abstract' ) )?
556 int alt4=2;
557 int LA4_0 = input.LA(1);
558
559 if ( (LA4_0==15) ) {
560 alt4=1;
561 }
562 switch (alt4) {
563 case 1 :
564 // InternalProblem.g:220:4: (lv_abstract_0_0= 'abstract' )
565 {
566 // InternalProblem.g:220:4: (lv_abstract_0_0= 'abstract' )
567 // InternalProblem.g:221:5: lv_abstract_0_0= 'abstract'
568 {
569 lv_abstract_0_0=(Token)match(input,15,FOLLOW_6);
570
571 newLeafNode(lv_abstract_0_0, grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0());
572
573
574 if (current==null) {
575 current = createModelElement(grammarAccess.getClassDeclarationRule());
576 }
577 setWithLastConsumed(current, "abstract", lv_abstract_0_0 != null, "abstract");
578
579
580 }
581
582
583 }
584 break;
585
586 }
587
588 otherlv_1=(Token)match(input,16,FOLLOW_3);
589
590 newLeafNode(otherlv_1, grammarAccess.getClassDeclarationAccess().getClassKeyword_1());
591
592 // InternalProblem.g:237:3: ( (lv_name_2_0= ruleIdentifier ) )
593 // InternalProblem.g:238:4: (lv_name_2_0= ruleIdentifier )
594 {
595 // InternalProblem.g:238:4: (lv_name_2_0= ruleIdentifier )
596 // InternalProblem.g:239:5: lv_name_2_0= ruleIdentifier
597 {
598
599 newCompositeNode(grammarAccess.getClassDeclarationAccess().getNameIdentifierParserRuleCall_2_0());
600
601 pushFollow(FOLLOW_7);
602 lv_name_2_0=ruleIdentifier();
603
604 state._fsp--;
605
606
607 if (current==null) {
608 current = createModelElementForParent(grammarAccess.getClassDeclarationRule());
609 }
610 set(
611 current,
612 "name",
613 lv_name_2_0,
614 "org.eclipse.viatra.solver.language.Problem.Identifier");
615 afterParserOrEnumRuleCall();
616
617
618 }
619
620
621 }
622
623 // InternalProblem.g:256:3: (otherlv_3= 'extends' ( ( ruleQualifiedName ) ) (otherlv_5= ',' ( ( ruleQualifiedName ) ) )* )?
624 int alt6=2;
625 int LA6_0 = input.LA(1);
626
627 if ( (LA6_0==17) ) {
628 alt6=1;
629 }
630 switch (alt6) {
631 case 1 :
632 // InternalProblem.g:257:4: otherlv_3= 'extends' ( ( ruleQualifiedName ) ) (otherlv_5= ',' ( ( ruleQualifiedName ) ) )*
633 {
634 otherlv_3=(Token)match(input,17,FOLLOW_8);
635
636 newLeafNode(otherlv_3, grammarAccess.getClassDeclarationAccess().getExtendsKeyword_3_0());
637
638 // InternalProblem.g:261:4: ( ( ruleQualifiedName ) )
639 // InternalProblem.g:262:5: ( ruleQualifiedName )
640 {
641 // InternalProblem.g:262:5: ( ruleQualifiedName )
642 // InternalProblem.g:263:6: ruleQualifiedName
643 {
644
645 if (current==null) {
646 current = createModelElement(grammarAccess.getClassDeclarationRule());
647 }
648
649
650 newCompositeNode(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationCrossReference_3_1_0());
651
652 pushFollow(FOLLOW_9);
653 ruleQualifiedName();
654
655 state._fsp--;
656
657
658 afterParserOrEnumRuleCall();
659
660
661 }
662
663
664 }
665
666 // InternalProblem.g:277:4: (otherlv_5= ',' ( ( ruleQualifiedName ) ) )*
667 loop5:
668 do {
669 int alt5=2;
670 int LA5_0 = input.LA(1);
671
672 if ( (LA5_0==18) ) {
673 alt5=1;
674 }
675
676
677 switch (alt5) {
678 case 1 :
679 // InternalProblem.g:278:5: otherlv_5= ',' ( ( ruleQualifiedName ) )
680 {
681 otherlv_5=(Token)match(input,18,FOLLOW_8);
682
683 newLeafNode(otherlv_5, grammarAccess.getClassDeclarationAccess().getCommaKeyword_3_2_0());
684
685 // InternalProblem.g:282:5: ( ( ruleQualifiedName ) )
686 // InternalProblem.g:283:6: ( ruleQualifiedName )
687 {
688 // InternalProblem.g:283:6: ( ruleQualifiedName )
689 // InternalProblem.g:284:7: ruleQualifiedName
690 {
691
692 if (current==null) {
693 current = createModelElement(grammarAccess.getClassDeclarationRule());
694 }
695
696
697 newCompositeNode(grammarAccess.getClassDeclarationAccess().getSuperTypesRelationCrossReference_3_2_1_0());
698
699 pushFollow(FOLLOW_9);
700 ruleQualifiedName();
701
702 state._fsp--;
703
704
705 afterParserOrEnumRuleCall();
706
707
708 }
709
710
711 }
712
713
714 }
715 break;
716
717 default :
718 break loop5;
719 }
720 } while (true);
721
722
723 }
724 break;
725
726 }
727
728 // InternalProblem.g:300:3: ( (otherlv_7= '{' ( ( (lv_referenceDeclarations_8_0= ruleReferenceDeclaration ) ) (otherlv_9= ';' )? )* otherlv_10= '}' ) | otherlv_11= '.' )
729 int alt9=2;
730 int LA9_0 = input.LA(1);
731
732 if ( (LA9_0==19) ) {
733 alt9=1;
734 }
735 else if ( (LA9_0==14) ) {
736 alt9=2;
737 }
738 else {
739 NoViableAltException nvae =
740 new NoViableAltException("", 9, 0, input);
741
742 throw nvae;
743 }
744 switch (alt9) {
745 case 1 :
746 // InternalProblem.g:301:4: (otherlv_7= '{' ( ( (lv_referenceDeclarations_8_0= ruleReferenceDeclaration ) ) (otherlv_9= ';' )? )* otherlv_10= '}' )
747 {
748 // InternalProblem.g:301:4: (otherlv_7= '{' ( ( (lv_referenceDeclarations_8_0= ruleReferenceDeclaration ) ) (otherlv_9= ';' )? )* otherlv_10= '}' )
749 // InternalProblem.g:302:5: otherlv_7= '{' ( ( (lv_referenceDeclarations_8_0= ruleReferenceDeclaration ) ) (otherlv_9= ';' )? )* otherlv_10= '}'
750 {
751 otherlv_7=(Token)match(input,19,FOLLOW_10);
752
753 newLeafNode(otherlv_7, grammarAccess.getClassDeclarationAccess().getLeftCurlyBracketKeyword_4_0_0());
754
755 // InternalProblem.g:306:5: ( ( (lv_referenceDeclarations_8_0= ruleReferenceDeclaration ) ) (otherlv_9= ';' )? )*
756 loop8:
757 do {
758 int alt8=2;
759 int LA8_0 = input.LA(1);
760
761 if ( (LA8_0==RULE_ID||LA8_0==RULE_QUOTED_ID||(LA8_0>=23 && LA8_0<=24)||(LA8_0>=42 && LA8_0<=43)) ) {
762 alt8=1;
763 }
764
765
766 switch (alt8) {
767 case 1 :
768 // InternalProblem.g:307:6: ( (lv_referenceDeclarations_8_0= ruleReferenceDeclaration ) ) (otherlv_9= ';' )?
769 {
770 // InternalProblem.g:307:6: ( (lv_referenceDeclarations_8_0= ruleReferenceDeclaration ) )
771 // InternalProblem.g:308:7: (lv_referenceDeclarations_8_0= ruleReferenceDeclaration )
772 {
773 // InternalProblem.g:308:7: (lv_referenceDeclarations_8_0= ruleReferenceDeclaration )
774 // InternalProblem.g:309:8: lv_referenceDeclarations_8_0= ruleReferenceDeclaration
775 {
776
777 newCompositeNode(grammarAccess.getClassDeclarationAccess().getReferenceDeclarationsReferenceDeclarationParserRuleCall_4_0_1_0_0());
778
779 pushFollow(FOLLOW_11);
780 lv_referenceDeclarations_8_0=ruleReferenceDeclaration();
781
782 state._fsp--;
783
784
785 if (current==null) {
786 current = createModelElementForParent(grammarAccess.getClassDeclarationRule());
787 }
788 add(
789 current,
790 "referenceDeclarations",
791 lv_referenceDeclarations_8_0,
792 "org.eclipse.viatra.solver.language.Problem.ReferenceDeclaration");
793 afterParserOrEnumRuleCall();
794
795
796 }
797
798
799 }
800
801 // InternalProblem.g:326:6: (otherlv_9= ';' )?
802 int alt7=2;
803 int LA7_0 = input.LA(1);
804
805 if ( (LA7_0==20) ) {
806 alt7=1;
807 }
808 switch (alt7) {
809 case 1 :
810 // InternalProblem.g:327:7: otherlv_9= ';'
811 {
812 otherlv_9=(Token)match(input,20,FOLLOW_10);
813
814 newLeafNode(otherlv_9, grammarAccess.getClassDeclarationAccess().getSemicolonKeyword_4_0_1_1());
815
816
817 }
818 break;
819
820 }
821
822
823 }
824 break;
825
826 default :
827 break loop8;
828 }
829 } while (true);
830
831 otherlv_10=(Token)match(input,21,FOLLOW_2);
832
833 newLeafNode(otherlv_10, grammarAccess.getClassDeclarationAccess().getRightCurlyBracketKeyword_4_0_2());
834
835
836 }
837
838
839 }
840 break;
841 case 2 :
842 // InternalProblem.g:339:4: otherlv_11= '.'
843 {
844 otherlv_11=(Token)match(input,14,FOLLOW_2);
845
846 newLeafNode(otherlv_11, grammarAccess.getClassDeclarationAccess().getFullStopKeyword_4_1());
847
848
849 }
850 break;
851
852 }
853
854
855 }
856
857
858 }
859
860
861 leaveRule();
862
863 }
864
865 catch (RecognitionException re) {
866 recover(input,re);
867 appendSkippedTokens();
868 }
869 finally {
870 }
871 return current;
872 }
873 // $ANTLR end "ruleClassDeclaration"
874
875
876 // $ANTLR start "entryRuleEnumDeclaration"
877 // InternalProblem.g:348:1: entryRuleEnumDeclaration returns [EObject current=null] : iv_ruleEnumDeclaration= ruleEnumDeclaration EOF ;
878 public final EObject entryRuleEnumDeclaration() throws RecognitionException {
879 EObject current = null;
880
881 EObject iv_ruleEnumDeclaration = null;
882
883
884 try {
885 // InternalProblem.g:348:56: (iv_ruleEnumDeclaration= ruleEnumDeclaration EOF )
886 // InternalProblem.g:349:2: iv_ruleEnumDeclaration= ruleEnumDeclaration EOF
887 {
888 newCompositeNode(grammarAccess.getEnumDeclarationRule());
889 pushFollow(FOLLOW_1);
890 iv_ruleEnumDeclaration=ruleEnumDeclaration();
891
892 state._fsp--;
893
894 current =iv_ruleEnumDeclaration;
895 match(input,EOF,FOLLOW_2);
896
897 }
898
899 }
900
901 catch (RecognitionException re) {
902 recover(input,re);
903 appendSkippedTokens();
904 }
905 finally {
906 }
907 return current;
908 }
909 // $ANTLR end "entryRuleEnumDeclaration"
910
911
912 // $ANTLR start "ruleEnumDeclaration"
913 // InternalProblem.g:355:1: ruleEnumDeclaration returns [EObject current=null] : (otherlv_0= 'enum' ( (lv_name_1_0= ruleIdentifier ) ) ( (otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}' ) | otherlv_9= '.' ) ) ;
914 public final EObject ruleEnumDeclaration() throws RecognitionException {
915 EObject current = null;
916
917 Token otherlv_0=null;
918 Token otherlv_2=null;
919 Token otherlv_4=null;
920 Token otherlv_6=null;
921 Token otherlv_7=null;
922 Token otherlv_8=null;
923 Token otherlv_9=null;
924 AntlrDatatypeRuleToken lv_name_1_0 = null;
925
926 EObject lv_literals_3_0 = null;
927
928 EObject lv_literals_5_0 = null;
929
930
931
932 enterRule();
933
934 try {
935 // InternalProblem.g:361:2: ( (otherlv_0= 'enum' ( (lv_name_1_0= ruleIdentifier ) ) ( (otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}' ) | otherlv_9= '.' ) ) )
936 // InternalProblem.g:362:2: (otherlv_0= 'enum' ( (lv_name_1_0= ruleIdentifier ) ) ( (otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}' ) | otherlv_9= '.' ) )
937 {
938 // InternalProblem.g:362:2: (otherlv_0= 'enum' ( (lv_name_1_0= ruleIdentifier ) ) ( (otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}' ) | otherlv_9= '.' ) )
939 // InternalProblem.g:363:3: otherlv_0= 'enum' ( (lv_name_1_0= ruleIdentifier ) ) ( (otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}' ) | otherlv_9= '.' )
940 {
941 otherlv_0=(Token)match(input,22,FOLLOW_3);
942
943 newLeafNode(otherlv_0, grammarAccess.getEnumDeclarationAccess().getEnumKeyword_0());
944
945 // InternalProblem.g:367:3: ( (lv_name_1_0= ruleIdentifier ) )
946 // InternalProblem.g:368:4: (lv_name_1_0= ruleIdentifier )
947 {
948 // InternalProblem.g:368:4: (lv_name_1_0= ruleIdentifier )
949 // InternalProblem.g:369:5: lv_name_1_0= ruleIdentifier
950 {
951
952 newCompositeNode(grammarAccess.getEnumDeclarationAccess().getNameIdentifierParserRuleCall_1_0());
953
954 pushFollow(FOLLOW_12);
955 lv_name_1_0=ruleIdentifier();
956
957 state._fsp--;
958
959
960 if (current==null) {
961 current = createModelElementForParent(grammarAccess.getEnumDeclarationRule());
962 }
963 set(
964 current,
965 "name",
966 lv_name_1_0,
967 "org.eclipse.viatra.solver.language.Problem.Identifier");
968 afterParserOrEnumRuleCall();
969
970
971 }
972
973
974 }
975
976 // InternalProblem.g:386:3: ( (otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}' ) | otherlv_9= '.' )
977 int alt13=2;
978 int LA13_0 = input.LA(1);
979
980 if ( (LA13_0==19) ) {
981 alt13=1;
982 }
983 else if ( (LA13_0==14) ) {
984 alt13=2;
985 }
986 else {
987 NoViableAltException nvae =
988 new NoViableAltException("", 13, 0, input);
989
990 throw nvae;
991 }
992 switch (alt13) {
993 case 1 :
994 // InternalProblem.g:387:4: (otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}' )
995 {
996 // InternalProblem.g:387:4: (otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}' )
997 // InternalProblem.g:388:5: otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}'
998 {
999 otherlv_2=(Token)match(input,19,FOLLOW_13);
1000
1001 newLeafNode(otherlv_2, grammarAccess.getEnumDeclarationAccess().getLeftCurlyBracketKeyword_2_0_0());
1002
1003 // InternalProblem.g:392:5: ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )?
1004 int alt12=2;
1005 int LA12_0 = input.LA(1);
1006
1007 if ( (LA12_0==RULE_ID||(LA12_0>=42 && LA12_0<=43)) ) {
1008 alt12=1;
1009 }
1010 switch (alt12) {
1011 case 1 :
1012 // InternalProblem.g:393:6: ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )?
1013 {
1014 // InternalProblem.g:393:6: ( (lv_literals_3_0= ruleEnumLiteral ) )
1015 // InternalProblem.g:394:7: (lv_literals_3_0= ruleEnumLiteral )
1016 {
1017 // InternalProblem.g:394:7: (lv_literals_3_0= ruleEnumLiteral )
1018 // InternalProblem.g:395:8: lv_literals_3_0= ruleEnumLiteral
1019 {
1020
1021 newCompositeNode(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_0_0());
1022
1023 pushFollow(FOLLOW_14);
1024 lv_literals_3_0=ruleEnumLiteral();
1025
1026 state._fsp--;
1027
1028
1029 if (current==null) {
1030 current = createModelElementForParent(grammarAccess.getEnumDeclarationRule());
1031 }
1032 add(
1033 current,
1034 "literals",
1035 lv_literals_3_0,
1036 "org.eclipse.viatra.solver.language.Problem.EnumLiteral");
1037 afterParserOrEnumRuleCall();
1038
1039
1040 }
1041
1042
1043 }
1044
1045 // InternalProblem.g:412:6: (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )*
1046 loop10:
1047 do {
1048 int alt10=2;
1049 int LA10_0 = input.LA(1);
1050
1051 if ( (LA10_0==18) ) {
1052 int LA10_1 = input.LA(2);
1053
1054 if ( (LA10_1==RULE_ID||(LA10_1>=42 && LA10_1<=43)) ) {
1055 alt10=1;
1056 }
1057
1058
1059 }
1060
1061
1062 switch (alt10) {
1063 case 1 :
1064 // InternalProblem.g:413:7: otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) )
1065 {
1066 otherlv_4=(Token)match(input,18,FOLLOW_3);
1067
1068 newLeafNode(otherlv_4, grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_1_0());
1069
1070 // InternalProblem.g:417:7: ( (lv_literals_5_0= ruleEnumLiteral ) )
1071 // InternalProblem.g:418:8: (lv_literals_5_0= ruleEnumLiteral )
1072 {
1073 // InternalProblem.g:418:8: (lv_literals_5_0= ruleEnumLiteral )
1074 // InternalProblem.g:419:9: lv_literals_5_0= ruleEnumLiteral
1075 {
1076
1077 newCompositeNode(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0());
1078
1079 pushFollow(FOLLOW_14);
1080 lv_literals_5_0=ruleEnumLiteral();
1081
1082 state._fsp--;
1083
1084
1085 if (current==null) {
1086 current = createModelElementForParent(grammarAccess.getEnumDeclarationRule());
1087 }
1088 add(
1089 current,
1090 "literals",
1091 lv_literals_5_0,
1092 "org.eclipse.viatra.solver.language.Problem.EnumLiteral");
1093 afterParserOrEnumRuleCall();
1094
1095
1096 }
1097
1098
1099 }
1100
1101
1102 }
1103 break;
1104
1105 default :
1106 break loop10;
1107 }
1108 } while (true);
1109
1110 // InternalProblem.g:437:6: (otherlv_6= ',' | otherlv_7= ';' )?
1111 int alt11=3;
1112 int LA11_0 = input.LA(1);
1113
1114 if ( (LA11_0==18) ) {
1115 alt11=1;
1116 }
1117 else if ( (LA11_0==20) ) {
1118 alt11=2;
1119 }
1120 switch (alt11) {
1121 case 1 :
1122 // InternalProblem.g:438:7: otherlv_6= ','
1123 {
1124 otherlv_6=(Token)match(input,18,FOLLOW_15);
1125
1126 newLeafNode(otherlv_6, grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_2_0());
1127
1128
1129 }
1130 break;
1131 case 2 :
1132 // InternalProblem.g:443:7: otherlv_7= ';'
1133 {
1134 otherlv_7=(Token)match(input,20,FOLLOW_15);
1135
1136 newLeafNode(otherlv_7, grammarAccess.getEnumDeclarationAccess().getSemicolonKeyword_2_0_1_2_1());
1137
1138
1139 }
1140 break;
1141
1142 }
1143
1144
1145 }
1146 break;
1147
1148 }
1149
1150 otherlv_8=(Token)match(input,21,FOLLOW_2);
1151
1152 newLeafNode(otherlv_8, grammarAccess.getEnumDeclarationAccess().getRightCurlyBracketKeyword_2_0_2());
1153
1154
1155 }
1156
1157
1158 }
1159 break;
1160 case 2 :
1161 // InternalProblem.g:455:4: otherlv_9= '.'
1162 {
1163 otherlv_9=(Token)match(input,14,FOLLOW_2);
1164
1165 newLeafNode(otherlv_9, grammarAccess.getEnumDeclarationAccess().getFullStopKeyword_2_1());
1166
1167
1168 }
1169 break;
1170
1171 }
1172
1173
1174 }
1175
1176
1177 }
1178
1179
1180 leaveRule();
1181
1182 }
1183
1184 catch (RecognitionException re) {
1185 recover(input,re);
1186 appendSkippedTokens();
1187 }
1188 finally {
1189 }
1190 return current;
1191 }
1192 // $ANTLR end "ruleEnumDeclaration"
1193
1194
1195 // $ANTLR start "entryRuleEnumLiteral"
1196 // InternalProblem.g:464:1: entryRuleEnumLiteral returns [EObject current=null] : iv_ruleEnumLiteral= ruleEnumLiteral EOF ;
1197 public final EObject entryRuleEnumLiteral() throws RecognitionException {
1198 EObject current = null;
1199
1200 EObject iv_ruleEnumLiteral = null;
1201
1202
1203 try {
1204 // InternalProblem.g:464:52: (iv_ruleEnumLiteral= ruleEnumLiteral EOF )
1205 // InternalProblem.g:465:2: iv_ruleEnumLiteral= ruleEnumLiteral EOF
1206 {
1207 newCompositeNode(grammarAccess.getEnumLiteralRule());
1208 pushFollow(FOLLOW_1);
1209 iv_ruleEnumLiteral=ruleEnumLiteral();
1210
1211 state._fsp--;
1212
1213 current =iv_ruleEnumLiteral;
1214 match(input,EOF,FOLLOW_2);
1215
1216 }
1217
1218 }
1219
1220 catch (RecognitionException re) {
1221 recover(input,re);
1222 appendSkippedTokens();
1223 }
1224 finally {
1225 }
1226 return current;
1227 }
1228 // $ANTLR end "entryRuleEnumLiteral"
1229
1230
1231 // $ANTLR start "ruleEnumLiteral"
1232 // InternalProblem.g:471:1: ruleEnumLiteral returns [EObject current=null] : ( (lv_name_0_0= ruleIdentifier ) ) ;
1233 public final EObject ruleEnumLiteral() throws RecognitionException {
1234 EObject current = null;
1235
1236 AntlrDatatypeRuleToken lv_name_0_0 = null;
1237
1238
1239
1240 enterRule();
1241
1242 try {
1243 // InternalProblem.g:477:2: ( ( (lv_name_0_0= ruleIdentifier ) ) )
1244 // InternalProblem.g:478:2: ( (lv_name_0_0= ruleIdentifier ) )
1245 {
1246 // InternalProblem.g:478:2: ( (lv_name_0_0= ruleIdentifier ) )
1247 // InternalProblem.g:479:3: (lv_name_0_0= ruleIdentifier )
1248 {
1249 // InternalProblem.g:479:3: (lv_name_0_0= ruleIdentifier )
1250 // InternalProblem.g:480:4: lv_name_0_0= ruleIdentifier
1251 {
1252
1253 newCompositeNode(grammarAccess.getEnumLiteralAccess().getNameIdentifierParserRuleCall_0());
1254
1255 pushFollow(FOLLOW_2);
1256 lv_name_0_0=ruleIdentifier();
1257
1258 state._fsp--;
1259
1260
1261 if (current==null) {
1262 current = createModelElementForParent(grammarAccess.getEnumLiteralRule());
1263 }
1264 set(
1265 current,
1266 "name",
1267 lv_name_0_0,
1268 "org.eclipse.viatra.solver.language.Problem.Identifier");
1269 afterParserOrEnumRuleCall();
1270
1271
1272 }
1273
1274
1275 }
1276
1277
1278 }
1279
1280
1281 leaveRule();
1282
1283 }
1284
1285 catch (RecognitionException re) {
1286 recover(input,re);
1287 appendSkippedTokens();
1288 }
1289 finally {
1290 }
1291 return current;
1292 }
1293 // $ANTLR end "ruleEnumLiteral"
1294
1295
1296 // $ANTLR start "entryRuleReferenceDeclaration"
1297 // InternalProblem.g:500:1: entryRuleReferenceDeclaration returns [EObject current=null] : iv_ruleReferenceDeclaration= ruleReferenceDeclaration EOF ;
1298 public final EObject entryRuleReferenceDeclaration() throws RecognitionException {
1299 EObject current = null;
1300
1301 EObject iv_ruleReferenceDeclaration = null;
1302
1303
1304 try {
1305 // InternalProblem.g:500:61: (iv_ruleReferenceDeclaration= ruleReferenceDeclaration EOF )
1306 // InternalProblem.g:501:2: iv_ruleReferenceDeclaration= ruleReferenceDeclaration EOF
1307 {
1308 newCompositeNode(grammarAccess.getReferenceDeclarationRule());
1309 pushFollow(FOLLOW_1);
1310 iv_ruleReferenceDeclaration=ruleReferenceDeclaration();
1311
1312 state._fsp--;
1313
1314 current =iv_ruleReferenceDeclaration;
1315 match(input,EOF,FOLLOW_2);
1316
1317 }
1318
1319 }
1320
1321 catch (RecognitionException re) {
1322 recover(input,re);
1323 appendSkippedTokens();
1324 }
1325 finally {
1326 }
1327 return current;
1328 }
1329 // $ANTLR end "entryRuleReferenceDeclaration"
1330
1331
1332 // $ANTLR start "ruleReferenceDeclaration"
1333 // InternalProblem.g:507:1: ruleReferenceDeclaration returns [EObject current=null] : ( ( ( (lv_containment_0_0= 'contains' ) ) | otherlv_1= 'refers' )? ( ( ruleQualifiedName ) ) (otherlv_3= '[' ( (lv_multiplicity_4_0= ruleMultiplicity ) ) otherlv_5= ']' )? ( (lv_name_6_0= ruleIdentifier ) ) (otherlv_7= 'opposite' ( ( ruleQualifiedName ) ) )? ) ;
1334 public final EObject ruleReferenceDeclaration() throws RecognitionException {
1335 EObject current = null;
1336
1337 Token lv_containment_0_0=null;
1338 Token otherlv_1=null;
1339 Token otherlv_3=null;
1340 Token otherlv_5=null;
1341 Token otherlv_7=null;
1342 EObject lv_multiplicity_4_0 = null;
1343
1344 AntlrDatatypeRuleToken lv_name_6_0 = null;
1345
1346
1347
1348 enterRule();
1349
1350 try {
1351 // InternalProblem.g:513:2: ( ( ( ( (lv_containment_0_0= 'contains' ) ) | otherlv_1= 'refers' )? ( ( ruleQualifiedName ) ) (otherlv_3= '[' ( (lv_multiplicity_4_0= ruleMultiplicity ) ) otherlv_5= ']' )? ( (lv_name_6_0= ruleIdentifier ) ) (otherlv_7= 'opposite' ( ( ruleQualifiedName ) ) )? ) )
1352 // InternalProblem.g:514:2: ( ( ( (lv_containment_0_0= 'contains' ) ) | otherlv_1= 'refers' )? ( ( ruleQualifiedName ) ) (otherlv_3= '[' ( (lv_multiplicity_4_0= ruleMultiplicity ) ) otherlv_5= ']' )? ( (lv_name_6_0= ruleIdentifier ) ) (otherlv_7= 'opposite' ( ( ruleQualifiedName ) ) )? )
1353 {
1354 // InternalProblem.g:514:2: ( ( ( (lv_containment_0_0= 'contains' ) ) | otherlv_1= 'refers' )? ( ( ruleQualifiedName ) ) (otherlv_3= '[' ( (lv_multiplicity_4_0= ruleMultiplicity ) ) otherlv_5= ']' )? ( (lv_name_6_0= ruleIdentifier ) ) (otherlv_7= 'opposite' ( ( ruleQualifiedName ) ) )? )
1355 // InternalProblem.g:515:3: ( ( (lv_containment_0_0= 'contains' ) ) | otherlv_1= 'refers' )? ( ( ruleQualifiedName ) ) (otherlv_3= '[' ( (lv_multiplicity_4_0= ruleMultiplicity ) ) otherlv_5= ']' )? ( (lv_name_6_0= ruleIdentifier ) ) (otherlv_7= 'opposite' ( ( ruleQualifiedName ) ) )?
1356 {
1357 // InternalProblem.g:515:3: ( ( (lv_containment_0_0= 'contains' ) ) | otherlv_1= 'refers' )?
1358 int alt14=3;
1359 int LA14_0 = input.LA(1);
1360
1361 if ( (LA14_0==23) ) {
1362 alt14=1;
1363 }
1364 else if ( (LA14_0==24) ) {
1365 alt14=2;
1366 }
1367 switch (alt14) {
1368 case 1 :
1369 // InternalProblem.g:516:4: ( (lv_containment_0_0= 'contains' ) )
1370 {
1371 // InternalProblem.g:516:4: ( (lv_containment_0_0= 'contains' ) )
1372 // InternalProblem.g:517:5: (lv_containment_0_0= 'contains' )
1373 {
1374 // InternalProblem.g:517:5: (lv_containment_0_0= 'contains' )
1375 // InternalProblem.g:518:6: lv_containment_0_0= 'contains'
1376 {
1377 lv_containment_0_0=(Token)match(input,23,FOLLOW_8);
1378
1379 newLeafNode(lv_containment_0_0, grammarAccess.getReferenceDeclarationAccess().getContainmentContainsKeyword_0_0_0());
1380
1381
1382 if (current==null) {
1383 current = createModelElement(grammarAccess.getReferenceDeclarationRule());
1384 }
1385 setWithLastConsumed(current, "containment", lv_containment_0_0 != null, "contains");
1386
1387
1388 }
1389
1390
1391 }
1392
1393
1394 }
1395 break;
1396 case 2 :
1397 // InternalProblem.g:531:4: otherlv_1= 'refers'
1398 {
1399 otherlv_1=(Token)match(input,24,FOLLOW_8);
1400
1401 newLeafNode(otherlv_1, grammarAccess.getReferenceDeclarationAccess().getRefersKeyword_0_1());
1402
1403
1404 }
1405 break;
1406
1407 }
1408
1409 // InternalProblem.g:536:3: ( ( ruleQualifiedName ) )
1410 // InternalProblem.g:537:4: ( ruleQualifiedName )
1411 {
1412 // InternalProblem.g:537:4: ( ruleQualifiedName )
1413 // InternalProblem.g:538:5: ruleQualifiedName
1414 {
1415
1416 if (current==null) {
1417 current = createModelElement(grammarAccess.getReferenceDeclarationRule());
1418 }
1419
1420
1421 newCompositeNode(grammarAccess.getReferenceDeclarationAccess().getReferenceTypeRelationCrossReference_1_0());
1422
1423 pushFollow(FOLLOW_16);
1424 ruleQualifiedName();
1425
1426 state._fsp--;
1427
1428
1429 afterParserOrEnumRuleCall();
1430
1431
1432 }
1433
1434
1435 }
1436
1437 // InternalProblem.g:552:3: (otherlv_3= '[' ( (lv_multiplicity_4_0= ruleMultiplicity ) ) otherlv_5= ']' )?
1438 int alt15=2;
1439 int LA15_0 = input.LA(1);
1440
1441 if ( (LA15_0==25) ) {
1442 alt15=1;
1443 }
1444 switch (alt15) {
1445 case 1 :
1446 // InternalProblem.g:553:4: otherlv_3= '[' ( (lv_multiplicity_4_0= ruleMultiplicity ) ) otherlv_5= ']'
1447 {
1448 otherlv_3=(Token)match(input,25,FOLLOW_17);
1449
1450 newLeafNode(otherlv_3, grammarAccess.getReferenceDeclarationAccess().getLeftSquareBracketKeyword_2_0());
1451
1452 // InternalProblem.g:557:4: ( (lv_multiplicity_4_0= ruleMultiplicity ) )
1453 // InternalProblem.g:558:5: (lv_multiplicity_4_0= ruleMultiplicity )
1454 {
1455 // InternalProblem.g:558:5: (lv_multiplicity_4_0= ruleMultiplicity )
1456 // InternalProblem.g:559:6: lv_multiplicity_4_0= ruleMultiplicity
1457 {
1458
1459 newCompositeNode(grammarAccess.getReferenceDeclarationAccess().getMultiplicityMultiplicityParserRuleCall_2_1_0());
1460
1461 pushFollow(FOLLOW_18);
1462 lv_multiplicity_4_0=ruleMultiplicity();
1463
1464 state._fsp--;
1465
1466
1467 if (current==null) {
1468 current = createModelElementForParent(grammarAccess.getReferenceDeclarationRule());
1469 }
1470 set(
1471 current,
1472 "multiplicity",
1473 lv_multiplicity_4_0,
1474 "org.eclipse.viatra.solver.language.Problem.Multiplicity");
1475 afterParserOrEnumRuleCall();
1476
1477
1478 }
1479
1480
1481 }
1482
1483 otherlv_5=(Token)match(input,26,FOLLOW_3);
1484
1485 newLeafNode(otherlv_5, grammarAccess.getReferenceDeclarationAccess().getRightSquareBracketKeyword_2_2());
1486
1487
1488 }
1489 break;
1490
1491 }
1492
1493 // InternalProblem.g:581:3: ( (lv_name_6_0= ruleIdentifier ) )
1494 // InternalProblem.g:582:4: (lv_name_6_0= ruleIdentifier )
1495 {
1496 // InternalProblem.g:582:4: (lv_name_6_0= ruleIdentifier )
1497 // InternalProblem.g:583:5: lv_name_6_0= ruleIdentifier
1498 {
1499
1500 newCompositeNode(grammarAccess.getReferenceDeclarationAccess().getNameIdentifierParserRuleCall_3_0());
1501
1502 pushFollow(FOLLOW_19);
1503 lv_name_6_0=ruleIdentifier();
1504
1505 state._fsp--;
1506
1507
1508 if (current==null) {
1509 current = createModelElementForParent(grammarAccess.getReferenceDeclarationRule());
1510 }
1511 set(
1512 current,
1513 "name",
1514 lv_name_6_0,
1515 "org.eclipse.viatra.solver.language.Problem.Identifier");
1516 afterParserOrEnumRuleCall();
1517
1518
1519 }
1520
1521
1522 }
1523
1524 // InternalProblem.g:600:3: (otherlv_7= 'opposite' ( ( ruleQualifiedName ) ) )?
1525 int alt16=2;
1526 int LA16_0 = input.LA(1);
1527
1528 if ( (LA16_0==27) ) {
1529 alt16=1;
1530 }
1531 switch (alt16) {
1532 case 1 :
1533 // InternalProblem.g:601:4: otherlv_7= 'opposite' ( ( ruleQualifiedName ) )
1534 {
1535 otherlv_7=(Token)match(input,27,FOLLOW_8);
1536
1537 newLeafNode(otherlv_7, grammarAccess.getReferenceDeclarationAccess().getOppositeKeyword_4_0());
1538
1539 // InternalProblem.g:605:4: ( ( ruleQualifiedName ) )
1540 // InternalProblem.g:606:5: ( ruleQualifiedName )
1541 {
1542 // InternalProblem.g:606:5: ( ruleQualifiedName )
1543 // InternalProblem.g:607:6: ruleQualifiedName
1544 {
1545
1546 if (current==null) {
1547 current = createModelElement(grammarAccess.getReferenceDeclarationRule());
1548 }
1549
1550
1551 newCompositeNode(grammarAccess.getReferenceDeclarationAccess().getOppositeReferenceDeclarationCrossReference_4_1_0());
1552
1553 pushFollow(FOLLOW_2);
1554 ruleQualifiedName();
1555
1556 state._fsp--;
1557
1558
1559 afterParserOrEnumRuleCall();
1560
1561
1562 }
1563
1564
1565 }
1566
1567
1568 }
1569 break;
1570
1571 }
1572
1573
1574 }
1575
1576
1577 }
1578
1579
1580 leaveRule();
1581
1582 }
1583
1584 catch (RecognitionException re) {
1585 recover(input,re);
1586 appendSkippedTokens();
1587 }
1588 finally {
1589 }
1590 return current;
1591 }
1592 // $ANTLR end "ruleReferenceDeclaration"
1593
1594
1595 // $ANTLR start "entryRulePredicateDefinition"
1596 // InternalProblem.g:626:1: entryRulePredicateDefinition returns [EObject current=null] : iv_rulePredicateDefinition= rulePredicateDefinition EOF ;
1597 public final EObject entryRulePredicateDefinition() throws RecognitionException {
1598 EObject current = null;
1599
1600 EObject iv_rulePredicateDefinition = null;
1601
1602
1603 try {
1604 // InternalProblem.g:626:60: (iv_rulePredicateDefinition= rulePredicateDefinition EOF )
1605 // InternalProblem.g:627:2: iv_rulePredicateDefinition= rulePredicateDefinition EOF
1606 {
1607 newCompositeNode(grammarAccess.getPredicateDefinitionRule());
1608 pushFollow(FOLLOW_1);
1609 iv_rulePredicateDefinition=rulePredicateDefinition();
1610
1611 state._fsp--;
1612
1613 current =iv_rulePredicateDefinition;
1614 match(input,EOF,FOLLOW_2);
1615
1616 }
1617
1618 }
1619
1620 catch (RecognitionException re) {
1621 recover(input,re);
1622 appendSkippedTokens();
1623 }
1624 finally {
1625 }
1626 return current;
1627 }
1628 // $ANTLR end "entryRulePredicateDefinition"
1629
1630
1631 // $ANTLR start "rulePredicateDefinition"
1632 // InternalProblem.g:633:1: rulePredicateDefinition returns [EObject current=null] : ( ( ( ( (lv_error_0_0= 'error' ) ) (otherlv_1= 'pred' )? ) | otherlv_2= 'pred' ) ( (lv_name_3_0= ruleIdentifier ) ) otherlv_4= '(' ( ( (lv_parameters_5_0= ruleParameter ) ) (otherlv_6= ',' ( (lv_parameters_7_0= ruleParameter ) ) )* )? otherlv_8= ')' (otherlv_9= ':-' ( (lv_bodies_10_0= ruleConjunction ) ) (otherlv_11= ';' ( (lv_bodies_12_0= ruleConjunction ) ) )* )? otherlv_13= '.' ) ;
1633 public final EObject rulePredicateDefinition() throws RecognitionException {
1634 EObject current = null;
1635
1636 Token lv_error_0_0=null;
1637 Token otherlv_1=null;
1638 Token otherlv_2=null;
1639 Token otherlv_4=null;
1640 Token otherlv_6=null;
1641 Token otherlv_8=null;
1642 Token otherlv_9=null;
1643 Token otherlv_11=null;
1644 Token otherlv_13=null;
1645 AntlrDatatypeRuleToken lv_name_3_0 = null;
1646
1647 EObject lv_parameters_5_0 = null;
1648
1649 EObject lv_parameters_7_0 = null;
1650
1651 EObject lv_bodies_10_0 = null;
1652
1653 EObject lv_bodies_12_0 = null;
1654
1655
1656
1657 enterRule();
1658
1659 try {
1660 // InternalProblem.g:639:2: ( ( ( ( ( (lv_error_0_0= 'error' ) ) (otherlv_1= 'pred' )? ) | otherlv_2= 'pred' ) ( (lv_name_3_0= ruleIdentifier ) ) otherlv_4= '(' ( ( (lv_parameters_5_0= ruleParameter ) ) (otherlv_6= ',' ( (lv_parameters_7_0= ruleParameter ) ) )* )? otherlv_8= ')' (otherlv_9= ':-' ( (lv_bodies_10_0= ruleConjunction ) ) (otherlv_11= ';' ( (lv_bodies_12_0= ruleConjunction ) ) )* )? otherlv_13= '.' ) )
1661 // InternalProblem.g:640:2: ( ( ( ( (lv_error_0_0= 'error' ) ) (otherlv_1= 'pred' )? ) | otherlv_2= 'pred' ) ( (lv_name_3_0= ruleIdentifier ) ) otherlv_4= '(' ( ( (lv_parameters_5_0= ruleParameter ) ) (otherlv_6= ',' ( (lv_parameters_7_0= ruleParameter ) ) )* )? otherlv_8= ')' (otherlv_9= ':-' ( (lv_bodies_10_0= ruleConjunction ) ) (otherlv_11= ';' ( (lv_bodies_12_0= ruleConjunction ) ) )* )? otherlv_13= '.' )
1662 {
1663 // InternalProblem.g:640:2: ( ( ( ( (lv_error_0_0= 'error' ) ) (otherlv_1= 'pred' )? ) | otherlv_2= 'pred' ) ( (lv_name_3_0= ruleIdentifier ) ) otherlv_4= '(' ( ( (lv_parameters_5_0= ruleParameter ) ) (otherlv_6= ',' ( (lv_parameters_7_0= ruleParameter ) ) )* )? otherlv_8= ')' (otherlv_9= ':-' ( (lv_bodies_10_0= ruleConjunction ) ) (otherlv_11= ';' ( (lv_bodies_12_0= ruleConjunction ) ) )* )? otherlv_13= '.' )
1664 // InternalProblem.g:641:3: ( ( ( (lv_error_0_0= 'error' ) ) (otherlv_1= 'pred' )? ) | otherlv_2= 'pred' ) ( (lv_name_3_0= ruleIdentifier ) ) otherlv_4= '(' ( ( (lv_parameters_5_0= ruleParameter ) ) (otherlv_6= ',' ( (lv_parameters_7_0= ruleParameter ) ) )* )? otherlv_8= ')' (otherlv_9= ':-' ( (lv_bodies_10_0= ruleConjunction ) ) (otherlv_11= ';' ( (lv_bodies_12_0= ruleConjunction ) ) )* )? otherlv_13= '.'
1665 {
1666 // InternalProblem.g:641:3: ( ( ( (lv_error_0_0= 'error' ) ) (otherlv_1= 'pred' )? ) | otherlv_2= 'pred' )
1667 int alt18=2;
1668 int LA18_0 = input.LA(1);
1669
1670 if ( (LA18_0==28) ) {
1671 alt18=1;
1672 }
1673 else if ( (LA18_0==29) ) {
1674 alt18=2;
1675 }
1676 else {
1677 NoViableAltException nvae =
1678 new NoViableAltException("", 18, 0, input);
1679
1680 throw nvae;
1681 }
1682 switch (alt18) {
1683 case 1 :
1684 // InternalProblem.g:642:4: ( ( (lv_error_0_0= 'error' ) ) (otherlv_1= 'pred' )? )
1685 {
1686 // InternalProblem.g:642:4: ( ( (lv_error_0_0= 'error' ) ) (otherlv_1= 'pred' )? )
1687 // InternalProblem.g:643:5: ( (lv_error_0_0= 'error' ) ) (otherlv_1= 'pred' )?
1688 {
1689 // InternalProblem.g:643:5: ( (lv_error_0_0= 'error' ) )
1690 // InternalProblem.g:644:6: (lv_error_0_0= 'error' )
1691 {
1692 // InternalProblem.g:644:6: (lv_error_0_0= 'error' )
1693 // InternalProblem.g:645:7: lv_error_0_0= 'error'
1694 {
1695 lv_error_0_0=(Token)match(input,28,FOLLOW_20);
1696
1697 newLeafNode(lv_error_0_0, grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_0_0_0());
1698
1699
1700 if (current==null) {
1701 current = createModelElement(grammarAccess.getPredicateDefinitionRule());
1702 }
1703 setWithLastConsumed(current, "error", lv_error_0_0 != null, "error");
1704
1705
1706 }
1707
1708
1709 }
1710
1711 // InternalProblem.g:657:5: (otherlv_1= 'pred' )?
1712 int alt17=2;
1713 int LA17_0 = input.LA(1);
1714
1715 if ( (LA17_0==29) ) {
1716 alt17=1;
1717 }
1718 switch (alt17) {
1719 case 1 :
1720 // InternalProblem.g:658:6: otherlv_1= 'pred'
1721 {
1722 otherlv_1=(Token)match(input,29,FOLLOW_3);
1723
1724 newLeafNode(otherlv_1, grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_0_1());
1725
1726
1727 }
1728 break;
1729
1730 }
1731
1732
1733 }
1734
1735
1736 }
1737 break;
1738 case 2 :
1739 // InternalProblem.g:665:4: otherlv_2= 'pred'
1740 {
1741 otherlv_2=(Token)match(input,29,FOLLOW_3);
1742
1743 newLeafNode(otherlv_2, grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_1());
1744
1745
1746 }
1747 break;
1748
1749 }
1750
1751 // InternalProblem.g:670:3: ( (lv_name_3_0= ruleIdentifier ) )
1752 // InternalProblem.g:671:4: (lv_name_3_0= ruleIdentifier )
1753 {
1754 // InternalProblem.g:671:4: (lv_name_3_0= ruleIdentifier )
1755 // InternalProblem.g:672:5: lv_name_3_0= ruleIdentifier
1756 {
1757
1758 newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getNameIdentifierParserRuleCall_1_0());
1759
1760 pushFollow(FOLLOW_21);
1761 lv_name_3_0=ruleIdentifier();
1762
1763 state._fsp--;
1764
1765
1766 if (current==null) {
1767 current = createModelElementForParent(grammarAccess.getPredicateDefinitionRule());
1768 }
1769 set(
1770 current,
1771 "name",
1772 lv_name_3_0,
1773 "org.eclipse.viatra.solver.language.Problem.Identifier");
1774 afterParserOrEnumRuleCall();
1775
1776
1777 }
1778
1779
1780 }
1781
1782 otherlv_4=(Token)match(input,30,FOLLOW_22);
1783
1784 newLeafNode(otherlv_4, grammarAccess.getPredicateDefinitionAccess().getLeftParenthesisKeyword_2());
1785
1786 // InternalProblem.g:693:3: ( ( (lv_parameters_5_0= ruleParameter ) ) (otherlv_6= ',' ( (lv_parameters_7_0= ruleParameter ) ) )* )?
1787 int alt20=2;
1788 int LA20_0 = input.LA(1);
1789
1790 if ( (LA20_0==RULE_ID||LA20_0==RULE_QUOTED_ID||(LA20_0>=42 && LA20_0<=43)) ) {
1791 alt20=1;
1792 }
1793 switch (alt20) {
1794 case 1 :
1795 // InternalProblem.g:694:4: ( (lv_parameters_5_0= ruleParameter ) ) (otherlv_6= ',' ( (lv_parameters_7_0= ruleParameter ) ) )*
1796 {
1797 // InternalProblem.g:694:4: ( (lv_parameters_5_0= ruleParameter ) )
1798 // InternalProblem.g:695:5: (lv_parameters_5_0= ruleParameter )
1799 {
1800 // InternalProblem.g:695:5: (lv_parameters_5_0= ruleParameter )
1801 // InternalProblem.g:696:6: lv_parameters_5_0= ruleParameter
1802 {
1803
1804 newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getParametersParameterParserRuleCall_3_0_0());
1805
1806 pushFollow(FOLLOW_23);
1807 lv_parameters_5_0=ruleParameter();
1808
1809 state._fsp--;
1810
1811
1812 if (current==null) {
1813 current = createModelElementForParent(grammarAccess.getPredicateDefinitionRule());
1814 }
1815 add(
1816 current,
1817 "parameters",
1818 lv_parameters_5_0,
1819 "org.eclipse.viatra.solver.language.Problem.Parameter");
1820 afterParserOrEnumRuleCall();
1821
1822
1823 }
1824
1825
1826 }
1827
1828 // InternalProblem.g:713:4: (otherlv_6= ',' ( (lv_parameters_7_0= ruleParameter ) ) )*
1829 loop19:
1830 do {
1831 int alt19=2;
1832 int LA19_0 = input.LA(1);
1833
1834 if ( (LA19_0==18) ) {
1835 alt19=1;
1836 }
1837
1838
1839 switch (alt19) {
1840 case 1 :
1841 // InternalProblem.g:714:5: otherlv_6= ',' ( (lv_parameters_7_0= ruleParameter ) )
1842 {
1843 otherlv_6=(Token)match(input,18,FOLLOW_8);
1844
1845 newLeafNode(otherlv_6, grammarAccess.getPredicateDefinitionAccess().getCommaKeyword_3_1_0());
1846
1847 // InternalProblem.g:718:5: ( (lv_parameters_7_0= ruleParameter ) )
1848 // InternalProblem.g:719:6: (lv_parameters_7_0= ruleParameter )
1849 {
1850 // InternalProblem.g:719:6: (lv_parameters_7_0= ruleParameter )
1851 // InternalProblem.g:720:7: lv_parameters_7_0= ruleParameter
1852 {
1853
1854 newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getParametersParameterParserRuleCall_3_1_1_0());
1855
1856 pushFollow(FOLLOW_23);
1857 lv_parameters_7_0=ruleParameter();
1858
1859 state._fsp--;
1860
1861
1862 if (current==null) {
1863 current = createModelElementForParent(grammarAccess.getPredicateDefinitionRule());
1864 }
1865 add(
1866 current,
1867 "parameters",
1868 lv_parameters_7_0,
1869 "org.eclipse.viatra.solver.language.Problem.Parameter");
1870 afterParserOrEnumRuleCall();
1871
1872
1873 }
1874
1875
1876 }
1877
1878
1879 }
1880 break;
1881
1882 default :
1883 break loop19;
1884 }
1885 } while (true);
1886
1887
1888 }
1889 break;
1890
1891 }
1892
1893 otherlv_8=(Token)match(input,31,FOLLOW_24);
1894
1895 newLeafNode(otherlv_8, grammarAccess.getPredicateDefinitionAccess().getRightParenthesisKeyword_4());
1896
1897 // InternalProblem.g:743:3: (otherlv_9= ':-' ( (lv_bodies_10_0= ruleConjunction ) ) (otherlv_11= ';' ( (lv_bodies_12_0= ruleConjunction ) ) )* )?
1898 int alt22=2;
1899 int LA22_0 = input.LA(1);
1900
1901 if ( (LA22_0==32) ) {
1902 alt22=1;
1903 }
1904 switch (alt22) {
1905 case 1 :
1906 // InternalProblem.g:744:4: otherlv_9= ':-' ( (lv_bodies_10_0= ruleConjunction ) ) (otherlv_11= ';' ( (lv_bodies_12_0= ruleConjunction ) ) )*
1907 {
1908 otherlv_9=(Token)match(input,32,FOLLOW_25);
1909
1910 newLeafNode(otherlv_9, grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_5_0());
1911
1912 // InternalProblem.g:748:4: ( (lv_bodies_10_0= ruleConjunction ) )
1913 // InternalProblem.g:749:5: (lv_bodies_10_0= ruleConjunction )
1914 {
1915 // InternalProblem.g:749:5: (lv_bodies_10_0= ruleConjunction )
1916 // InternalProblem.g:750:6: lv_bodies_10_0= ruleConjunction
1917 {
1918
1919 newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getBodiesConjunctionParserRuleCall_5_1_0());
1920
1921 pushFollow(FOLLOW_26);
1922 lv_bodies_10_0=ruleConjunction();
1923
1924 state._fsp--;
1925
1926
1927 if (current==null) {
1928 current = createModelElementForParent(grammarAccess.getPredicateDefinitionRule());
1929 }
1930 add(
1931 current,
1932 "bodies",
1933 lv_bodies_10_0,
1934 "org.eclipse.viatra.solver.language.Problem.Conjunction");
1935 afterParserOrEnumRuleCall();
1936
1937
1938 }
1939
1940
1941 }
1942
1943 // InternalProblem.g:767:4: (otherlv_11= ';' ( (lv_bodies_12_0= ruleConjunction ) ) )*
1944 loop21:
1945 do {
1946 int alt21=2;
1947 int LA21_0 = input.LA(1);
1948
1949 if ( (LA21_0==20) ) {
1950 alt21=1;
1951 }
1952
1953
1954 switch (alt21) {
1955 case 1 :
1956 // InternalProblem.g:768:5: otherlv_11= ';' ( (lv_bodies_12_0= ruleConjunction ) )
1957 {
1958 otherlv_11=(Token)match(input,20,FOLLOW_25);
1959
1960 newLeafNode(otherlv_11, grammarAccess.getPredicateDefinitionAccess().getSemicolonKeyword_5_2_0());
1961
1962 // InternalProblem.g:772:5: ( (lv_bodies_12_0= ruleConjunction ) )
1963 // InternalProblem.g:773:6: (lv_bodies_12_0= ruleConjunction )
1964 {
1965 // InternalProblem.g:773:6: (lv_bodies_12_0= ruleConjunction )
1966 // InternalProblem.g:774:7: lv_bodies_12_0= ruleConjunction
1967 {
1968
1969 newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getBodiesConjunctionParserRuleCall_5_2_1_0());
1970
1971 pushFollow(FOLLOW_26);
1972 lv_bodies_12_0=ruleConjunction();
1973
1974 state._fsp--;
1975
1976
1977 if (current==null) {
1978 current = createModelElementForParent(grammarAccess.getPredicateDefinitionRule());
1979 }
1980 add(
1981 current,
1982 "bodies",
1983 lv_bodies_12_0,
1984 "org.eclipse.viatra.solver.language.Problem.Conjunction");
1985 afterParserOrEnumRuleCall();
1986
1987
1988 }
1989
1990
1991 }
1992
1993
1994 }
1995 break;
1996
1997 default :
1998 break loop21;
1999 }
2000 } while (true);
2001
2002
2003 }
2004 break;
2005
2006 }
2007
2008 otherlv_13=(Token)match(input,14,FOLLOW_2);
2009
2010 newLeafNode(otherlv_13, grammarAccess.getPredicateDefinitionAccess().getFullStopKeyword_6());
2011
2012
2013 }
2014
2015
2016 }
2017
2018
2019 leaveRule();
2020
2021 }
2022
2023 catch (RecognitionException re) {
2024 recover(input,re);
2025 appendSkippedTokens();
2026 }
2027 finally {
2028 }
2029 return current;
2030 }
2031 // $ANTLR end "rulePredicateDefinition"
2032
2033
2034 // $ANTLR start "entryRuleParameter"
2035 // InternalProblem.g:801:1: entryRuleParameter returns [EObject current=null] : iv_ruleParameter= ruleParameter EOF ;
2036 public final EObject entryRuleParameter() throws RecognitionException {
2037 EObject current = null;
2038
2039 EObject iv_ruleParameter = null;
2040
2041
2042 try {
2043 // InternalProblem.g:801:50: (iv_ruleParameter= ruleParameter EOF )
2044 // InternalProblem.g:802:2: iv_ruleParameter= ruleParameter EOF
2045 {
2046 newCompositeNode(grammarAccess.getParameterRule());
2047 pushFollow(FOLLOW_1);
2048 iv_ruleParameter=ruleParameter();
2049
2050 state._fsp--;
2051
2052 current =iv_ruleParameter;
2053 match(input,EOF,FOLLOW_2);
2054
2055 }
2056
2057 }
2058
2059 catch (RecognitionException re) {
2060 recover(input,re);
2061 appendSkippedTokens();
2062 }
2063 finally {
2064 }
2065 return current;
2066 }
2067 // $ANTLR end "entryRuleParameter"
2068
2069
2070 // $ANTLR start "ruleParameter"
2071 // InternalProblem.g:808:1: ruleParameter returns [EObject current=null] : ( ( ( ruleQualifiedName ) )? ( (lv_name_1_0= ruleIdentifier ) ) ) ;
2072 public final EObject ruleParameter() throws RecognitionException {
2073 EObject current = null;
2074
2075 AntlrDatatypeRuleToken lv_name_1_0 = null;
2076
2077
2078
2079 enterRule();
2080
2081 try {
2082 // InternalProblem.g:814:2: ( ( ( ( ruleQualifiedName ) )? ( (lv_name_1_0= ruleIdentifier ) ) ) )
2083 // InternalProblem.g:815:2: ( ( ( ruleQualifiedName ) )? ( (lv_name_1_0= ruleIdentifier ) ) )
2084 {
2085 // InternalProblem.g:815:2: ( ( ( ruleQualifiedName ) )? ( (lv_name_1_0= ruleIdentifier ) ) )
2086 // InternalProblem.g:816:3: ( ( ruleQualifiedName ) )? ( (lv_name_1_0= ruleIdentifier ) )
2087 {
2088 // InternalProblem.g:816:3: ( ( ruleQualifiedName ) )?
2089 int alt23=2;
2090 switch ( input.LA(1) ) {
2091 case RULE_QUOTED_ID:
2092 {
2093 alt23=1;
2094 }
2095 break;
2096 case RULE_ID:
2097 {
2098 int LA23_2 = input.LA(2);
2099
2100 if ( (LA23_2==RULE_ID||(LA23_2>=41 && LA23_2<=43)) ) {
2101 alt23=1;
2102 }
2103 }
2104 break;
2105 case 42:
2106 {
2107 int LA23_3 = input.LA(2);
2108
2109 if ( (LA23_3==RULE_ID||(LA23_3>=41 && LA23_3<=43)) ) {
2110 alt23=1;
2111 }
2112 }
2113 break;
2114 case 43:
2115 {
2116 int LA23_4 = input.LA(2);
2117
2118 if ( (LA23_4==RULE_ID||(LA23_4>=41 && LA23_4<=43)) ) {
2119 alt23=1;
2120 }
2121 }
2122 break;
2123 }
2124
2125 switch (alt23) {
2126 case 1 :
2127 // InternalProblem.g:817:4: ( ruleQualifiedName )
2128 {
2129 // InternalProblem.g:817:4: ( ruleQualifiedName )
2130 // InternalProblem.g:818:5: ruleQualifiedName
2131 {
2132
2133 if (current==null) {
2134 current = createModelElement(grammarAccess.getParameterRule());
2135 }
2136
2137
2138 newCompositeNode(grammarAccess.getParameterAccess().getParameterTypeRelationCrossReference_0_0());
2139
2140 pushFollow(FOLLOW_3);
2141 ruleQualifiedName();
2142
2143 state._fsp--;
2144
2145
2146 afterParserOrEnumRuleCall();
2147
2148
2149 }
2150
2151
2152 }
2153 break;
2154
2155 }
2156
2157 // InternalProblem.g:832:3: ( (lv_name_1_0= ruleIdentifier ) )
2158 // InternalProblem.g:833:4: (lv_name_1_0= ruleIdentifier )
2159 {
2160 // InternalProblem.g:833:4: (lv_name_1_0= ruleIdentifier )
2161 // InternalProblem.g:834:5: lv_name_1_0= ruleIdentifier
2162 {
2163
2164 newCompositeNode(grammarAccess.getParameterAccess().getNameIdentifierParserRuleCall_1_0());
2165
2166 pushFollow(FOLLOW_2);
2167 lv_name_1_0=ruleIdentifier();
2168
2169 state._fsp--;
2170
2171
2172 if (current==null) {
2173 current = createModelElementForParent(grammarAccess.getParameterRule());
2174 }
2175 set(
2176 current,
2177 "name",
2178 lv_name_1_0,
2179 "org.eclipse.viatra.solver.language.Problem.Identifier");
2180 afterParserOrEnumRuleCall();
2181
2182
2183 }
2184
2185
2186 }
2187
2188
2189 }
2190
2191
2192 }
2193
2194
2195 leaveRule();
2196
2197 }
2198
2199 catch (RecognitionException re) {
2200 recover(input,re);
2201 appendSkippedTokens();
2202 }
2203 finally {
2204 }
2205 return current;
2206 }
2207 // $ANTLR end "ruleParameter"
2208
2209
2210 // $ANTLR start "entryRuleConjunction"
2211 // InternalProblem.g:855:1: entryRuleConjunction returns [EObject current=null] : iv_ruleConjunction= ruleConjunction EOF ;
2212 public final EObject entryRuleConjunction() throws RecognitionException {
2213 EObject current = null;
2214
2215 EObject iv_ruleConjunction = null;
2216
2217
2218 try {
2219 // InternalProblem.g:855:52: (iv_ruleConjunction= ruleConjunction EOF )
2220 // InternalProblem.g:856:2: iv_ruleConjunction= ruleConjunction EOF
2221 {
2222 newCompositeNode(grammarAccess.getConjunctionRule());
2223 pushFollow(FOLLOW_1);
2224 iv_ruleConjunction=ruleConjunction();
2225
2226 state._fsp--;
2227
2228 current =iv_ruleConjunction;
2229 match(input,EOF,FOLLOW_2);
2230
2231 }
2232
2233 }
2234
2235 catch (RecognitionException re) {
2236 recover(input,re);
2237 appendSkippedTokens();
2238 }
2239 finally {
2240 }
2241 return current;
2242 }
2243 // $ANTLR end "entryRuleConjunction"
2244
2245
2246 // $ANTLR start "ruleConjunction"
2247 // InternalProblem.g:862:1: ruleConjunction returns [EObject current=null] : ( ( (lv_literals_0_0= ruleLiteral ) ) (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )* ) ;
2248 public final EObject ruleConjunction() throws RecognitionException {
2249 EObject current = null;
2250
2251 Token otherlv_1=null;
2252 EObject lv_literals_0_0 = null;
2253
2254 EObject lv_literals_2_0 = null;
2255
2256
2257
2258 enterRule();
2259
2260 try {
2261 // InternalProblem.g:868:2: ( ( ( (lv_literals_0_0= ruleLiteral ) ) (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )* ) )
2262 // InternalProblem.g:869:2: ( ( (lv_literals_0_0= ruleLiteral ) ) (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )* )
2263 {
2264 // InternalProblem.g:869:2: ( ( (lv_literals_0_0= ruleLiteral ) ) (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )* )
2265 // InternalProblem.g:870:3: ( (lv_literals_0_0= ruleLiteral ) ) (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )*
2266 {
2267 // InternalProblem.g:870:3: ( (lv_literals_0_0= ruleLiteral ) )
2268 // InternalProblem.g:871:4: (lv_literals_0_0= ruleLiteral )
2269 {
2270 // InternalProblem.g:871:4: (lv_literals_0_0= ruleLiteral )
2271 // InternalProblem.g:872:5: lv_literals_0_0= ruleLiteral
2272 {
2273
2274 newCompositeNode(grammarAccess.getConjunctionAccess().getLiteralsLiteralParserRuleCall_0_0());
2275
2276 pushFollow(FOLLOW_27);
2277 lv_literals_0_0=ruleLiteral();
2278
2279 state._fsp--;
2280
2281
2282 if (current==null) {
2283 current = createModelElementForParent(grammarAccess.getConjunctionRule());
2284 }
2285 add(
2286 current,
2287 "literals",
2288 lv_literals_0_0,
2289 "org.eclipse.viatra.solver.language.Problem.Literal");
2290 afterParserOrEnumRuleCall();
2291
2292
2293 }
2294
2295
2296 }
2297
2298 // InternalProblem.g:889:3: (otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) )*
2299 loop24:
2300 do {
2301 int alt24=2;
2302 int LA24_0 = input.LA(1);
2303
2304 if ( (LA24_0==18) ) {
2305 alt24=1;
2306 }
2307
2308
2309 switch (alt24) {
2310 case 1 :
2311 // InternalProblem.g:890:4: otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) )
2312 {
2313 otherlv_1=(Token)match(input,18,FOLLOW_25);
2314
2315 newLeafNode(otherlv_1, grammarAccess.getConjunctionAccess().getCommaKeyword_1_0());
2316
2317 // InternalProblem.g:894:4: ( (lv_literals_2_0= ruleLiteral ) )
2318 // InternalProblem.g:895:5: (lv_literals_2_0= ruleLiteral )
2319 {
2320 // InternalProblem.g:895:5: (lv_literals_2_0= ruleLiteral )
2321 // InternalProblem.g:896:6: lv_literals_2_0= ruleLiteral
2322 {
2323
2324 newCompositeNode(grammarAccess.getConjunctionAccess().getLiteralsLiteralParserRuleCall_1_1_0());
2325
2326 pushFollow(FOLLOW_27);
2327 lv_literals_2_0=ruleLiteral();
2328
2329 state._fsp--;
2330
2331
2332 if (current==null) {
2333 current = createModelElementForParent(grammarAccess.getConjunctionRule());
2334 }
2335 add(
2336 current,
2337 "literals",
2338 lv_literals_2_0,
2339 "org.eclipse.viatra.solver.language.Problem.Literal");
2340 afterParserOrEnumRuleCall();
2341
2342
2343 }
2344
2345
2346 }
2347
2348
2349 }
2350 break;
2351
2352 default :
2353 break loop24;
2354 }
2355 } while (true);
2356
2357
2358 }
2359
2360
2361 }
2362
2363
2364 leaveRule();
2365
2366 }
2367
2368 catch (RecognitionException re) {
2369 recover(input,re);
2370 appendSkippedTokens();
2371 }
2372 finally {
2373 }
2374 return current;
2375 }
2376 // $ANTLR end "ruleConjunction"
2377
2378
2379 // $ANTLR start "entryRuleLiteral"
2380 // InternalProblem.g:918:1: entryRuleLiteral returns [EObject current=null] : iv_ruleLiteral= ruleLiteral EOF ;
2381 public final EObject entryRuleLiteral() throws RecognitionException {
2382 EObject current = null;
2383
2384 EObject iv_ruleLiteral = null;
2385
2386
2387 try {
2388 // InternalProblem.g:918:48: (iv_ruleLiteral= ruleLiteral EOF )
2389 // InternalProblem.g:919:2: iv_ruleLiteral= ruleLiteral EOF
2390 {
2391 newCompositeNode(grammarAccess.getLiteralRule());
2392 pushFollow(FOLLOW_1);
2393 iv_ruleLiteral=ruleLiteral();
2394
2395 state._fsp--;
2396
2397 current =iv_ruleLiteral;
2398 match(input,EOF,FOLLOW_2);
2399
2400 }
2401
2402 }
2403
2404 catch (RecognitionException re) {
2405 recover(input,re);
2406 appendSkippedTokens();
2407 }
2408 finally {
2409 }
2410 return current;
2411 }
2412 // $ANTLR end "entryRuleLiteral"
2413
2414
2415 // $ANTLR start "ruleLiteral"
2416 // InternalProblem.g:925:1: ruleLiteral returns [EObject current=null] : (this_Atom_0= ruleAtom | this_NegativeLiteral_1= ruleNegativeLiteral ) ;
2417 public final EObject ruleLiteral() throws RecognitionException {
2418 EObject current = null;
2419
2420 EObject this_Atom_0 = null;
2421
2422 EObject this_NegativeLiteral_1 = null;
2423
2424
2425
2426 enterRule();
2427
2428 try {
2429 // InternalProblem.g:931:2: ( (this_Atom_0= ruleAtom | this_NegativeLiteral_1= ruleNegativeLiteral ) )
2430 // InternalProblem.g:932:2: (this_Atom_0= ruleAtom | this_NegativeLiteral_1= ruleNegativeLiteral )
2431 {
2432 // InternalProblem.g:932:2: (this_Atom_0= ruleAtom | this_NegativeLiteral_1= ruleNegativeLiteral )
2433 int alt25=2;
2434 int LA25_0 = input.LA(1);
2435
2436 if ( (LA25_0==RULE_ID||LA25_0==RULE_QUOTED_ID||(LA25_0>=42 && LA25_0<=43)) ) {
2437 alt25=1;
2438 }
2439 else if ( (LA25_0==33) ) {
2440 alt25=2;
2441 }
2442 else {
2443 NoViableAltException nvae =
2444 new NoViableAltException("", 25, 0, input);
2445
2446 throw nvae;
2447 }
2448 switch (alt25) {
2449 case 1 :
2450 // InternalProblem.g:933:3: this_Atom_0= ruleAtom
2451 {
2452
2453 newCompositeNode(grammarAccess.getLiteralAccess().getAtomParserRuleCall_0());
2454
2455 pushFollow(FOLLOW_2);
2456 this_Atom_0=ruleAtom();
2457
2458 state._fsp--;
2459
2460
2461 current = this_Atom_0;
2462 afterParserOrEnumRuleCall();
2463
2464
2465 }
2466 break;
2467 case 2 :
2468 // InternalProblem.g:942:3: this_NegativeLiteral_1= ruleNegativeLiteral
2469 {
2470
2471 newCompositeNode(grammarAccess.getLiteralAccess().getNegativeLiteralParserRuleCall_1());
2472
2473 pushFollow(FOLLOW_2);
2474 this_NegativeLiteral_1=ruleNegativeLiteral();
2475
2476 state._fsp--;
2477
2478
2479 current = this_NegativeLiteral_1;
2480 afterParserOrEnumRuleCall();
2481
2482
2483 }
2484 break;
2485
2486 }
2487
2488
2489 }
2490
2491
2492 leaveRule();
2493
2494 }
2495
2496 catch (RecognitionException re) {
2497 recover(input,re);
2498 appendSkippedTokens();
2499 }
2500 finally {
2501 }
2502 return current;
2503 }
2504 // $ANTLR end "ruleLiteral"
2505
2506
2507 // $ANTLR start "entryRuleNegativeLiteral"
2508 // InternalProblem.g:954:1: entryRuleNegativeLiteral returns [EObject current=null] : iv_ruleNegativeLiteral= ruleNegativeLiteral EOF ;
2509 public final EObject entryRuleNegativeLiteral() throws RecognitionException {
2510 EObject current = null;
2511
2512 EObject iv_ruleNegativeLiteral = null;
2513
2514
2515 try {
2516 // InternalProblem.g:954:56: (iv_ruleNegativeLiteral= ruleNegativeLiteral EOF )
2517 // InternalProblem.g:955:2: iv_ruleNegativeLiteral= ruleNegativeLiteral EOF
2518 {
2519 newCompositeNode(grammarAccess.getNegativeLiteralRule());
2520 pushFollow(FOLLOW_1);
2521 iv_ruleNegativeLiteral=ruleNegativeLiteral();
2522
2523 state._fsp--;
2524
2525 current =iv_ruleNegativeLiteral;
2526 match(input,EOF,FOLLOW_2);
2527
2528 }
2529
2530 }
2531
2532 catch (RecognitionException re) {
2533 recover(input,re);
2534 appendSkippedTokens();
2535 }
2536 finally {
2537 }
2538 return current;
2539 }
2540 // $ANTLR end "entryRuleNegativeLiteral"
2541
2542
2543 // $ANTLR start "ruleNegativeLiteral"
2544 // InternalProblem.g:961:1: ruleNegativeLiteral returns [EObject current=null] : (otherlv_0= '!' ( (lv_atom_1_0= ruleAtom ) ) ) ;
2545 public final EObject ruleNegativeLiteral() throws RecognitionException {
2546 EObject current = null;
2547
2548 Token otherlv_0=null;
2549 EObject lv_atom_1_0 = null;
2550
2551
2552
2553 enterRule();
2554
2555 try {
2556 // InternalProblem.g:967:2: ( (otherlv_0= '!' ( (lv_atom_1_0= ruleAtom ) ) ) )
2557 // InternalProblem.g:968:2: (otherlv_0= '!' ( (lv_atom_1_0= ruleAtom ) ) )
2558 {
2559 // InternalProblem.g:968:2: (otherlv_0= '!' ( (lv_atom_1_0= ruleAtom ) ) )
2560 // InternalProblem.g:969:3: otherlv_0= '!' ( (lv_atom_1_0= ruleAtom ) )
2561 {
2562 otherlv_0=(Token)match(input,33,FOLLOW_8);
2563
2564 newLeafNode(otherlv_0, grammarAccess.getNegativeLiteralAccess().getExclamationMarkKeyword_0());
2565
2566 // InternalProblem.g:973:3: ( (lv_atom_1_0= ruleAtom ) )
2567 // InternalProblem.g:974:4: (lv_atom_1_0= ruleAtom )
2568 {
2569 // InternalProblem.g:974:4: (lv_atom_1_0= ruleAtom )
2570 // InternalProblem.g:975:5: lv_atom_1_0= ruleAtom
2571 {
2572
2573 newCompositeNode(grammarAccess.getNegativeLiteralAccess().getAtomAtomParserRuleCall_1_0());
2574
2575 pushFollow(FOLLOW_2);
2576 lv_atom_1_0=ruleAtom();
2577
2578 state._fsp--;
2579
2580
2581 if (current==null) {
2582 current = createModelElementForParent(grammarAccess.getNegativeLiteralRule());
2583 }
2584 set(
2585 current,
2586 "atom",
2587 lv_atom_1_0,
2588 "org.eclipse.viatra.solver.language.Problem.Atom");
2589 afterParserOrEnumRuleCall();
2590
2591
2592 }
2593
2594
2595 }
2596
2597
2598 }
2599
2600
2601 }
2602
2603
2604 leaveRule();
2605
2606 }
2607
2608 catch (RecognitionException re) {
2609 recover(input,re);
2610 appendSkippedTokens();
2611 }
2612 finally {
2613 }
2614 return current;
2615 }
2616 // $ANTLR end "ruleNegativeLiteral"
2617
2618
2619 // $ANTLR start "entryRuleAtom"
2620 // InternalProblem.g:996:1: entryRuleAtom returns [EObject current=null] : iv_ruleAtom= ruleAtom EOF ;
2621 public final EObject entryRuleAtom() throws RecognitionException {
2622 EObject current = null;
2623
2624 EObject iv_ruleAtom = null;
2625
2626
2627 try {
2628 // InternalProblem.g:996:45: (iv_ruleAtom= ruleAtom EOF )
2629 // InternalProblem.g:997:2: iv_ruleAtom= ruleAtom EOF
2630 {
2631 newCompositeNode(grammarAccess.getAtomRule());
2632 pushFollow(FOLLOW_1);
2633 iv_ruleAtom=ruleAtom();
2634
2635 state._fsp--;
2636
2637 current =iv_ruleAtom;
2638 match(input,EOF,FOLLOW_2);
2639
2640 }
2641
2642 }
2643
2644 catch (RecognitionException re) {
2645 recover(input,re);
2646 appendSkippedTokens();
2647 }
2648 finally {
2649 }
2650 return current;
2651 }
2652 // $ANTLR end "entryRuleAtom"
2653
2654
2655 // $ANTLR start "ruleAtom"
2656 // InternalProblem.g:1003:1: ruleAtom returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) ( (lv_transitiveClosure_1_0= '+' ) )? otherlv_2= '(' ( ( (lv_arguments_3_0= ruleArgument ) ) (otherlv_4= ',' ( (lv_arguments_5_0= ruleArgument ) ) )* )? otherlv_6= ')' ) ;
2657 public final EObject ruleAtom() throws RecognitionException {
2658 EObject current = null;
2659
2660 Token lv_transitiveClosure_1_0=null;
2661 Token otherlv_2=null;
2662 Token otherlv_4=null;
2663 Token otherlv_6=null;
2664 EObject lv_arguments_3_0 = null;
2665
2666 EObject lv_arguments_5_0 = null;
2667
2668
2669
2670 enterRule();
2671
2672 try {
2673 // InternalProblem.g:1009:2: ( ( ( ( ruleQualifiedName ) ) ( (lv_transitiveClosure_1_0= '+' ) )? otherlv_2= '(' ( ( (lv_arguments_3_0= ruleArgument ) ) (otherlv_4= ',' ( (lv_arguments_5_0= ruleArgument ) ) )* )? otherlv_6= ')' ) )
2674 // InternalProblem.g:1010:2: ( ( ( ruleQualifiedName ) ) ( (lv_transitiveClosure_1_0= '+' ) )? otherlv_2= '(' ( ( (lv_arguments_3_0= ruleArgument ) ) (otherlv_4= ',' ( (lv_arguments_5_0= ruleArgument ) ) )* )? otherlv_6= ')' )
2675 {
2676 // InternalProblem.g:1010:2: ( ( ( ruleQualifiedName ) ) ( (lv_transitiveClosure_1_0= '+' ) )? otherlv_2= '(' ( ( (lv_arguments_3_0= ruleArgument ) ) (otherlv_4= ',' ( (lv_arguments_5_0= ruleArgument ) ) )* )? otherlv_6= ')' )
2677 // InternalProblem.g:1011:3: ( ( ruleQualifiedName ) ) ( (lv_transitiveClosure_1_0= '+' ) )? otherlv_2= '(' ( ( (lv_arguments_3_0= ruleArgument ) ) (otherlv_4= ',' ( (lv_arguments_5_0= ruleArgument ) ) )* )? otherlv_6= ')'
2678 {
2679 // InternalProblem.g:1011:3: ( ( ruleQualifiedName ) )
2680 // InternalProblem.g:1012:4: ( ruleQualifiedName )
2681 {
2682 // InternalProblem.g:1012:4: ( ruleQualifiedName )
2683 // InternalProblem.g:1013:5: ruleQualifiedName
2684 {
2685
2686 if (current==null) {
2687 current = createModelElement(grammarAccess.getAtomRule());
2688 }
2689
2690
2691 newCompositeNode(grammarAccess.getAtomAccess().getRelationRelationCrossReference_0_0());
2692
2693 pushFollow(FOLLOW_28);
2694 ruleQualifiedName();
2695
2696 state._fsp--;
2697
2698
2699 afterParserOrEnumRuleCall();
2700
2701
2702 }
2703
2704
2705 }
2706
2707 // InternalProblem.g:1027:3: ( (lv_transitiveClosure_1_0= '+' ) )?
2708 int alt26=2;
2709 int LA26_0 = input.LA(1);
2710
2711 if ( (LA26_0==34) ) {
2712 alt26=1;
2713 }
2714 switch (alt26) {
2715 case 1 :
2716 // InternalProblem.g:1028:4: (lv_transitiveClosure_1_0= '+' )
2717 {
2718 // InternalProblem.g:1028:4: (lv_transitiveClosure_1_0= '+' )
2719 // InternalProblem.g:1029:5: lv_transitiveClosure_1_0= '+'
2720 {
2721 lv_transitiveClosure_1_0=(Token)match(input,34,FOLLOW_21);
2722
2723 newLeafNode(lv_transitiveClosure_1_0, grammarAccess.getAtomAccess().getTransitiveClosurePlusSignKeyword_1_0());
2724
2725
2726 if (current==null) {
2727 current = createModelElement(grammarAccess.getAtomRule());
2728 }
2729 setWithLastConsumed(current, "transitiveClosure", lv_transitiveClosure_1_0 != null, "+");
2730
2731
2732 }
2733
2734
2735 }
2736 break;
2737
2738 }
2739
2740 otherlv_2=(Token)match(input,30,FOLLOW_29);
2741
2742 newLeafNode(otherlv_2, grammarAccess.getAtomAccess().getLeftParenthesisKeyword_2());
2743
2744 // InternalProblem.g:1045:3: ( ( (lv_arguments_3_0= ruleArgument ) ) (otherlv_4= ',' ( (lv_arguments_5_0= ruleArgument ) ) )* )?
2745 int alt28=2;
2746 int LA28_0 = input.LA(1);
2747
2748 if ( ((LA28_0>=RULE_STRING && LA28_0<=RULE_EXPONENTIAL)||(LA28_0>=42 && LA28_0<=44)) ) {
2749 alt28=1;
2750 }
2751 switch (alt28) {
2752 case 1 :
2753 // InternalProblem.g:1046:4: ( (lv_arguments_3_0= ruleArgument ) ) (otherlv_4= ',' ( (lv_arguments_5_0= ruleArgument ) ) )*
2754 {
2755 // InternalProblem.g:1046:4: ( (lv_arguments_3_0= ruleArgument ) )
2756 // InternalProblem.g:1047:5: (lv_arguments_3_0= ruleArgument )
2757 {
2758 // InternalProblem.g:1047:5: (lv_arguments_3_0= ruleArgument )
2759 // InternalProblem.g:1048:6: lv_arguments_3_0= ruleArgument
2760 {
2761
2762 newCompositeNode(grammarAccess.getAtomAccess().getArgumentsArgumentParserRuleCall_3_0_0());
2763
2764 pushFollow(FOLLOW_23);
2765 lv_arguments_3_0=ruleArgument();
2766
2767 state._fsp--;
2768
2769
2770 if (current==null) {
2771 current = createModelElementForParent(grammarAccess.getAtomRule());
2772 }
2773 add(
2774 current,
2775 "arguments",
2776 lv_arguments_3_0,
2777 "org.eclipse.viatra.solver.language.Problem.Argument");
2778 afterParserOrEnumRuleCall();
2779
2780
2781 }
2782
2783
2784 }
2785
2786 // InternalProblem.g:1065:4: (otherlv_4= ',' ( (lv_arguments_5_0= ruleArgument ) ) )*
2787 loop27:
2788 do {
2789 int alt27=2;
2790 int LA27_0 = input.LA(1);
2791
2792 if ( (LA27_0==18) ) {
2793 alt27=1;
2794 }
2795
2796
2797 switch (alt27) {
2798 case 1 :
2799 // InternalProblem.g:1066:5: otherlv_4= ',' ( (lv_arguments_5_0= ruleArgument ) )
2800 {
2801 otherlv_4=(Token)match(input,18,FOLLOW_30);
2802
2803 newLeafNode(otherlv_4, grammarAccess.getAtomAccess().getCommaKeyword_3_1_0());
2804
2805 // InternalProblem.g:1070:5: ( (lv_arguments_5_0= ruleArgument ) )
2806 // InternalProblem.g:1071:6: (lv_arguments_5_0= ruleArgument )
2807 {
2808 // InternalProblem.g:1071:6: (lv_arguments_5_0= ruleArgument )
2809 // InternalProblem.g:1072:7: lv_arguments_5_0= ruleArgument
2810 {
2811
2812 newCompositeNode(grammarAccess.getAtomAccess().getArgumentsArgumentParserRuleCall_3_1_1_0());
2813
2814 pushFollow(FOLLOW_23);
2815 lv_arguments_5_0=ruleArgument();
2816
2817 state._fsp--;
2818
2819
2820 if (current==null) {
2821 current = createModelElementForParent(grammarAccess.getAtomRule());
2822 }
2823 add(
2824 current,
2825 "arguments",
2826 lv_arguments_5_0,
2827 "org.eclipse.viatra.solver.language.Problem.Argument");
2828 afterParserOrEnumRuleCall();
2829
2830
2831 }
2832
2833
2834 }
2835
2836
2837 }
2838 break;
2839
2840 default :
2841 break loop27;
2842 }
2843 } while (true);
2844
2845
2846 }
2847 break;
2848
2849 }
2850
2851 otherlv_6=(Token)match(input,31,FOLLOW_2);
2852
2853 newLeafNode(otherlv_6, grammarAccess.getAtomAccess().getRightParenthesisKeyword_4());
2854
2855
2856 }
2857
2858
2859 }
2860
2861
2862 leaveRule();
2863
2864 }
2865
2866 catch (RecognitionException re) {
2867 recover(input,re);
2868 appendSkippedTokens();
2869 }
2870 finally {
2871 }
2872 return current;
2873 }
2874 // $ANTLR end "ruleAtom"
2875
2876
2877 // $ANTLR start "entryRuleArgument"
2878 // InternalProblem.g:1099:1: entryRuleArgument returns [EObject current=null] : iv_ruleArgument= ruleArgument EOF ;
2879 public final EObject entryRuleArgument() throws RecognitionException {
2880 EObject current = null;
2881
2882 EObject iv_ruleArgument = null;
2883
2884
2885 try {
2886 // InternalProblem.g:1099:49: (iv_ruleArgument= ruleArgument EOF )
2887 // InternalProblem.g:1100:2: iv_ruleArgument= ruleArgument EOF
2888 {
2889 newCompositeNode(grammarAccess.getArgumentRule());
2890 pushFollow(FOLLOW_1);
2891 iv_ruleArgument=ruleArgument();
2892
2893 state._fsp--;
2894
2895 current =iv_ruleArgument;
2896 match(input,EOF,FOLLOW_2);
2897
2898 }
2899
2900 }
2901
2902 catch (RecognitionException re) {
2903 recover(input,re);
2904 appendSkippedTokens();
2905 }
2906 finally {
2907 }
2908 return current;
2909 }
2910 // $ANTLR end "entryRuleArgument"
2911
2912
2913 // $ANTLR start "ruleArgument"
2914 // InternalProblem.g:1106:1: ruleArgument returns [EObject current=null] : (this_VariableOrNodeArgument_0= ruleVariableOrNodeArgument | this_ConstantArgument_1= ruleConstantArgument ) ;
2915 public final EObject ruleArgument() throws RecognitionException {
2916 EObject current = null;
2917
2918 EObject this_VariableOrNodeArgument_0 = null;
2919
2920 EObject this_ConstantArgument_1 = null;
2921
2922
2923
2924 enterRule();
2925
2926 try {
2927 // InternalProblem.g:1112:2: ( (this_VariableOrNodeArgument_0= ruleVariableOrNodeArgument | this_ConstantArgument_1= ruleConstantArgument ) )
2928 // InternalProblem.g:1113:2: (this_VariableOrNodeArgument_0= ruleVariableOrNodeArgument | this_ConstantArgument_1= ruleConstantArgument )
2929 {
2930 // InternalProblem.g:1113:2: (this_VariableOrNodeArgument_0= ruleVariableOrNodeArgument | this_ConstantArgument_1= ruleConstantArgument )
2931 int alt29=2;
2932 int LA29_0 = input.LA(1);
2933
2934 if ( (LA29_0==RULE_ID||LA29_0==RULE_QUOTED_ID||(LA29_0>=42 && LA29_0<=43)) ) {
2935 alt29=1;
2936 }
2937 else if ( (LA29_0==RULE_STRING||LA29_0==RULE_INT||LA29_0==RULE_EXPONENTIAL||LA29_0==44) ) {
2938 alt29=2;
2939 }
2940 else {
2941 NoViableAltException nvae =
2942 new NoViableAltException("", 29, 0, input);
2943
2944 throw nvae;
2945 }
2946 switch (alt29) {
2947 case 1 :
2948 // InternalProblem.g:1114:3: this_VariableOrNodeArgument_0= ruleVariableOrNodeArgument
2949 {
2950
2951 newCompositeNode(grammarAccess.getArgumentAccess().getVariableOrNodeArgumentParserRuleCall_0());
2952
2953 pushFollow(FOLLOW_2);
2954 this_VariableOrNodeArgument_0=ruleVariableOrNodeArgument();
2955
2956 state._fsp--;
2957
2958
2959 current = this_VariableOrNodeArgument_0;
2960 afterParserOrEnumRuleCall();
2961
2962
2963 }
2964 break;
2965 case 2 :
2966 // InternalProblem.g:1123:3: this_ConstantArgument_1= ruleConstantArgument
2967 {
2968
2969 newCompositeNode(grammarAccess.getArgumentAccess().getConstantArgumentParserRuleCall_1());
2970
2971 pushFollow(FOLLOW_2);
2972 this_ConstantArgument_1=ruleConstantArgument();
2973
2974 state._fsp--;
2975
2976
2977 current = this_ConstantArgument_1;
2978 afterParserOrEnumRuleCall();
2979
2980
2981 }
2982 break;
2983
2984 }
2985
2986
2987 }
2988
2989
2990 leaveRule();
2991
2992 }
2993
2994 catch (RecognitionException re) {
2995 recover(input,re);
2996 appendSkippedTokens();
2997 }
2998 finally {
2999 }
3000 return current;
3001 }
3002 // $ANTLR end "ruleArgument"
3003
3004
3005 // $ANTLR start "entryRuleVariableOrNodeArgument"
3006 // InternalProblem.g:1135:1: entryRuleVariableOrNodeArgument returns [EObject current=null] : iv_ruleVariableOrNodeArgument= ruleVariableOrNodeArgument EOF ;
3007 public final EObject entryRuleVariableOrNodeArgument() throws RecognitionException {
3008 EObject current = null;
3009
3010 EObject iv_ruleVariableOrNodeArgument = null;
3011
3012
3013 try {
3014 // InternalProblem.g:1135:63: (iv_ruleVariableOrNodeArgument= ruleVariableOrNodeArgument EOF )
3015 // InternalProblem.g:1136:2: iv_ruleVariableOrNodeArgument= ruleVariableOrNodeArgument EOF
3016 {
3017 newCompositeNode(grammarAccess.getVariableOrNodeArgumentRule());
3018 pushFollow(FOLLOW_1);
3019 iv_ruleVariableOrNodeArgument=ruleVariableOrNodeArgument();
3020
3021 state._fsp--;
3022
3023 current =iv_ruleVariableOrNodeArgument;
3024 match(input,EOF,FOLLOW_2);
3025
3026 }
3027
3028 }
3029
3030 catch (RecognitionException re) {
3031 recover(input,re);
3032 appendSkippedTokens();
3033 }
3034 finally {
3035 }
3036 return current;
3037 }
3038 // $ANTLR end "entryRuleVariableOrNodeArgument"
3039
3040
3041 // $ANTLR start "ruleVariableOrNodeArgument"
3042 // InternalProblem.g:1142:1: ruleVariableOrNodeArgument returns [EObject current=null] : ( ( ruleQualifiedName ) ) ;
3043 public final EObject ruleVariableOrNodeArgument() throws RecognitionException {
3044 EObject current = null;
3045
3046
3047 enterRule();
3048
3049 try {
3050 // InternalProblem.g:1148:2: ( ( ( ruleQualifiedName ) ) )
3051 // InternalProblem.g:1149:2: ( ( ruleQualifiedName ) )
3052 {
3053 // InternalProblem.g:1149:2: ( ( ruleQualifiedName ) )
3054 // InternalProblem.g:1150:3: ( ruleQualifiedName )
3055 {
3056 // InternalProblem.g:1150:3: ( ruleQualifiedName )
3057 // InternalProblem.g:1151:4: ruleQualifiedName
3058 {
3059
3060 if (current==null) {
3061 current = createModelElement(grammarAccess.getVariableOrNodeArgumentRule());
3062 }
3063
3064
3065 newCompositeNode(grammarAccess.getVariableOrNodeArgumentAccess().getVariableOrNodeVariableOrNodeCrossReference_0());
3066
3067 pushFollow(FOLLOW_2);
3068 ruleQualifiedName();
3069
3070 state._fsp--;
3071
3072
3073 afterParserOrEnumRuleCall();
3074
3075
3076 }
3077
3078
3079 }
3080
3081
3082 }
3083
3084
3085 leaveRule();
3086
3087 }
3088
3089 catch (RecognitionException re) {
3090 recover(input,re);
3091 appendSkippedTokens();
3092 }
3093 finally {
3094 }
3095 return current;
3096 }
3097 // $ANTLR end "ruleVariableOrNodeArgument"
3098
3099
3100 // $ANTLR start "entryRuleConstantArgument"
3101 // InternalProblem.g:1168:1: entryRuleConstantArgument returns [EObject current=null] : iv_ruleConstantArgument= ruleConstantArgument EOF ;
3102 public final EObject entryRuleConstantArgument() throws RecognitionException {
3103 EObject current = null;
3104
3105 EObject iv_ruleConstantArgument = null;
3106
3107
3108 try {
3109 // InternalProblem.g:1168:57: (iv_ruleConstantArgument= ruleConstantArgument EOF )
3110 // InternalProblem.g:1169:2: iv_ruleConstantArgument= ruleConstantArgument EOF
3111 {
3112 newCompositeNode(grammarAccess.getConstantArgumentRule());
3113 pushFollow(FOLLOW_1);
3114 iv_ruleConstantArgument=ruleConstantArgument();
3115
3116 state._fsp--;
3117
3118 current =iv_ruleConstantArgument;
3119 match(input,EOF,FOLLOW_2);
3120
3121 }
3122
3123 }
3124
3125 catch (RecognitionException re) {
3126 recover(input,re);
3127 appendSkippedTokens();
3128 }
3129 finally {
3130 }
3131 return current;
3132 }
3133 // $ANTLR end "entryRuleConstantArgument"
3134
3135
3136 // $ANTLR start "ruleConstantArgument"
3137 // InternalProblem.g:1175:1: ruleConstantArgument returns [EObject current=null] : ( (lv_constant_0_0= ruleConstant ) ) ;
3138 public final EObject ruleConstantArgument() throws RecognitionException {
3139 EObject current = null;
3140
3141 EObject lv_constant_0_0 = null;
3142
3143
3144
3145 enterRule();
3146
3147 try {
3148 // InternalProblem.g:1181:2: ( ( (lv_constant_0_0= ruleConstant ) ) )
3149 // InternalProblem.g:1182:2: ( (lv_constant_0_0= ruleConstant ) )
3150 {
3151 // InternalProblem.g:1182:2: ( (lv_constant_0_0= ruleConstant ) )
3152 // InternalProblem.g:1183:3: (lv_constant_0_0= ruleConstant )
3153 {
3154 // InternalProblem.g:1183:3: (lv_constant_0_0= ruleConstant )
3155 // InternalProblem.g:1184:4: lv_constant_0_0= ruleConstant
3156 {
3157
3158 newCompositeNode(grammarAccess.getConstantArgumentAccess().getConstantConstantParserRuleCall_0());
3159
3160 pushFollow(FOLLOW_2);
3161 lv_constant_0_0=ruleConstant();
3162
3163 state._fsp--;
3164
3165
3166 if (current==null) {
3167 current = createModelElementForParent(grammarAccess.getConstantArgumentRule());
3168 }
3169 set(
3170 current,
3171 "constant",
3172 lv_constant_0_0,
3173 "org.eclipse.viatra.solver.language.Problem.Constant");
3174 afterParserOrEnumRuleCall();
3175
3176
3177 }
3178
3179
3180 }
3181
3182
3183 }
3184
3185
3186 leaveRule();
3187
3188 }
3189
3190 catch (RecognitionException re) {
3191 recover(input,re);
3192 appendSkippedTokens();
3193 }
3194 finally {
3195 }
3196 return current;
3197 }
3198 // $ANTLR end "ruleConstantArgument"
3199
3200
3201 // $ANTLR start "entryRuleAssertion"
3202 // InternalProblem.g:1204:1: entryRuleAssertion returns [EObject current=null] : iv_ruleAssertion= ruleAssertion EOF ;
3203 public final EObject entryRuleAssertion() throws RecognitionException {
3204 EObject current = null;
3205
3206 EObject iv_ruleAssertion = null;
3207
3208
3209 try {
3210 // InternalProblem.g:1204:50: (iv_ruleAssertion= ruleAssertion EOF )
3211 // InternalProblem.g:1205:2: iv_ruleAssertion= ruleAssertion EOF
3212 {
3213 newCompositeNode(grammarAccess.getAssertionRule());
3214 pushFollow(FOLLOW_1);
3215 iv_ruleAssertion=ruleAssertion();
3216
3217 state._fsp--;
3218
3219 current =iv_ruleAssertion;
3220 match(input,EOF,FOLLOW_2);
3221
3222 }
3223
3224 }
3225
3226 catch (RecognitionException re) {
3227 recover(input,re);
3228 appendSkippedTokens();
3229 }
3230 finally {
3231 }
3232 return current;
3233 }
3234 // $ANTLR end "entryRuleAssertion"
3235
3236
3237 // $ANTLR start "ruleAssertion"
3238 // InternalProblem.g:1211:1: ruleAssertion returns [EObject current=null] : ( ( ( ( ( ruleQualifiedName ) ) otherlv_1= '(' ( ( (lv_arguments_2_0= ruleAssertionArgument ) ) (otherlv_3= ',' ( (lv_arguments_4_0= ruleAssertionArgument ) ) )* )? otherlv_5= ')' otherlv_6= ':' ( (lv_value_7_0= ruleLogicValue ) ) ) | ( ( (lv_value_8_0= ruleShortLogicValue ) )? ( ( ruleQualifiedName ) ) otherlv_10= '(' ( ( (lv_arguments_11_0= ruleAssertionArgument ) ) (otherlv_12= ',' ( (lv_arguments_13_0= ruleAssertionArgument ) ) )* )? otherlv_14= ')' ) ) otherlv_15= '.' ) ;
3239 public final EObject ruleAssertion() throws RecognitionException {
3240 EObject current = null;
3241
3242 Token otherlv_1=null;
3243 Token otherlv_3=null;
3244 Token otherlv_5=null;
3245 Token otherlv_6=null;
3246 Token otherlv_10=null;
3247 Token otherlv_12=null;
3248 Token otherlv_14=null;
3249 Token otherlv_15=null;
3250 EObject lv_arguments_2_0 = null;
3251
3252 EObject lv_arguments_4_0 = null;
3253
3254 Enumerator lv_value_7_0 = null;
3255
3256 Enumerator lv_value_8_0 = null;
3257
3258 EObject lv_arguments_11_0 = null;
3259
3260 EObject lv_arguments_13_0 = null;
3261
3262
3263
3264 enterRule();
3265
3266 try {
3267 // InternalProblem.g:1217:2: ( ( ( ( ( ( ruleQualifiedName ) ) otherlv_1= '(' ( ( (lv_arguments_2_0= ruleAssertionArgument ) ) (otherlv_3= ',' ( (lv_arguments_4_0= ruleAssertionArgument ) ) )* )? otherlv_5= ')' otherlv_6= ':' ( (lv_value_7_0= ruleLogicValue ) ) ) | ( ( (lv_value_8_0= ruleShortLogicValue ) )? ( ( ruleQualifiedName ) ) otherlv_10= '(' ( ( (lv_arguments_11_0= ruleAssertionArgument ) ) (otherlv_12= ',' ( (lv_arguments_13_0= ruleAssertionArgument ) ) )* )? otherlv_14= ')' ) ) otherlv_15= '.' ) )
3268 // InternalProblem.g:1218:2: ( ( ( ( ( ruleQualifiedName ) ) otherlv_1= '(' ( ( (lv_arguments_2_0= ruleAssertionArgument ) ) (otherlv_3= ',' ( (lv_arguments_4_0= ruleAssertionArgument ) ) )* )? otherlv_5= ')' otherlv_6= ':' ( (lv_value_7_0= ruleLogicValue ) ) ) | ( ( (lv_value_8_0= ruleShortLogicValue ) )? ( ( ruleQualifiedName ) ) otherlv_10= '(' ( ( (lv_arguments_11_0= ruleAssertionArgument ) ) (otherlv_12= ',' ( (lv_arguments_13_0= ruleAssertionArgument ) ) )* )? otherlv_14= ')' ) ) otherlv_15= '.' )
3269 {
3270 // InternalProblem.g:1218:2: ( ( ( ( ( ruleQualifiedName ) ) otherlv_1= '(' ( ( (lv_arguments_2_0= ruleAssertionArgument ) ) (otherlv_3= ',' ( (lv_arguments_4_0= ruleAssertionArgument ) ) )* )? otherlv_5= ')' otherlv_6= ':' ( (lv_value_7_0= ruleLogicValue ) ) ) | ( ( (lv_value_8_0= ruleShortLogicValue ) )? ( ( ruleQualifiedName ) ) otherlv_10= '(' ( ( (lv_arguments_11_0= ruleAssertionArgument ) ) (otherlv_12= ',' ( (lv_arguments_13_0= ruleAssertionArgument ) ) )* )? otherlv_14= ')' ) ) otherlv_15= '.' )
3271 // InternalProblem.g:1219:3: ( ( ( ( ruleQualifiedName ) ) otherlv_1= '(' ( ( (lv_arguments_2_0= ruleAssertionArgument ) ) (otherlv_3= ',' ( (lv_arguments_4_0= ruleAssertionArgument ) ) )* )? otherlv_5= ')' otherlv_6= ':' ( (lv_value_7_0= ruleLogicValue ) ) ) | ( ( (lv_value_8_0= ruleShortLogicValue ) )? ( ( ruleQualifiedName ) ) otherlv_10= '(' ( ( (lv_arguments_11_0= ruleAssertionArgument ) ) (otherlv_12= ',' ( (lv_arguments_13_0= ruleAssertionArgument ) ) )* )? otherlv_14= ')' ) ) otherlv_15= '.'
3272 {
3273 // InternalProblem.g:1219:3: ( ( ( ( ruleQualifiedName ) ) otherlv_1= '(' ( ( (lv_arguments_2_0= ruleAssertionArgument ) ) (otherlv_3= ',' ( (lv_arguments_4_0= ruleAssertionArgument ) ) )* )? otherlv_5= ')' otherlv_6= ':' ( (lv_value_7_0= ruleLogicValue ) ) ) | ( ( (lv_value_8_0= ruleShortLogicValue ) )? ( ( ruleQualifiedName ) ) otherlv_10= '(' ( ( (lv_arguments_11_0= ruleAssertionArgument ) ) (otherlv_12= ',' ( (lv_arguments_13_0= ruleAssertionArgument ) ) )* )? otherlv_14= ')' ) )
3274 int alt35=2;
3275 alt35 = dfa35.predict(input);
3276 switch (alt35) {
3277 case 1 :
3278 // InternalProblem.g:1220:4: ( ( ( ruleQualifiedName ) ) otherlv_1= '(' ( ( (lv_arguments_2_0= ruleAssertionArgument ) ) (otherlv_3= ',' ( (lv_arguments_4_0= ruleAssertionArgument ) ) )* )? otherlv_5= ')' otherlv_6= ':' ( (lv_value_7_0= ruleLogicValue ) ) )
3279 {
3280 // InternalProblem.g:1220:4: ( ( ( ruleQualifiedName ) ) otherlv_1= '(' ( ( (lv_arguments_2_0= ruleAssertionArgument ) ) (otherlv_3= ',' ( (lv_arguments_4_0= ruleAssertionArgument ) ) )* )? otherlv_5= ')' otherlv_6= ':' ( (lv_value_7_0= ruleLogicValue ) ) )
3281 // InternalProblem.g:1221:5: ( ( ruleQualifiedName ) ) otherlv_1= '(' ( ( (lv_arguments_2_0= ruleAssertionArgument ) ) (otherlv_3= ',' ( (lv_arguments_4_0= ruleAssertionArgument ) ) )* )? otherlv_5= ')' otherlv_6= ':' ( (lv_value_7_0= ruleLogicValue ) )
3282 {
3283 // InternalProblem.g:1221:5: ( ( ruleQualifiedName ) )
3284 // InternalProblem.g:1222:6: ( ruleQualifiedName )
3285 {
3286 // InternalProblem.g:1222:6: ( ruleQualifiedName )
3287 // InternalProblem.g:1223:7: ruleQualifiedName
3288 {
3289
3290 if (current==null) {
3291 current = createModelElement(grammarAccess.getAssertionRule());
3292 }
3293
3294
3295 newCompositeNode(grammarAccess.getAssertionAccess().getRelationRelationCrossReference_0_0_0_0());
3296
3297 pushFollow(FOLLOW_21);
3298 ruleQualifiedName();
3299
3300 state._fsp--;
3301
3302
3303 afterParserOrEnumRuleCall();
3304
3305
3306 }
3307
3308
3309 }
3310
3311 otherlv_1=(Token)match(input,30,FOLLOW_29);
3312
3313 newLeafNode(otherlv_1, grammarAccess.getAssertionAccess().getLeftParenthesisKeyword_0_0_1());
3314
3315 // InternalProblem.g:1241:5: ( ( (lv_arguments_2_0= ruleAssertionArgument ) ) (otherlv_3= ',' ( (lv_arguments_4_0= ruleAssertionArgument ) ) )* )?
3316 int alt31=2;
3317 int LA31_0 = input.LA(1);
3318
3319 if ( ((LA31_0>=RULE_STRING && LA31_0<=RULE_EXPONENTIAL)||(LA31_0>=42 && LA31_0<=44)) ) {
3320 alt31=1;
3321 }
3322 switch (alt31) {
3323 case 1 :
3324 // InternalProblem.g:1242:6: ( (lv_arguments_2_0= ruleAssertionArgument ) ) (otherlv_3= ',' ( (lv_arguments_4_0= ruleAssertionArgument ) ) )*
3325 {
3326 // InternalProblem.g:1242:6: ( (lv_arguments_2_0= ruleAssertionArgument ) )
3327 // InternalProblem.g:1243:7: (lv_arguments_2_0= ruleAssertionArgument )
3328 {
3329 // InternalProblem.g:1243:7: (lv_arguments_2_0= ruleAssertionArgument )
3330 // InternalProblem.g:1244:8: lv_arguments_2_0= ruleAssertionArgument
3331 {
3332
3333 newCompositeNode(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_0_2_0_0());
3334
3335 pushFollow(FOLLOW_23);
3336 lv_arguments_2_0=ruleAssertionArgument();
3337
3338 state._fsp--;
3339
3340
3341 if (current==null) {
3342 current = createModelElementForParent(grammarAccess.getAssertionRule());
3343 }
3344 add(
3345 current,
3346 "arguments",
3347 lv_arguments_2_0,
3348 "org.eclipse.viatra.solver.language.Problem.AssertionArgument");
3349 afterParserOrEnumRuleCall();
3350
3351
3352 }
3353
3354
3355 }
3356
3357 // InternalProblem.g:1261:6: (otherlv_3= ',' ( (lv_arguments_4_0= ruleAssertionArgument ) ) )*
3358 loop30:
3359 do {
3360 int alt30=2;
3361 int LA30_0 = input.LA(1);
3362
3363 if ( (LA30_0==18) ) {
3364 alt30=1;
3365 }
3366
3367
3368 switch (alt30) {
3369 case 1 :
3370 // InternalProblem.g:1262:7: otherlv_3= ',' ( (lv_arguments_4_0= ruleAssertionArgument ) )
3371 {
3372 otherlv_3=(Token)match(input,18,FOLLOW_30);
3373
3374 newLeafNode(otherlv_3, grammarAccess.getAssertionAccess().getCommaKeyword_0_0_2_1_0());
3375
3376 // InternalProblem.g:1266:7: ( (lv_arguments_4_0= ruleAssertionArgument ) )
3377 // InternalProblem.g:1267:8: (lv_arguments_4_0= ruleAssertionArgument )
3378 {
3379 // InternalProblem.g:1267:8: (lv_arguments_4_0= ruleAssertionArgument )
3380 // InternalProblem.g:1268:9: lv_arguments_4_0= ruleAssertionArgument
3381 {
3382
3383 newCompositeNode(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_0_2_1_1_0());
3384
3385 pushFollow(FOLLOW_23);
3386 lv_arguments_4_0=ruleAssertionArgument();
3387
3388 state._fsp--;
3389
3390
3391 if (current==null) {
3392 current = createModelElementForParent(grammarAccess.getAssertionRule());
3393 }
3394 add(
3395 current,
3396 "arguments",
3397 lv_arguments_4_0,
3398 "org.eclipse.viatra.solver.language.Problem.AssertionArgument");
3399 afterParserOrEnumRuleCall();
3400
3401
3402 }
3403
3404
3405 }
3406
3407
3408 }
3409 break;
3410
3411 default :
3412 break loop30;
3413 }
3414 } while (true);
3415
3416
3417 }
3418 break;
3419
3420 }
3421
3422 otherlv_5=(Token)match(input,31,FOLLOW_31);
3423
3424 newLeafNode(otherlv_5, grammarAccess.getAssertionAccess().getRightParenthesisKeyword_0_0_3());
3425
3426 otherlv_6=(Token)match(input,35,FOLLOW_32);
3427
3428 newLeafNode(otherlv_6, grammarAccess.getAssertionAccess().getColonKeyword_0_0_4());
3429
3430 // InternalProblem.g:1295:5: ( (lv_value_7_0= ruleLogicValue ) )
3431 // InternalProblem.g:1296:6: (lv_value_7_0= ruleLogicValue )
3432 {
3433 // InternalProblem.g:1296:6: (lv_value_7_0= ruleLogicValue )
3434 // InternalProblem.g:1297:7: lv_value_7_0= ruleLogicValue
3435 {
3436
3437 newCompositeNode(grammarAccess.getAssertionAccess().getValueLogicValueEnumRuleCall_0_0_5_0());
3438
3439 pushFollow(FOLLOW_4);
3440 lv_value_7_0=ruleLogicValue();
3441
3442 state._fsp--;
3443
3444
3445 if (current==null) {
3446 current = createModelElementForParent(grammarAccess.getAssertionRule());
3447 }
3448 set(
3449 current,
3450 "value",
3451 lv_value_7_0,
3452 "org.eclipse.viatra.solver.language.Problem.LogicValue");
3453 afterParserOrEnumRuleCall();
3454
3455
3456 }
3457
3458
3459 }
3460
3461
3462 }
3463
3464
3465 }
3466 break;
3467 case 2 :
3468 // InternalProblem.g:1316:4: ( ( (lv_value_8_0= ruleShortLogicValue ) )? ( ( ruleQualifiedName ) ) otherlv_10= '(' ( ( (lv_arguments_11_0= ruleAssertionArgument ) ) (otherlv_12= ',' ( (lv_arguments_13_0= ruleAssertionArgument ) ) )* )? otherlv_14= ')' )
3469 {
3470 // InternalProblem.g:1316:4: ( ( (lv_value_8_0= ruleShortLogicValue ) )? ( ( ruleQualifiedName ) ) otherlv_10= '(' ( ( (lv_arguments_11_0= ruleAssertionArgument ) ) (otherlv_12= ',' ( (lv_arguments_13_0= ruleAssertionArgument ) ) )* )? otherlv_14= ')' )
3471 // InternalProblem.g:1317:5: ( (lv_value_8_0= ruleShortLogicValue ) )? ( ( ruleQualifiedName ) ) otherlv_10= '(' ( ( (lv_arguments_11_0= ruleAssertionArgument ) ) (otherlv_12= ',' ( (lv_arguments_13_0= ruleAssertionArgument ) ) )* )? otherlv_14= ')'
3472 {
3473 // InternalProblem.g:1317:5: ( (lv_value_8_0= ruleShortLogicValue ) )?
3474 int alt32=2;
3475 int LA32_0 = input.LA(1);
3476
3477 if ( (LA32_0==33||LA32_0==46) ) {
3478 alt32=1;
3479 }
3480 switch (alt32) {
3481 case 1 :
3482 // InternalProblem.g:1318:6: (lv_value_8_0= ruleShortLogicValue )
3483 {
3484 // InternalProblem.g:1318:6: (lv_value_8_0= ruleShortLogicValue )
3485 // InternalProblem.g:1319:7: lv_value_8_0= ruleShortLogicValue
3486 {
3487
3488 newCompositeNode(grammarAccess.getAssertionAccess().getValueShortLogicValueEnumRuleCall_0_1_0_0());
3489
3490 pushFollow(FOLLOW_8);
3491 lv_value_8_0=ruleShortLogicValue();
3492
3493 state._fsp--;
3494
3495
3496 if (current==null) {
3497 current = createModelElementForParent(grammarAccess.getAssertionRule());
3498 }
3499 set(
3500 current,
3501 "value",
3502 lv_value_8_0,
3503 "org.eclipse.viatra.solver.language.Problem.ShortLogicValue");
3504 afterParserOrEnumRuleCall();
3505
3506
3507 }
3508
3509
3510 }
3511 break;
3512
3513 }
3514
3515 // InternalProblem.g:1336:5: ( ( ruleQualifiedName ) )
3516 // InternalProblem.g:1337:6: ( ruleQualifiedName )
3517 {
3518 // InternalProblem.g:1337:6: ( ruleQualifiedName )
3519 // InternalProblem.g:1338:7: ruleQualifiedName
3520 {
3521
3522 if (current==null) {
3523 current = createModelElement(grammarAccess.getAssertionRule());
3524 }
3525
3526
3527 newCompositeNode(grammarAccess.getAssertionAccess().getRelationRelationCrossReference_0_1_1_0());
3528
3529 pushFollow(FOLLOW_21);
3530 ruleQualifiedName();
3531
3532 state._fsp--;
3533
3534
3535 afterParserOrEnumRuleCall();
3536
3537
3538 }
3539
3540
3541 }
3542
3543 otherlv_10=(Token)match(input,30,FOLLOW_29);
3544
3545 newLeafNode(otherlv_10, grammarAccess.getAssertionAccess().getLeftParenthesisKeyword_0_1_2());
3546
3547 // InternalProblem.g:1356:5: ( ( (lv_arguments_11_0= ruleAssertionArgument ) ) (otherlv_12= ',' ( (lv_arguments_13_0= ruleAssertionArgument ) ) )* )?
3548 int alt34=2;
3549 int LA34_0 = input.LA(1);
3550
3551 if ( ((LA34_0>=RULE_STRING && LA34_0<=RULE_EXPONENTIAL)||(LA34_0>=42 && LA34_0<=44)) ) {
3552 alt34=1;
3553 }
3554 switch (alt34) {
3555 case 1 :
3556 // InternalProblem.g:1357:6: ( (lv_arguments_11_0= ruleAssertionArgument ) ) (otherlv_12= ',' ( (lv_arguments_13_0= ruleAssertionArgument ) ) )*
3557 {
3558 // InternalProblem.g:1357:6: ( (lv_arguments_11_0= ruleAssertionArgument ) )
3559 // InternalProblem.g:1358:7: (lv_arguments_11_0= ruleAssertionArgument )
3560 {
3561 // InternalProblem.g:1358:7: (lv_arguments_11_0= ruleAssertionArgument )
3562 // InternalProblem.g:1359:8: lv_arguments_11_0= ruleAssertionArgument
3563 {
3564
3565 newCompositeNode(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_1_3_0_0());
3566
3567 pushFollow(FOLLOW_23);
3568 lv_arguments_11_0=ruleAssertionArgument();
3569
3570 state._fsp--;
3571
3572
3573 if (current==null) {
3574 current = createModelElementForParent(grammarAccess.getAssertionRule());
3575 }
3576 add(
3577 current,
3578 "arguments",
3579 lv_arguments_11_0,
3580 "org.eclipse.viatra.solver.language.Problem.AssertionArgument");
3581 afterParserOrEnumRuleCall();
3582
3583
3584 }
3585
3586
3587 }
3588
3589 // InternalProblem.g:1376:6: (otherlv_12= ',' ( (lv_arguments_13_0= ruleAssertionArgument ) ) )*
3590 loop33:
3591 do {
3592 int alt33=2;
3593 int LA33_0 = input.LA(1);
3594
3595 if ( (LA33_0==18) ) {
3596 alt33=1;
3597 }
3598
3599
3600 switch (alt33) {
3601 case 1 :
3602 // InternalProblem.g:1377:7: otherlv_12= ',' ( (lv_arguments_13_0= ruleAssertionArgument ) )
3603 {
3604 otherlv_12=(Token)match(input,18,FOLLOW_30);
3605
3606 newLeafNode(otherlv_12, grammarAccess.getAssertionAccess().getCommaKeyword_0_1_3_1_0());
3607
3608 // InternalProblem.g:1381:7: ( (lv_arguments_13_0= ruleAssertionArgument ) )
3609 // InternalProblem.g:1382:8: (lv_arguments_13_0= ruleAssertionArgument )
3610 {
3611 // InternalProblem.g:1382:8: (lv_arguments_13_0= ruleAssertionArgument )
3612 // InternalProblem.g:1383:9: lv_arguments_13_0= ruleAssertionArgument
3613 {
3614
3615 newCompositeNode(grammarAccess.getAssertionAccess().getArgumentsAssertionArgumentParserRuleCall_0_1_3_1_1_0());
3616
3617 pushFollow(FOLLOW_23);
3618 lv_arguments_13_0=ruleAssertionArgument();
3619
3620 state._fsp--;
3621
3622
3623 if (current==null) {
3624 current = createModelElementForParent(grammarAccess.getAssertionRule());
3625 }
3626 add(
3627 current,
3628 "arguments",
3629 lv_arguments_13_0,
3630 "org.eclipse.viatra.solver.language.Problem.AssertionArgument");
3631 afterParserOrEnumRuleCall();
3632
3633
3634 }
3635
3636
3637 }
3638
3639
3640 }
3641 break;
3642
3643 default :
3644 break loop33;
3645 }
3646 } while (true);
3647
3648
3649 }
3650 break;
3651
3652 }
3653
3654 otherlv_14=(Token)match(input,31,FOLLOW_4);
3655
3656 newLeafNode(otherlv_14, grammarAccess.getAssertionAccess().getRightParenthesisKeyword_0_1_4());
3657
3658
3659 }
3660
3661
3662 }
3663 break;
3664
3665 }
3666
3667 otherlv_15=(Token)match(input,14,FOLLOW_2);
3668
3669 newLeafNode(otherlv_15, grammarAccess.getAssertionAccess().getFullStopKeyword_1());
3670
3671
3672 }
3673
3674
3675 }
3676
3677
3678 leaveRule();
3679
3680 }
3681
3682 catch (RecognitionException re) {
3683 recover(input,re);
3684 appendSkippedTokens();
3685 }
3686 finally {
3687 }
3688 return current;
3689 }
3690 // $ANTLR end "ruleAssertion"
3691
3692
3693 // $ANTLR start "entryRuleAssertionArgument"
3694 // InternalProblem.g:1416:1: entryRuleAssertionArgument returns [EObject current=null] : iv_ruleAssertionArgument= ruleAssertionArgument EOF ;
3695 public final EObject entryRuleAssertionArgument() throws RecognitionException {
3696 EObject current = null;
3697
3698 EObject iv_ruleAssertionArgument = null;
3699
3700
3701 try {
3702 // InternalProblem.g:1416:58: (iv_ruleAssertionArgument= ruleAssertionArgument EOF )
3703 // InternalProblem.g:1417:2: iv_ruleAssertionArgument= ruleAssertionArgument EOF
3704 {
3705 newCompositeNode(grammarAccess.getAssertionArgumentRule());
3706 pushFollow(FOLLOW_1);
3707 iv_ruleAssertionArgument=ruleAssertionArgument();
3708
3709 state._fsp--;
3710
3711 current =iv_ruleAssertionArgument;
3712 match(input,EOF,FOLLOW_2);
3713
3714 }
3715
3716 }
3717
3718 catch (RecognitionException re) {
3719 recover(input,re);
3720 appendSkippedTokens();
3721 }
3722 finally {
3723 }
3724 return current;
3725 }
3726 // $ANTLR end "entryRuleAssertionArgument"
3727
3728
3729 // $ANTLR start "ruleAssertionArgument"
3730 // InternalProblem.g:1423:1: ruleAssertionArgument returns [EObject current=null] : (this_NodeAssertionArgument_0= ruleNodeAssertionArgument | this_ConstantAssertionArgument_1= ruleConstantAssertionArgument ) ;
3731 public final EObject ruleAssertionArgument() throws RecognitionException {
3732 EObject current = null;
3733
3734 EObject this_NodeAssertionArgument_0 = null;
3735
3736 EObject this_ConstantAssertionArgument_1 = null;
3737
3738
3739
3740 enterRule();
3741
3742 try {
3743 // InternalProblem.g:1429:2: ( (this_NodeAssertionArgument_0= ruleNodeAssertionArgument | this_ConstantAssertionArgument_1= ruleConstantAssertionArgument ) )
3744 // InternalProblem.g:1430:2: (this_NodeAssertionArgument_0= ruleNodeAssertionArgument | this_ConstantAssertionArgument_1= ruleConstantAssertionArgument )
3745 {
3746 // InternalProblem.g:1430:2: (this_NodeAssertionArgument_0= ruleNodeAssertionArgument | this_ConstantAssertionArgument_1= ruleConstantAssertionArgument )
3747 int alt36=2;
3748 int LA36_0 = input.LA(1);
3749
3750 if ( (LA36_0==RULE_ID||LA36_0==RULE_QUOTED_ID||(LA36_0>=42 && LA36_0<=43)) ) {
3751 alt36=1;
3752 }
3753 else if ( (LA36_0==RULE_STRING||LA36_0==RULE_INT||LA36_0==RULE_EXPONENTIAL||LA36_0==44) ) {
3754 alt36=2;
3755 }
3756 else {
3757 NoViableAltException nvae =
3758 new NoViableAltException("", 36, 0, input);
3759
3760 throw nvae;
3761 }
3762 switch (alt36) {
3763 case 1 :
3764 // InternalProblem.g:1431:3: this_NodeAssertionArgument_0= ruleNodeAssertionArgument
3765 {
3766
3767 newCompositeNode(grammarAccess.getAssertionArgumentAccess().getNodeAssertionArgumentParserRuleCall_0());
3768
3769 pushFollow(FOLLOW_2);
3770 this_NodeAssertionArgument_0=ruleNodeAssertionArgument();
3771
3772 state._fsp--;
3773
3774
3775 current = this_NodeAssertionArgument_0;
3776 afterParserOrEnumRuleCall();
3777
3778
3779 }
3780 break;
3781 case 2 :
3782 // InternalProblem.g:1440:3: this_ConstantAssertionArgument_1= ruleConstantAssertionArgument
3783 {
3784
3785 newCompositeNode(grammarAccess.getAssertionArgumentAccess().getConstantAssertionArgumentParserRuleCall_1());
3786
3787 pushFollow(FOLLOW_2);
3788 this_ConstantAssertionArgument_1=ruleConstantAssertionArgument();
3789
3790 state._fsp--;
3791
3792
3793 current = this_ConstantAssertionArgument_1;
3794 afterParserOrEnumRuleCall();
3795
3796
3797 }
3798 break;
3799
3800 }
3801
3802
3803 }
3804
3805
3806 leaveRule();
3807
3808 }
3809
3810 catch (RecognitionException re) {
3811 recover(input,re);
3812 appendSkippedTokens();
3813 }
3814 finally {
3815 }
3816 return current;
3817 }
3818 // $ANTLR end "ruleAssertionArgument"
3819
3820
3821 // $ANTLR start "entryRuleNodeAssertionArgument"
3822 // InternalProblem.g:1452:1: entryRuleNodeAssertionArgument returns [EObject current=null] : iv_ruleNodeAssertionArgument= ruleNodeAssertionArgument EOF ;
3823 public final EObject entryRuleNodeAssertionArgument() throws RecognitionException {
3824 EObject current = null;
3825
3826 EObject iv_ruleNodeAssertionArgument = null;
3827
3828
3829 try {
3830 // InternalProblem.g:1452:62: (iv_ruleNodeAssertionArgument= ruleNodeAssertionArgument EOF )
3831 // InternalProblem.g:1453:2: iv_ruleNodeAssertionArgument= ruleNodeAssertionArgument EOF
3832 {
3833 newCompositeNode(grammarAccess.getNodeAssertionArgumentRule());
3834 pushFollow(FOLLOW_1);
3835 iv_ruleNodeAssertionArgument=ruleNodeAssertionArgument();
3836
3837 state._fsp--;
3838
3839 current =iv_ruleNodeAssertionArgument;
3840 match(input,EOF,FOLLOW_2);
3841
3842 }
3843
3844 }
3845
3846 catch (RecognitionException re) {
3847 recover(input,re);
3848 appendSkippedTokens();
3849 }
3850 finally {
3851 }
3852 return current;
3853 }
3854 // $ANTLR end "entryRuleNodeAssertionArgument"
3855
3856
3857 // $ANTLR start "ruleNodeAssertionArgument"
3858 // InternalProblem.g:1459:1: ruleNodeAssertionArgument returns [EObject current=null] : ( ( ruleQualifiedName ) ) ;
3859 public final EObject ruleNodeAssertionArgument() throws RecognitionException {
3860 EObject current = null;
3861
3862
3863 enterRule();
3864
3865 try {
3866 // InternalProblem.g:1465:2: ( ( ( ruleQualifiedName ) ) )
3867 // InternalProblem.g:1466:2: ( ( ruleQualifiedName ) )
3868 {
3869 // InternalProblem.g:1466:2: ( ( ruleQualifiedName ) )
3870 // InternalProblem.g:1467:3: ( ruleQualifiedName )
3871 {
3872 // InternalProblem.g:1467:3: ( ruleQualifiedName )
3873 // InternalProblem.g:1468:4: ruleQualifiedName
3874 {
3875
3876 if (current==null) {
3877 current = createModelElement(grammarAccess.getNodeAssertionArgumentRule());
3878 }
3879
3880
3881 newCompositeNode(grammarAccess.getNodeAssertionArgumentAccess().getNodeNodeCrossReference_0());
3882
3883 pushFollow(FOLLOW_2);
3884 ruleQualifiedName();
3885
3886 state._fsp--;
3887
3888
3889 afterParserOrEnumRuleCall();
3890
3891
3892 }
3893
3894
3895 }
3896
3897
3898 }
3899
3900
3901 leaveRule();
3902
3903 }
3904
3905 catch (RecognitionException re) {
3906 recover(input,re);
3907 appendSkippedTokens();
3908 }
3909 finally {
3910 }
3911 return current;
3912 }
3913 // $ANTLR end "ruleNodeAssertionArgument"
3914
3915
3916 // $ANTLR start "entryRuleConstantAssertionArgument"
3917 // InternalProblem.g:1485:1: entryRuleConstantAssertionArgument returns [EObject current=null] : iv_ruleConstantAssertionArgument= ruleConstantAssertionArgument EOF ;
3918 public final EObject entryRuleConstantAssertionArgument() throws RecognitionException {
3919 EObject current = null;
3920
3921 EObject iv_ruleConstantAssertionArgument = null;
3922
3923
3924 try {
3925 // InternalProblem.g:1485:66: (iv_ruleConstantAssertionArgument= ruleConstantAssertionArgument EOF )
3926 // InternalProblem.g:1486:2: iv_ruleConstantAssertionArgument= ruleConstantAssertionArgument EOF
3927 {
3928 newCompositeNode(grammarAccess.getConstantAssertionArgumentRule());
3929 pushFollow(FOLLOW_1);
3930 iv_ruleConstantAssertionArgument=ruleConstantAssertionArgument();
3931
3932 state._fsp--;
3933
3934 current =iv_ruleConstantAssertionArgument;
3935 match(input,EOF,FOLLOW_2);
3936
3937 }
3938
3939 }
3940
3941 catch (RecognitionException re) {
3942 recover(input,re);
3943 appendSkippedTokens();
3944 }
3945 finally {
3946 }
3947 return current;
3948 }
3949 // $ANTLR end "entryRuleConstantAssertionArgument"
3950
3951
3952 // $ANTLR start "ruleConstantAssertionArgument"
3953 // InternalProblem.g:1492:1: ruleConstantAssertionArgument returns [EObject current=null] : ( (lv_constant_0_0= ruleConstant ) ) ;
3954 public final EObject ruleConstantAssertionArgument() throws RecognitionException {
3955 EObject current = null;
3956
3957 EObject lv_constant_0_0 = null;
3958
3959
3960
3961 enterRule();
3962
3963 try {
3964 // InternalProblem.g:1498:2: ( ( (lv_constant_0_0= ruleConstant ) ) )
3965 // InternalProblem.g:1499:2: ( (lv_constant_0_0= ruleConstant ) )
3966 {
3967 // InternalProblem.g:1499:2: ( (lv_constant_0_0= ruleConstant ) )
3968 // InternalProblem.g:1500:3: (lv_constant_0_0= ruleConstant )
3969 {
3970 // InternalProblem.g:1500:3: (lv_constant_0_0= ruleConstant )
3971 // InternalProblem.g:1501:4: lv_constant_0_0= ruleConstant
3972 {
3973
3974 newCompositeNode(grammarAccess.getConstantAssertionArgumentAccess().getConstantConstantParserRuleCall_0());
3975
3976 pushFollow(FOLLOW_2);
3977 lv_constant_0_0=ruleConstant();
3978
3979 state._fsp--;
3980
3981
3982 if (current==null) {
3983 current = createModelElementForParent(grammarAccess.getConstantAssertionArgumentRule());
3984 }
3985 set(
3986 current,
3987 "constant",
3988 lv_constant_0_0,
3989 "org.eclipse.viatra.solver.language.Problem.Constant");
3990 afterParserOrEnumRuleCall();
3991
3992
3993 }
3994
3995
3996 }
3997
3998
3999 }
4000
4001
4002 leaveRule();
4003
4004 }
4005
4006 catch (RecognitionException re) {
4007 recover(input,re);
4008 appendSkippedTokens();
4009 }
4010 finally {
4011 }
4012 return current;
4013 }
4014 // $ANTLR end "ruleConstantAssertionArgument"
4015
4016
4017 // $ANTLR start "entryRuleNodeValueAssertion"
4018 // InternalProblem.g:1521:1: entryRuleNodeValueAssertion returns [EObject current=null] : iv_ruleNodeValueAssertion= ruleNodeValueAssertion EOF ;
4019 public final EObject entryRuleNodeValueAssertion() throws RecognitionException {
4020 EObject current = null;
4021
4022 EObject iv_ruleNodeValueAssertion = null;
4023
4024
4025 try {
4026 // InternalProblem.g:1521:59: (iv_ruleNodeValueAssertion= ruleNodeValueAssertion EOF )
4027 // InternalProblem.g:1522:2: iv_ruleNodeValueAssertion= ruleNodeValueAssertion EOF
4028 {
4029 newCompositeNode(grammarAccess.getNodeValueAssertionRule());
4030 pushFollow(FOLLOW_1);
4031 iv_ruleNodeValueAssertion=ruleNodeValueAssertion();
4032
4033 state._fsp--;
4034
4035 current =iv_ruleNodeValueAssertion;
4036 match(input,EOF,FOLLOW_2);
4037
4038 }
4039
4040 }
4041
4042 catch (RecognitionException re) {
4043 recover(input,re);
4044 appendSkippedTokens();
4045 }
4046 finally {
4047 }
4048 return current;
4049 }
4050 // $ANTLR end "entryRuleNodeValueAssertion"
4051
4052
4053 // $ANTLR start "ruleNodeValueAssertion"
4054 // InternalProblem.g:1528:1: ruleNodeValueAssertion returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) otherlv_1= ':' ( (lv_value_2_0= ruleConstant ) ) otherlv_3= '.' ) ;
4055 public final EObject ruleNodeValueAssertion() throws RecognitionException {
4056 EObject current = null;
4057
4058 Token otherlv_1=null;
4059 Token otherlv_3=null;
4060 EObject lv_value_2_0 = null;
4061
4062
4063
4064 enterRule();
4065
4066 try {
4067 // InternalProblem.g:1534:2: ( ( ( ( ruleQualifiedName ) ) otherlv_1= ':' ( (lv_value_2_0= ruleConstant ) ) otherlv_3= '.' ) )
4068 // InternalProblem.g:1535:2: ( ( ( ruleQualifiedName ) ) otherlv_1= ':' ( (lv_value_2_0= ruleConstant ) ) otherlv_3= '.' )
4069 {
4070 // InternalProblem.g:1535:2: ( ( ( ruleQualifiedName ) ) otherlv_1= ':' ( (lv_value_2_0= ruleConstant ) ) otherlv_3= '.' )
4071 // InternalProblem.g:1536:3: ( ( ruleQualifiedName ) ) otherlv_1= ':' ( (lv_value_2_0= ruleConstant ) ) otherlv_3= '.'
4072 {
4073 // InternalProblem.g:1536:3: ( ( ruleQualifiedName ) )
4074 // InternalProblem.g:1537:4: ( ruleQualifiedName )
4075 {
4076 // InternalProblem.g:1537:4: ( ruleQualifiedName )
4077 // InternalProblem.g:1538:5: ruleQualifiedName
4078 {
4079
4080 if (current==null) {
4081 current = createModelElement(grammarAccess.getNodeValueAssertionRule());
4082 }
4083
4084
4085 newCompositeNode(grammarAccess.getNodeValueAssertionAccess().getNodeNodeCrossReference_0_0());
4086
4087 pushFollow(FOLLOW_31);
4088 ruleQualifiedName();
4089
4090 state._fsp--;
4091
4092
4093 afterParserOrEnumRuleCall();
4094
4095
4096 }
4097
4098
4099 }
4100
4101 otherlv_1=(Token)match(input,35,FOLLOW_30);
4102
4103 newLeafNode(otherlv_1, grammarAccess.getNodeValueAssertionAccess().getColonKeyword_1());
4104
4105 // InternalProblem.g:1556:3: ( (lv_value_2_0= ruleConstant ) )
4106 // InternalProblem.g:1557:4: (lv_value_2_0= ruleConstant )
4107 {
4108 // InternalProblem.g:1557:4: (lv_value_2_0= ruleConstant )
4109 // InternalProblem.g:1558:5: lv_value_2_0= ruleConstant
4110 {
4111
4112 newCompositeNode(grammarAccess.getNodeValueAssertionAccess().getValueConstantParserRuleCall_2_0());
4113
4114 pushFollow(FOLLOW_4);
4115 lv_value_2_0=ruleConstant();
4116
4117 state._fsp--;
4118
4119
4120 if (current==null) {
4121 current = createModelElementForParent(grammarAccess.getNodeValueAssertionRule());
4122 }
4123 set(
4124 current,
4125 "value",
4126 lv_value_2_0,
4127 "org.eclipse.viatra.solver.language.Problem.Constant");
4128 afterParserOrEnumRuleCall();
4129
4130
4131 }
4132
4133
4134 }
4135
4136 otherlv_3=(Token)match(input,14,FOLLOW_2);
4137
4138 newLeafNode(otherlv_3, grammarAccess.getNodeValueAssertionAccess().getFullStopKeyword_3());
4139
4140
4141 }
4142
4143
4144 }
4145
4146
4147 leaveRule();
4148
4149 }
4150
4151 catch (RecognitionException re) {
4152 recover(input,re);
4153 appendSkippedTokens();
4154 }
4155 finally {
4156 }
4157 return current;
4158 }
4159 // $ANTLR end "ruleNodeValueAssertion"
4160
4161
4162 // $ANTLR start "entryRuleConstant"
4163 // InternalProblem.g:1583:1: entryRuleConstant returns [EObject current=null] : iv_ruleConstant= ruleConstant EOF ;
4164 public final EObject entryRuleConstant() throws RecognitionException {
4165 EObject current = null;
4166
4167 EObject iv_ruleConstant = null;
4168
4169
4170 try {
4171 // InternalProblem.g:1583:49: (iv_ruleConstant= ruleConstant EOF )
4172 // InternalProblem.g:1584:2: iv_ruleConstant= ruleConstant EOF
4173 {
4174 newCompositeNode(grammarAccess.getConstantRule());
4175 pushFollow(FOLLOW_1);
4176 iv_ruleConstant=ruleConstant();
4177
4178 state._fsp--;
4179
4180 current =iv_ruleConstant;
4181 match(input,EOF,FOLLOW_2);
4182
4183 }
4184
4185 }
4186
4187 catch (RecognitionException re) {
4188 recover(input,re);
4189 appendSkippedTokens();
4190 }
4191 finally {
4192 }
4193 return current;
4194 }
4195 // $ANTLR end "entryRuleConstant"
4196
4197
4198 // $ANTLR start "ruleConstant"
4199 // InternalProblem.g:1590:1: ruleConstant returns [EObject current=null] : (this_RealConstant_0= ruleRealConstant | this_IntConstant_1= ruleIntConstant | this_StringConstant_2= ruleStringConstant ) ;
4200 public final EObject ruleConstant() throws RecognitionException {
4201 EObject current = null;
4202
4203 EObject this_RealConstant_0 = null;
4204
4205 EObject this_IntConstant_1 = null;
4206
4207 EObject this_StringConstant_2 = null;
4208
4209
4210
4211 enterRule();
4212
4213 try {
4214 // InternalProblem.g:1596:2: ( (this_RealConstant_0= ruleRealConstant | this_IntConstant_1= ruleIntConstant | this_StringConstant_2= ruleStringConstant ) )
4215 // InternalProblem.g:1597:2: (this_RealConstant_0= ruleRealConstant | this_IntConstant_1= ruleIntConstant | this_StringConstant_2= ruleStringConstant )
4216 {
4217 // InternalProblem.g:1597:2: (this_RealConstant_0= ruleRealConstant | this_IntConstant_1= ruleIntConstant | this_StringConstant_2= ruleStringConstant )
4218 int alt37=3;
4219 switch ( input.LA(1) ) {
4220 case 44:
4221 {
4222 int LA37_1 = input.LA(2);
4223
4224 if ( (LA37_1==RULE_INT) ) {
4225 int LA37_3 = input.LA(3);
4226
4227 if ( (LA37_3==14) ) {
4228 int LA37_5 = input.LA(4);
4229
4230 if ( (LA37_5==EOF||LA37_5==RULE_ID||LA37_5==RULE_QUOTED_ID||(LA37_5>=15 && LA37_5<=16)||LA37_5==22||(LA37_5>=28 && LA37_5<=29)||LA37_5==33||LA37_5==36||(LA37_5>=42 && LA37_5<=43)||LA37_5==46) ) {
4231 alt37=2;
4232 }
4233 else if ( (LA37_5==RULE_INT||LA37_5==RULE_EXPONENTIAL) ) {
4234 alt37=1;
4235 }
4236 else {
4237 NoViableAltException nvae =
4238 new NoViableAltException("", 37, 5, input);
4239
4240 throw nvae;
4241 }
4242 }
4243 else if ( (LA37_3==EOF||LA37_3==18||LA37_3==31) ) {
4244 alt37=2;
4245 }
4246 else {
4247 NoViableAltException nvae =
4248 new NoViableAltException("", 37, 3, input);
4249
4250 throw nvae;
4251 }
4252 }
4253 else if ( (LA37_1==RULE_EXPONENTIAL) ) {
4254 alt37=1;
4255 }
4256 else {
4257 NoViableAltException nvae =
4258 new NoViableAltException("", 37, 1, input);
4259
4260 throw nvae;
4261 }
4262 }
4263 break;
4264 case RULE_EXPONENTIAL:
4265 {
4266 alt37=1;
4267 }
4268 break;
4269 case RULE_INT:
4270 {
4271 int LA37_3 = input.LA(2);
4272
4273 if ( (LA37_3==14) ) {
4274 int LA37_5 = input.LA(3);
4275
4276 if ( (LA37_5==EOF||LA37_5==RULE_ID||LA37_5==RULE_QUOTED_ID||(LA37_5>=15 && LA37_5<=16)||LA37_5==22||(LA37_5>=28 && LA37_5<=29)||LA37_5==33||LA37_5==36||(LA37_5>=42 && LA37_5<=43)||LA37_5==46) ) {
4277 alt37=2;
4278 }
4279 else if ( (LA37_5==RULE_INT||LA37_5==RULE_EXPONENTIAL) ) {
4280 alt37=1;
4281 }
4282 else {
4283 NoViableAltException nvae =
4284 new NoViableAltException("", 37, 5, input);
4285
4286 throw nvae;
4287 }
4288 }
4289 else if ( (LA37_3==EOF||LA37_3==18||LA37_3==31) ) {
4290 alt37=2;
4291 }
4292 else {
4293 NoViableAltException nvae =
4294 new NoViableAltException("", 37, 3, input);
4295
4296 throw nvae;
4297 }
4298 }
4299 break;
4300 case RULE_STRING:
4301 {
4302 alt37=3;
4303 }
4304 break;
4305 default:
4306 NoViableAltException nvae =
4307 new NoViableAltException("", 37, 0, input);
4308
4309 throw nvae;
4310 }
4311
4312 switch (alt37) {
4313 case 1 :
4314 // InternalProblem.g:1598:3: this_RealConstant_0= ruleRealConstant
4315 {
4316
4317 newCompositeNode(grammarAccess.getConstantAccess().getRealConstantParserRuleCall_0());
4318
4319 pushFollow(FOLLOW_2);
4320 this_RealConstant_0=ruleRealConstant();
4321
4322 state._fsp--;
4323
4324
4325 current = this_RealConstant_0;
4326 afterParserOrEnumRuleCall();
4327
4328
4329 }
4330 break;
4331 case 2 :
4332 // InternalProblem.g:1607:3: this_IntConstant_1= ruleIntConstant
4333 {
4334
4335 newCompositeNode(grammarAccess.getConstantAccess().getIntConstantParserRuleCall_1());
4336
4337 pushFollow(FOLLOW_2);
4338 this_IntConstant_1=ruleIntConstant();
4339
4340 state._fsp--;
4341
4342
4343 current = this_IntConstant_1;
4344 afterParserOrEnumRuleCall();
4345
4346
4347 }
4348 break;
4349 case 3 :
4350 // InternalProblem.g:1616:3: this_StringConstant_2= ruleStringConstant
4351 {
4352
4353 newCompositeNode(grammarAccess.getConstantAccess().getStringConstantParserRuleCall_2());
4354
4355 pushFollow(FOLLOW_2);
4356 this_StringConstant_2=ruleStringConstant();
4357
4358 state._fsp--;
4359
4360
4361 current = this_StringConstant_2;
4362 afterParserOrEnumRuleCall();
4363
4364
4365 }
4366 break;
4367
4368 }
4369
4370
4371 }
4372
4373
4374 leaveRule();
4375
4376 }
4377
4378 catch (RecognitionException re) {
4379 recover(input,re);
4380 appendSkippedTokens();
4381 }
4382 finally {
4383 }
4384 return current;
4385 }
4386 // $ANTLR end "ruleConstant"
4387
4388
4389 // $ANTLR start "entryRuleIntConstant"
4390 // InternalProblem.g:1628:1: entryRuleIntConstant returns [EObject current=null] : iv_ruleIntConstant= ruleIntConstant EOF ;
4391 public final EObject entryRuleIntConstant() throws RecognitionException {
4392 EObject current = null;
4393
4394 EObject iv_ruleIntConstant = null;
4395
4396
4397 try {
4398 // InternalProblem.g:1628:52: (iv_ruleIntConstant= ruleIntConstant EOF )
4399 // InternalProblem.g:1629:2: iv_ruleIntConstant= ruleIntConstant EOF
4400 {
4401 newCompositeNode(grammarAccess.getIntConstantRule());
4402 pushFollow(FOLLOW_1);
4403 iv_ruleIntConstant=ruleIntConstant();
4404
4405 state._fsp--;
4406
4407 current =iv_ruleIntConstant;
4408 match(input,EOF,FOLLOW_2);
4409
4410 }
4411
4412 }
4413
4414 catch (RecognitionException re) {
4415 recover(input,re);
4416 appendSkippedTokens();
4417 }
4418 finally {
4419 }
4420 return current;
4421 }
4422 // $ANTLR end "entryRuleIntConstant"
4423
4424
4425 // $ANTLR start "ruleIntConstant"
4426 // InternalProblem.g:1635:1: ruleIntConstant returns [EObject current=null] : ( (lv_intValue_0_0= ruleInteger ) ) ;
4427 public final EObject ruleIntConstant() throws RecognitionException {
4428 EObject current = null;
4429
4430 AntlrDatatypeRuleToken lv_intValue_0_0 = null;
4431
4432
4433
4434 enterRule();
4435
4436 try {
4437 // InternalProblem.g:1641:2: ( ( (lv_intValue_0_0= ruleInteger ) ) )
4438 // InternalProblem.g:1642:2: ( (lv_intValue_0_0= ruleInteger ) )
4439 {
4440 // InternalProblem.g:1642:2: ( (lv_intValue_0_0= ruleInteger ) )
4441 // InternalProblem.g:1643:3: (lv_intValue_0_0= ruleInteger )
4442 {
4443 // InternalProblem.g:1643:3: (lv_intValue_0_0= ruleInteger )
4444 // InternalProblem.g:1644:4: lv_intValue_0_0= ruleInteger
4445 {
4446
4447 newCompositeNode(grammarAccess.getIntConstantAccess().getIntValueIntegerParserRuleCall_0());
4448
4449 pushFollow(FOLLOW_2);
4450 lv_intValue_0_0=ruleInteger();
4451
4452 state._fsp--;
4453
4454
4455 if (current==null) {
4456 current = createModelElementForParent(grammarAccess.getIntConstantRule());
4457 }
4458 set(
4459 current,
4460 "intValue",
4461 lv_intValue_0_0,
4462 "org.eclipse.viatra.solver.language.Problem.Integer");
4463 afterParserOrEnumRuleCall();
4464
4465
4466 }
4467
4468
4469 }
4470
4471
4472 }
4473
4474
4475 leaveRule();
4476
4477 }
4478
4479 catch (RecognitionException re) {
4480 recover(input,re);
4481 appendSkippedTokens();
4482 }
4483 finally {
4484 }
4485 return current;
4486 }
4487 // $ANTLR end "ruleIntConstant"
4488
4489
4490 // $ANTLR start "entryRuleRealConstant"
4491 // InternalProblem.g:1664:1: entryRuleRealConstant returns [EObject current=null] : iv_ruleRealConstant= ruleRealConstant EOF ;
4492 public final EObject entryRuleRealConstant() throws RecognitionException {
4493 EObject current = null;
4494
4495 EObject iv_ruleRealConstant = null;
4496
4497
4498 try {
4499 // InternalProblem.g:1664:53: (iv_ruleRealConstant= ruleRealConstant EOF )
4500 // InternalProblem.g:1665:2: iv_ruleRealConstant= ruleRealConstant EOF
4501 {
4502 newCompositeNode(grammarAccess.getRealConstantRule());
4503 pushFollow(FOLLOW_1);
4504 iv_ruleRealConstant=ruleRealConstant();
4505
4506 state._fsp--;
4507
4508 current =iv_ruleRealConstant;
4509 match(input,EOF,FOLLOW_2);
4510
4511 }
4512
4513 }
4514
4515 catch (RecognitionException re) {
4516 recover(input,re);
4517 appendSkippedTokens();
4518 }
4519 finally {
4520 }
4521 return current;
4522 }
4523 // $ANTLR end "entryRuleRealConstant"
4524
4525
4526 // $ANTLR start "ruleRealConstant"
4527 // InternalProblem.g:1671:1: ruleRealConstant returns [EObject current=null] : ( (lv_realValue_0_0= ruleReal ) ) ;
4528 public final EObject ruleRealConstant() throws RecognitionException {
4529 EObject current = null;
4530
4531 AntlrDatatypeRuleToken lv_realValue_0_0 = null;
4532
4533
4534
4535 enterRule();
4536
4537 try {
4538 // InternalProblem.g:1677:2: ( ( (lv_realValue_0_0= ruleReal ) ) )
4539 // InternalProblem.g:1678:2: ( (lv_realValue_0_0= ruleReal ) )
4540 {
4541 // InternalProblem.g:1678:2: ( (lv_realValue_0_0= ruleReal ) )
4542 // InternalProblem.g:1679:3: (lv_realValue_0_0= ruleReal )
4543 {
4544 // InternalProblem.g:1679:3: (lv_realValue_0_0= ruleReal )
4545 // InternalProblem.g:1680:4: lv_realValue_0_0= ruleReal
4546 {
4547
4548 newCompositeNode(grammarAccess.getRealConstantAccess().getRealValueRealParserRuleCall_0());
4549
4550 pushFollow(FOLLOW_2);
4551 lv_realValue_0_0=ruleReal();
4552
4553 state._fsp--;
4554
4555
4556 if (current==null) {
4557 current = createModelElementForParent(grammarAccess.getRealConstantRule());
4558 }
4559 set(
4560 current,
4561 "realValue",
4562 lv_realValue_0_0,
4563 "org.eclipse.viatra.solver.language.Problem.Real");
4564 afterParserOrEnumRuleCall();
4565
4566
4567 }
4568
4569
4570 }
4571
4572
4573 }
4574
4575
4576 leaveRule();
4577
4578 }
4579
4580 catch (RecognitionException re) {
4581 recover(input,re);
4582 appendSkippedTokens();
4583 }
4584 finally {
4585 }
4586 return current;
4587 }
4588 // $ANTLR end "ruleRealConstant"
4589
4590
4591 // $ANTLR start "entryRuleStringConstant"
4592 // InternalProblem.g:1700:1: entryRuleStringConstant returns [EObject current=null] : iv_ruleStringConstant= ruleStringConstant EOF ;
4593 public final EObject entryRuleStringConstant() throws RecognitionException {
4594 EObject current = null;
4595
4596 EObject iv_ruleStringConstant = null;
4597
4598
4599 try {
4600 // InternalProblem.g:1700:55: (iv_ruleStringConstant= ruleStringConstant EOF )
4601 // InternalProblem.g:1701:2: iv_ruleStringConstant= ruleStringConstant EOF
4602 {
4603 newCompositeNode(grammarAccess.getStringConstantRule());
4604 pushFollow(FOLLOW_1);
4605 iv_ruleStringConstant=ruleStringConstant();
4606
4607 state._fsp--;
4608
4609 current =iv_ruleStringConstant;
4610 match(input,EOF,FOLLOW_2);
4611
4612 }
4613
4614 }
4615
4616 catch (RecognitionException re) {
4617 recover(input,re);
4618 appendSkippedTokens();
4619 }
4620 finally {
4621 }
4622 return current;
4623 }
4624 // $ANTLR end "entryRuleStringConstant"
4625
4626
4627 // $ANTLR start "ruleStringConstant"
4628 // InternalProblem.g:1707:1: ruleStringConstant returns [EObject current=null] : ( (lv_stringValue_0_0= RULE_STRING ) ) ;
4629 public final EObject ruleStringConstant() throws RecognitionException {
4630 EObject current = null;
4631
4632 Token lv_stringValue_0_0=null;
4633
4634
4635 enterRule();
4636
4637 try {
4638 // InternalProblem.g:1713:2: ( ( (lv_stringValue_0_0= RULE_STRING ) ) )
4639 // InternalProblem.g:1714:2: ( (lv_stringValue_0_0= RULE_STRING ) )
4640 {
4641 // InternalProblem.g:1714:2: ( (lv_stringValue_0_0= RULE_STRING ) )
4642 // InternalProblem.g:1715:3: (lv_stringValue_0_0= RULE_STRING )
4643 {
4644 // InternalProblem.g:1715:3: (lv_stringValue_0_0= RULE_STRING )
4645 // InternalProblem.g:1716:4: lv_stringValue_0_0= RULE_STRING
4646 {
4647 lv_stringValue_0_0=(Token)match(input,RULE_STRING,FOLLOW_2);
4648
4649 newLeafNode(lv_stringValue_0_0, grammarAccess.getStringConstantAccess().getStringValueSTRINGTerminalRuleCall_0());
4650
4651
4652 if (current==null) {
4653 current = createModelElement(grammarAccess.getStringConstantRule());
4654 }
4655 setWithLastConsumed(
4656 current,
4657 "stringValue",
4658 lv_stringValue_0_0,
4659 "org.eclipse.viatra.solver.language.Problem.STRING");
4660
4661
4662 }
4663
4664
4665 }
4666
4667
4668 }
4669
4670
4671 leaveRule();
4672
4673 }
4674
4675 catch (RecognitionException re) {
4676 recover(input,re);
4677 appendSkippedTokens();
4678 }
4679 finally {
4680 }
4681 return current;
4682 }
4683 // $ANTLR end "ruleStringConstant"
4684
4685
4686 // $ANTLR start "entryRuleScopeDeclaration"
4687 // InternalProblem.g:1735:1: entryRuleScopeDeclaration returns [EObject current=null] : iv_ruleScopeDeclaration= ruleScopeDeclaration EOF ;
4688 public final EObject entryRuleScopeDeclaration() throws RecognitionException {
4689 EObject current = null;
4690
4691 EObject iv_ruleScopeDeclaration = null;
4692
4693
4694 try {
4695 // InternalProblem.g:1735:57: (iv_ruleScopeDeclaration= ruleScopeDeclaration EOF )
4696 // InternalProblem.g:1736:2: iv_ruleScopeDeclaration= ruleScopeDeclaration EOF
4697 {
4698 newCompositeNode(grammarAccess.getScopeDeclarationRule());
4699 pushFollow(FOLLOW_1);
4700 iv_ruleScopeDeclaration=ruleScopeDeclaration();
4701
4702 state._fsp--;
4703
4704 current =iv_ruleScopeDeclaration;
4705 match(input,EOF,FOLLOW_2);
4706
4707 }
4708
4709 }
4710
4711 catch (RecognitionException re) {
4712 recover(input,re);
4713 appendSkippedTokens();
4714 }
4715 finally {
4716 }
4717 return current;
4718 }
4719 // $ANTLR end "entryRuleScopeDeclaration"
4720
4721
4722 // $ANTLR start "ruleScopeDeclaration"
4723 // InternalProblem.g:1742:1: ruleScopeDeclaration returns [EObject current=null] : (otherlv_0= 'scope' ( (lv_typeScopes_1_0= ruleTypeScope ) ) (otherlv_2= ',' ( (lv_typeScopes_3_0= ruleTypeScope ) ) )* otherlv_4= '.' ) ;
4724 public final EObject ruleScopeDeclaration() throws RecognitionException {
4725 EObject current = null;
4726
4727 Token otherlv_0=null;
4728 Token otherlv_2=null;
4729 Token otherlv_4=null;
4730 EObject lv_typeScopes_1_0 = null;
4731
4732 EObject lv_typeScopes_3_0 = null;
4733
4734
4735
4736 enterRule();
4737
4738 try {
4739 // InternalProblem.g:1748:2: ( (otherlv_0= 'scope' ( (lv_typeScopes_1_0= ruleTypeScope ) ) (otherlv_2= ',' ( (lv_typeScopes_3_0= ruleTypeScope ) ) )* otherlv_4= '.' ) )
4740 // InternalProblem.g:1749:2: (otherlv_0= 'scope' ( (lv_typeScopes_1_0= ruleTypeScope ) ) (otherlv_2= ',' ( (lv_typeScopes_3_0= ruleTypeScope ) ) )* otherlv_4= '.' )
4741 {
4742 // InternalProblem.g:1749:2: (otherlv_0= 'scope' ( (lv_typeScopes_1_0= ruleTypeScope ) ) (otherlv_2= ',' ( (lv_typeScopes_3_0= ruleTypeScope ) ) )* otherlv_4= '.' )
4743 // InternalProblem.g:1750:3: otherlv_0= 'scope' ( (lv_typeScopes_1_0= ruleTypeScope ) ) (otherlv_2= ',' ( (lv_typeScopes_3_0= ruleTypeScope ) ) )* otherlv_4= '.'
4744 {
4745 otherlv_0=(Token)match(input,36,FOLLOW_33);
4746
4747 newLeafNode(otherlv_0, grammarAccess.getScopeDeclarationAccess().getScopeKeyword_0());
4748
4749 // InternalProblem.g:1754:3: ( (lv_typeScopes_1_0= ruleTypeScope ) )
4750 // InternalProblem.g:1755:4: (lv_typeScopes_1_0= ruleTypeScope )
4751 {
4752 // InternalProblem.g:1755:4: (lv_typeScopes_1_0= ruleTypeScope )
4753 // InternalProblem.g:1756:5: lv_typeScopes_1_0= ruleTypeScope
4754 {
4755
4756 newCompositeNode(grammarAccess.getScopeDeclarationAccess().getTypeScopesTypeScopeParserRuleCall_1_0());
4757
4758 pushFollow(FOLLOW_34);
4759 lv_typeScopes_1_0=ruleTypeScope();
4760
4761 state._fsp--;
4762
4763
4764 if (current==null) {
4765 current = createModelElementForParent(grammarAccess.getScopeDeclarationRule());
4766 }
4767 add(
4768 current,
4769 "typeScopes",
4770 lv_typeScopes_1_0,
4771 "org.eclipse.viatra.solver.language.Problem.TypeScope");
4772 afterParserOrEnumRuleCall();
4773
4774
4775 }
4776
4777
4778 }
4779
4780 // InternalProblem.g:1773:3: (otherlv_2= ',' ( (lv_typeScopes_3_0= ruleTypeScope ) ) )*
4781 loop38:
4782 do {
4783 int alt38=2;
4784 int LA38_0 = input.LA(1);
4785
4786 if ( (LA38_0==18) ) {
4787 alt38=1;
4788 }
4789
4790
4791 switch (alt38) {
4792 case 1 :
4793 // InternalProblem.g:1774:4: otherlv_2= ',' ( (lv_typeScopes_3_0= ruleTypeScope ) )
4794 {
4795 otherlv_2=(Token)match(input,18,FOLLOW_33);
4796
4797 newLeafNode(otherlv_2, grammarAccess.getScopeDeclarationAccess().getCommaKeyword_2_0());
4798
4799 // InternalProblem.g:1778:4: ( (lv_typeScopes_3_0= ruleTypeScope ) )
4800 // InternalProblem.g:1779:5: (lv_typeScopes_3_0= ruleTypeScope )
4801 {
4802 // InternalProblem.g:1779:5: (lv_typeScopes_3_0= ruleTypeScope )
4803 // InternalProblem.g:1780:6: lv_typeScopes_3_0= ruleTypeScope
4804 {
4805
4806 newCompositeNode(grammarAccess.getScopeDeclarationAccess().getTypeScopesTypeScopeParserRuleCall_2_1_0());
4807
4808 pushFollow(FOLLOW_34);
4809 lv_typeScopes_3_0=ruleTypeScope();
4810
4811 state._fsp--;
4812
4813
4814 if (current==null) {
4815 current = createModelElementForParent(grammarAccess.getScopeDeclarationRule());
4816 }
4817 add(
4818 current,
4819 "typeScopes",
4820 lv_typeScopes_3_0,
4821 "org.eclipse.viatra.solver.language.Problem.TypeScope");
4822 afterParserOrEnumRuleCall();
4823
4824
4825 }
4826
4827
4828 }
4829
4830
4831 }
4832 break;
4833
4834 default :
4835 break loop38;
4836 }
4837 } while (true);
4838
4839 otherlv_4=(Token)match(input,14,FOLLOW_2);
4840
4841 newLeafNode(otherlv_4, grammarAccess.getScopeDeclarationAccess().getFullStopKeyword_3());
4842
4843
4844 }
4845
4846
4847 }
4848
4849
4850 leaveRule();
4851
4852 }
4853
4854 catch (RecognitionException re) {
4855 recover(input,re);
4856 appendSkippedTokens();
4857 }
4858 finally {
4859 }
4860 return current;
4861 }
4862 // $ANTLR end "ruleScopeDeclaration"
4863
4864
4865 // $ANTLR start "entryRuleTypeScope"
4866 // InternalProblem.g:1806:1: entryRuleTypeScope returns [EObject current=null] : iv_ruleTypeScope= ruleTypeScope EOF ;
4867 public final EObject entryRuleTypeScope() throws RecognitionException {
4868 EObject current = null;
4869
4870 EObject iv_ruleTypeScope = null;
4871
4872
4873 try {
4874 // InternalProblem.g:1806:50: (iv_ruleTypeScope= ruleTypeScope EOF )
4875 // InternalProblem.g:1807:2: iv_ruleTypeScope= ruleTypeScope EOF
4876 {
4877 newCompositeNode(grammarAccess.getTypeScopeRule());
4878 pushFollow(FOLLOW_1);
4879 iv_ruleTypeScope=ruleTypeScope();
4880
4881 state._fsp--;
4882
4883 current =iv_ruleTypeScope;
4884 match(input,EOF,FOLLOW_2);
4885
4886 }
4887
4888 }
4889
4890 catch (RecognitionException re) {
4891 recover(input,re);
4892 appendSkippedTokens();
4893 }
4894 finally {
4895 }
4896 return current;
4897 }
4898 // $ANTLR end "entryRuleTypeScope"
4899
4900
4901 // $ANTLR start "ruleTypeScope"
4902 // InternalProblem.g:1813:1: ruleTypeScope returns [EObject current=null] : ( ( (otherlv_0= RULE_ID ) ) ( ( (lv_increment_1_0= '+=' ) ) | otherlv_2= '=' ) ( (lv_multiplicity_3_0= ruleDefiniteMultiplicity ) ) ) ;
4903 public final EObject ruleTypeScope() throws RecognitionException {
4904 EObject current = null;
4905
4906 Token otherlv_0=null;
4907 Token lv_increment_1_0=null;
4908 Token otherlv_2=null;
4909 EObject lv_multiplicity_3_0 = null;
4910
4911
4912
4913 enterRule();
4914
4915 try {
4916 // InternalProblem.g:1819:2: ( ( ( (otherlv_0= RULE_ID ) ) ( ( (lv_increment_1_0= '+=' ) ) | otherlv_2= '=' ) ( (lv_multiplicity_3_0= ruleDefiniteMultiplicity ) ) ) )
4917 // InternalProblem.g:1820:2: ( ( (otherlv_0= RULE_ID ) ) ( ( (lv_increment_1_0= '+=' ) ) | otherlv_2= '=' ) ( (lv_multiplicity_3_0= ruleDefiniteMultiplicity ) ) )
4918 {
4919 // InternalProblem.g:1820:2: ( ( (otherlv_0= RULE_ID ) ) ( ( (lv_increment_1_0= '+=' ) ) | otherlv_2= '=' ) ( (lv_multiplicity_3_0= ruleDefiniteMultiplicity ) ) )
4920 // InternalProblem.g:1821:3: ( (otherlv_0= RULE_ID ) ) ( ( (lv_increment_1_0= '+=' ) ) | otherlv_2= '=' ) ( (lv_multiplicity_3_0= ruleDefiniteMultiplicity ) )
4921 {
4922 // InternalProblem.g:1821:3: ( (otherlv_0= RULE_ID ) )
4923 // InternalProblem.g:1822:4: (otherlv_0= RULE_ID )
4924 {
4925 // InternalProblem.g:1822:4: (otherlv_0= RULE_ID )
4926 // InternalProblem.g:1823:5: otherlv_0= RULE_ID
4927 {
4928
4929 if (current==null) {
4930 current = createModelElement(grammarAccess.getTypeScopeRule());
4931 }
4932
4933 otherlv_0=(Token)match(input,RULE_ID,FOLLOW_35);
4934
4935 newLeafNode(otherlv_0, grammarAccess.getTypeScopeAccess().getTargetTypeClassDeclarationCrossReference_0_0());
4936
4937
4938 }
4939
4940
4941 }
4942
4943 // InternalProblem.g:1834:3: ( ( (lv_increment_1_0= '+=' ) ) | otherlv_2= '=' )
4944 int alt39=2;
4945 int LA39_0 = input.LA(1);
4946
4947 if ( (LA39_0==37) ) {
4948 alt39=1;
4949 }
4950 else if ( (LA39_0==38) ) {
4951 alt39=2;
4952 }
4953 else {
4954 NoViableAltException nvae =
4955 new NoViableAltException("", 39, 0, input);
4956
4957 throw nvae;
4958 }
4959 switch (alt39) {
4960 case 1 :
4961 // InternalProblem.g:1835:4: ( (lv_increment_1_0= '+=' ) )
4962 {
4963 // InternalProblem.g:1835:4: ( (lv_increment_1_0= '+=' ) )
4964 // InternalProblem.g:1836:5: (lv_increment_1_0= '+=' )
4965 {
4966 // InternalProblem.g:1836:5: (lv_increment_1_0= '+=' )
4967 // InternalProblem.g:1837:6: lv_increment_1_0= '+='
4968 {
4969 lv_increment_1_0=(Token)match(input,37,FOLLOW_17);
4970
4971 newLeafNode(lv_increment_1_0, grammarAccess.getTypeScopeAccess().getIncrementPlusSignEqualsSignKeyword_1_0_0());
4972
4973
4974 if (current==null) {
4975 current = createModelElement(grammarAccess.getTypeScopeRule());
4976 }
4977 setWithLastConsumed(current, "increment", lv_increment_1_0 != null, "+=");
4978
4979
4980 }
4981
4982
4983 }
4984
4985
4986 }
4987 break;
4988 case 2 :
4989 // InternalProblem.g:1850:4: otherlv_2= '='
4990 {
4991 otherlv_2=(Token)match(input,38,FOLLOW_17);
4992
4993 newLeafNode(otherlv_2, grammarAccess.getTypeScopeAccess().getEqualsSignKeyword_1_1());
4994
4995
4996 }
4997 break;
4998
4999 }
5000
5001 // InternalProblem.g:1855:3: ( (lv_multiplicity_3_0= ruleDefiniteMultiplicity ) )
5002 // InternalProblem.g:1856:4: (lv_multiplicity_3_0= ruleDefiniteMultiplicity )
5003 {
5004 // InternalProblem.g:1856:4: (lv_multiplicity_3_0= ruleDefiniteMultiplicity )
5005 // InternalProblem.g:1857:5: lv_multiplicity_3_0= ruleDefiniteMultiplicity
5006 {
5007
5008 newCompositeNode(grammarAccess.getTypeScopeAccess().getMultiplicityDefiniteMultiplicityParserRuleCall_2_0());
5009
5010 pushFollow(FOLLOW_2);
5011 lv_multiplicity_3_0=ruleDefiniteMultiplicity();
5012
5013 state._fsp--;
5014
5015
5016 if (current==null) {
5017 current = createModelElementForParent(grammarAccess.getTypeScopeRule());
5018 }
5019 set(
5020 current,
5021 "multiplicity",
5022 lv_multiplicity_3_0,
5023 "org.eclipse.viatra.solver.language.Problem.DefiniteMultiplicity");
5024 afterParserOrEnumRuleCall();
5025
5026
5027 }
5028
5029
5030 }
5031
5032
5033 }
5034
5035
5036 }
5037
5038
5039 leaveRule();
5040
5041 }
5042
5043 catch (RecognitionException re) {
5044 recover(input,re);
5045 appendSkippedTokens();
5046 }
5047 finally {
5048 }
5049 return current;
5050 }
5051 // $ANTLR end "ruleTypeScope"
5052
5053
5054 // $ANTLR start "entryRuleMultiplicity"
5055 // InternalProblem.g:1878:1: entryRuleMultiplicity returns [EObject current=null] : iv_ruleMultiplicity= ruleMultiplicity EOF ;
5056 public final EObject entryRuleMultiplicity() throws RecognitionException {
5057 EObject current = null;
5058
5059 EObject iv_ruleMultiplicity = null;
5060
5061
5062 try {
5063 // InternalProblem.g:1878:53: (iv_ruleMultiplicity= ruleMultiplicity EOF )
5064 // InternalProblem.g:1879:2: iv_ruleMultiplicity= ruleMultiplicity EOF
5065 {
5066 newCompositeNode(grammarAccess.getMultiplicityRule());
5067 pushFollow(FOLLOW_1);
5068 iv_ruleMultiplicity=ruleMultiplicity();
5069
5070 state._fsp--;
5071
5072 current =iv_ruleMultiplicity;
5073 match(input,EOF,FOLLOW_2);
5074
5075 }
5076
5077 }
5078
5079 catch (RecognitionException re) {
5080 recover(input,re);
5081 appendSkippedTokens();
5082 }
5083 finally {
5084 }
5085 return current;
5086 }
5087 // $ANTLR end "entryRuleMultiplicity"
5088
5089
5090 // $ANTLR start "ruleMultiplicity"
5091 // InternalProblem.g:1885:1: ruleMultiplicity returns [EObject current=null] : (this_UnboundedMultiplicity_0= ruleUnboundedMultiplicity | this_DefiniteMultiplicity_1= ruleDefiniteMultiplicity ) ;
5092 public final EObject ruleMultiplicity() throws RecognitionException {
5093 EObject current = null;
5094
5095 EObject this_UnboundedMultiplicity_0 = null;
5096
5097 EObject this_DefiniteMultiplicity_1 = null;
5098
5099
5100
5101 enterRule();
5102
5103 try {
5104 // InternalProblem.g:1891:2: ( (this_UnboundedMultiplicity_0= ruleUnboundedMultiplicity | this_DefiniteMultiplicity_1= ruleDefiniteMultiplicity ) )
5105 // InternalProblem.g:1892:2: (this_UnboundedMultiplicity_0= ruleUnboundedMultiplicity | this_DefiniteMultiplicity_1= ruleDefiniteMultiplicity )
5106 {
5107 // InternalProblem.g:1892:2: (this_UnboundedMultiplicity_0= ruleUnboundedMultiplicity | this_DefiniteMultiplicity_1= ruleDefiniteMultiplicity )
5108 int alt40=2;
5109 int LA40_0 = input.LA(1);
5110
5111 if ( (LA40_0==EOF||LA40_0==26) ) {
5112 alt40=1;
5113 }
5114 else if ( (LA40_0==RULE_INT) ) {
5115 alt40=2;
5116 }
5117 else {
5118 NoViableAltException nvae =
5119 new NoViableAltException("", 40, 0, input);
5120
5121 throw nvae;
5122 }
5123 switch (alt40) {
5124 case 1 :
5125 // InternalProblem.g:1893:3: this_UnboundedMultiplicity_0= ruleUnboundedMultiplicity
5126 {
5127
5128 newCompositeNode(grammarAccess.getMultiplicityAccess().getUnboundedMultiplicityParserRuleCall_0());
5129
5130 pushFollow(FOLLOW_2);
5131 this_UnboundedMultiplicity_0=ruleUnboundedMultiplicity();
5132
5133 state._fsp--;
5134
5135
5136 current = this_UnboundedMultiplicity_0;
5137 afterParserOrEnumRuleCall();
5138
5139
5140 }
5141 break;
5142 case 2 :
5143 // InternalProblem.g:1902:3: this_DefiniteMultiplicity_1= ruleDefiniteMultiplicity
5144 {
5145
5146 newCompositeNode(grammarAccess.getMultiplicityAccess().getDefiniteMultiplicityParserRuleCall_1());
5147
5148 pushFollow(FOLLOW_2);
5149 this_DefiniteMultiplicity_1=ruleDefiniteMultiplicity();
5150
5151 state._fsp--;
5152
5153
5154 current = this_DefiniteMultiplicity_1;
5155 afterParserOrEnumRuleCall();
5156
5157
5158 }
5159 break;
5160
5161 }
5162
5163
5164 }
5165
5166
5167 leaveRule();
5168
5169 }
5170
5171 catch (RecognitionException re) {
5172 recover(input,re);
5173 appendSkippedTokens();
5174 }
5175 finally {
5176 }
5177 return current;
5178 }
5179 // $ANTLR end "ruleMultiplicity"
5180
5181
5182 // $ANTLR start "entryRuleDefiniteMultiplicity"
5183 // InternalProblem.g:1914:1: entryRuleDefiniteMultiplicity returns [EObject current=null] : iv_ruleDefiniteMultiplicity= ruleDefiniteMultiplicity EOF ;
5184 public final EObject entryRuleDefiniteMultiplicity() throws RecognitionException {
5185 EObject current = null;
5186
5187 EObject iv_ruleDefiniteMultiplicity = null;
5188
5189
5190 try {
5191 // InternalProblem.g:1914:61: (iv_ruleDefiniteMultiplicity= ruleDefiniteMultiplicity EOF )
5192 // InternalProblem.g:1915:2: iv_ruleDefiniteMultiplicity= ruleDefiniteMultiplicity EOF
5193 {
5194 newCompositeNode(grammarAccess.getDefiniteMultiplicityRule());
5195 pushFollow(FOLLOW_1);
5196 iv_ruleDefiniteMultiplicity=ruleDefiniteMultiplicity();
5197
5198 state._fsp--;
5199
5200 current =iv_ruleDefiniteMultiplicity;
5201 match(input,EOF,FOLLOW_2);
5202
5203 }
5204
5205 }
5206
5207 catch (RecognitionException re) {
5208 recover(input,re);
5209 appendSkippedTokens();
5210 }
5211 finally {
5212 }
5213 return current;
5214 }
5215 // $ANTLR end "entryRuleDefiniteMultiplicity"
5216
5217
5218 // $ANTLR start "ruleDefiniteMultiplicity"
5219 // InternalProblem.g:1921:1: ruleDefiniteMultiplicity returns [EObject current=null] : (this_RangeMultiplicity_0= ruleRangeMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity ) ;
5220 public final EObject ruleDefiniteMultiplicity() throws RecognitionException {
5221 EObject current = null;
5222
5223 EObject this_RangeMultiplicity_0 = null;
5224
5225 EObject this_ExactMultiplicity_1 = null;
5226
5227
5228
5229 enterRule();
5230
5231 try {
5232 // InternalProblem.g:1927:2: ( (this_RangeMultiplicity_0= ruleRangeMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity ) )
5233 // InternalProblem.g:1928:2: (this_RangeMultiplicity_0= ruleRangeMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity )
5234 {
5235 // InternalProblem.g:1928:2: (this_RangeMultiplicity_0= ruleRangeMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity )
5236 int alt41=2;
5237 int LA41_0 = input.LA(1);
5238
5239 if ( (LA41_0==RULE_INT) ) {
5240 int LA41_1 = input.LA(2);
5241
5242 if ( (LA41_1==39) ) {
5243 alt41=1;
5244 }
5245 else if ( (LA41_1==EOF||LA41_1==14||LA41_1==18||LA41_1==26) ) {
5246 alt41=2;
5247 }
5248 else {
5249 NoViableAltException nvae =
5250 new NoViableAltException("", 41, 1, input);
5251
5252 throw nvae;
5253 }
5254 }
5255 else {
5256 NoViableAltException nvae =
5257 new NoViableAltException("", 41, 0, input);
5258
5259 throw nvae;
5260 }
5261 switch (alt41) {
5262 case 1 :
5263 // InternalProblem.g:1929:3: this_RangeMultiplicity_0= ruleRangeMultiplicity
5264 {
5265
5266 newCompositeNode(grammarAccess.getDefiniteMultiplicityAccess().getRangeMultiplicityParserRuleCall_0());
5267
5268 pushFollow(FOLLOW_2);
5269 this_RangeMultiplicity_0=ruleRangeMultiplicity();
5270
5271 state._fsp--;
5272
5273
5274 current = this_RangeMultiplicity_0;
5275 afterParserOrEnumRuleCall();
5276
5277
5278 }
5279 break;
5280 case 2 :
5281 // InternalProblem.g:1938:3: this_ExactMultiplicity_1= ruleExactMultiplicity
5282 {
5283
5284 newCompositeNode(grammarAccess.getDefiniteMultiplicityAccess().getExactMultiplicityParserRuleCall_1());
5285
5286 pushFollow(FOLLOW_2);
5287 this_ExactMultiplicity_1=ruleExactMultiplicity();
5288
5289 state._fsp--;
5290
5291
5292 current = this_ExactMultiplicity_1;
5293 afterParserOrEnumRuleCall();
5294
5295
5296 }
5297 break;
5298
5299 }
5300
5301
5302 }
5303
5304
5305 leaveRule();
5306
5307 }
5308
5309 catch (RecognitionException re) {
5310 recover(input,re);
5311 appendSkippedTokens();
5312 }
5313 finally {
5314 }
5315 return current;
5316 }
5317 // $ANTLR end "ruleDefiniteMultiplicity"
5318
5319
5320 // $ANTLR start "entryRuleUnboundedMultiplicity"
5321 // InternalProblem.g:1950:1: entryRuleUnboundedMultiplicity returns [EObject current=null] : iv_ruleUnboundedMultiplicity= ruleUnboundedMultiplicity EOF ;
5322 public final EObject entryRuleUnboundedMultiplicity() throws RecognitionException {
5323 EObject current = null;
5324
5325 EObject iv_ruleUnboundedMultiplicity = null;
5326
5327
5328 try {
5329 // InternalProblem.g:1950:62: (iv_ruleUnboundedMultiplicity= ruleUnboundedMultiplicity EOF )
5330 // InternalProblem.g:1951:2: iv_ruleUnboundedMultiplicity= ruleUnboundedMultiplicity EOF
5331 {
5332 newCompositeNode(grammarAccess.getUnboundedMultiplicityRule());
5333 pushFollow(FOLLOW_1);
5334 iv_ruleUnboundedMultiplicity=ruleUnboundedMultiplicity();
5335
5336 state._fsp--;
5337
5338 current =iv_ruleUnboundedMultiplicity;
5339 match(input,EOF,FOLLOW_2);
5340
5341 }
5342
5343 }
5344
5345 catch (RecognitionException re) {
5346 recover(input,re);
5347 appendSkippedTokens();
5348 }
5349 finally {
5350 }
5351 return current;
5352 }
5353 // $ANTLR end "entryRuleUnboundedMultiplicity"
5354
5355
5356 // $ANTLR start "ruleUnboundedMultiplicity"
5357 // InternalProblem.g:1957:1: ruleUnboundedMultiplicity returns [EObject current=null] : () ;
5358 public final EObject ruleUnboundedMultiplicity() throws RecognitionException {
5359 EObject current = null;
5360
5361
5362 enterRule();
5363
5364 try {
5365 // InternalProblem.g:1963:2: ( () )
5366 // InternalProblem.g:1964:2: ()
5367 {
5368 // InternalProblem.g:1964:2: ()
5369 // InternalProblem.g:1965:3:
5370 {
5371
5372 current = forceCreateModelElement(
5373 grammarAccess.getUnboundedMultiplicityAccess().getUnboundedMultiplicityAction(),
5374 current);
5375
5376
5377 }
5378
5379
5380 }
5381
5382
5383 leaveRule();
5384
5385 }
5386 finally {
5387 }
5388 return current;
5389 }
5390 // $ANTLR end "ruleUnboundedMultiplicity"
5391
5392
5393 // $ANTLR start "entryRuleRangeMultiplicity"
5394 // InternalProblem.g:1974:1: entryRuleRangeMultiplicity returns [EObject current=null] : iv_ruleRangeMultiplicity= ruleRangeMultiplicity EOF ;
5395 public final EObject entryRuleRangeMultiplicity() throws RecognitionException {
5396 EObject current = null;
5397
5398 EObject iv_ruleRangeMultiplicity = null;
5399
5400
5401 try {
5402 // InternalProblem.g:1974:58: (iv_ruleRangeMultiplicity= ruleRangeMultiplicity EOF )
5403 // InternalProblem.g:1975:2: iv_ruleRangeMultiplicity= ruleRangeMultiplicity EOF
5404 {
5405 newCompositeNode(grammarAccess.getRangeMultiplicityRule());
5406 pushFollow(FOLLOW_1);
5407 iv_ruleRangeMultiplicity=ruleRangeMultiplicity();
5408
5409 state._fsp--;
5410
5411 current =iv_ruleRangeMultiplicity;
5412 match(input,EOF,FOLLOW_2);
5413
5414 }
5415
5416 }
5417
5418 catch (RecognitionException re) {
5419 recover(input,re);
5420 appendSkippedTokens();
5421 }
5422 finally {
5423 }
5424 return current;
5425 }
5426 // $ANTLR end "entryRuleRangeMultiplicity"
5427
5428
5429 // $ANTLR start "ruleRangeMultiplicity"
5430 // InternalProblem.g:1981:1: ruleRangeMultiplicity returns [EObject current=null] : ( ( (lv_lowerBound_0_0= RULE_INT ) ) otherlv_1= '..' ( (lv_upperBound_2_0= ruleUpperBound ) ) ) ;
5431 public final EObject ruleRangeMultiplicity() throws RecognitionException {
5432 EObject current = null;
5433
5434 Token lv_lowerBound_0_0=null;
5435 Token otherlv_1=null;
5436 AntlrDatatypeRuleToken lv_upperBound_2_0 = null;
5437
5438
5439
5440 enterRule();
5441
5442 try {
5443 // InternalProblem.g:1987:2: ( ( ( (lv_lowerBound_0_0= RULE_INT ) ) otherlv_1= '..' ( (lv_upperBound_2_0= ruleUpperBound ) ) ) )
5444 // InternalProblem.g:1988:2: ( ( (lv_lowerBound_0_0= RULE_INT ) ) otherlv_1= '..' ( (lv_upperBound_2_0= ruleUpperBound ) ) )
5445 {
5446 // InternalProblem.g:1988:2: ( ( (lv_lowerBound_0_0= RULE_INT ) ) otherlv_1= '..' ( (lv_upperBound_2_0= ruleUpperBound ) ) )
5447 // InternalProblem.g:1989:3: ( (lv_lowerBound_0_0= RULE_INT ) ) otherlv_1= '..' ( (lv_upperBound_2_0= ruleUpperBound ) )
5448 {
5449 // InternalProblem.g:1989:3: ( (lv_lowerBound_0_0= RULE_INT ) )
5450 // InternalProblem.g:1990:4: (lv_lowerBound_0_0= RULE_INT )
5451 {
5452 // InternalProblem.g:1990:4: (lv_lowerBound_0_0= RULE_INT )
5453 // InternalProblem.g:1991:5: lv_lowerBound_0_0= RULE_INT
5454 {
5455 lv_lowerBound_0_0=(Token)match(input,RULE_INT,FOLLOW_36);
5456
5457 newLeafNode(lv_lowerBound_0_0, grammarAccess.getRangeMultiplicityAccess().getLowerBoundINTTerminalRuleCall_0_0());
5458
5459
5460 if (current==null) {
5461 current = createModelElement(grammarAccess.getRangeMultiplicityRule());
5462 }
5463 setWithLastConsumed(
5464 current,
5465 "lowerBound",
5466 lv_lowerBound_0_0,
5467 "org.eclipse.xtext.common.Terminals.INT");
5468
5469
5470 }
5471
5472
5473 }
5474
5475 otherlv_1=(Token)match(input,39,FOLLOW_37);
5476
5477 newLeafNode(otherlv_1, grammarAccess.getRangeMultiplicityAccess().getFullStopFullStopKeyword_1());
5478
5479 // InternalProblem.g:2011:3: ( (lv_upperBound_2_0= ruleUpperBound ) )
5480 // InternalProblem.g:2012:4: (lv_upperBound_2_0= ruleUpperBound )
5481 {
5482 // InternalProblem.g:2012:4: (lv_upperBound_2_0= ruleUpperBound )
5483 // InternalProblem.g:2013:5: lv_upperBound_2_0= ruleUpperBound
5484 {
5485
5486 newCompositeNode(grammarAccess.getRangeMultiplicityAccess().getUpperBoundUpperBoundParserRuleCall_2_0());
5487
5488 pushFollow(FOLLOW_2);
5489 lv_upperBound_2_0=ruleUpperBound();
5490
5491 state._fsp--;
5492
5493
5494 if (current==null) {
5495 current = createModelElementForParent(grammarAccess.getRangeMultiplicityRule());
5496 }
5497 set(
5498 current,
5499 "upperBound",
5500 lv_upperBound_2_0,
5501 "org.eclipse.viatra.solver.language.Problem.UpperBound");
5502 afterParserOrEnumRuleCall();
5503
5504
5505 }
5506
5507
5508 }
5509
5510
5511 }
5512
5513
5514 }
5515
5516
5517 leaveRule();
5518
5519 }
5520
5521 catch (RecognitionException re) {
5522 recover(input,re);
5523 appendSkippedTokens();
5524 }
5525 finally {
5526 }
5527 return current;
5528 }
5529 // $ANTLR end "ruleRangeMultiplicity"
5530
5531
5532 // $ANTLR start "entryRuleExactMultiplicity"
5533 // InternalProblem.g:2034:1: entryRuleExactMultiplicity returns [EObject current=null] : iv_ruleExactMultiplicity= ruleExactMultiplicity EOF ;
5534 public final EObject entryRuleExactMultiplicity() throws RecognitionException {
5535 EObject current = null;
5536
5537 EObject iv_ruleExactMultiplicity = null;
5538
5539
5540 try {
5541 // InternalProblem.g:2034:58: (iv_ruleExactMultiplicity= ruleExactMultiplicity EOF )
5542 // InternalProblem.g:2035:2: iv_ruleExactMultiplicity= ruleExactMultiplicity EOF
5543 {
5544 newCompositeNode(grammarAccess.getExactMultiplicityRule());
5545 pushFollow(FOLLOW_1);
5546 iv_ruleExactMultiplicity=ruleExactMultiplicity();
5547
5548 state._fsp--;
5549
5550 current =iv_ruleExactMultiplicity;
5551 match(input,EOF,FOLLOW_2);
5552
5553 }
5554
5555 }
5556
5557 catch (RecognitionException re) {
5558 recover(input,re);
5559 appendSkippedTokens();
5560 }
5561 finally {
5562 }
5563 return current;
5564 }
5565 // $ANTLR end "entryRuleExactMultiplicity"
5566
5567
5568 // $ANTLR start "ruleExactMultiplicity"
5569 // InternalProblem.g:2041:1: ruleExactMultiplicity returns [EObject current=null] : ( (lv_exactValue_0_0= RULE_INT ) ) ;
5570 public final EObject ruleExactMultiplicity() throws RecognitionException {
5571 EObject current = null;
5572
5573 Token lv_exactValue_0_0=null;
5574
5575
5576 enterRule();
5577
5578 try {
5579 // InternalProblem.g:2047:2: ( ( (lv_exactValue_0_0= RULE_INT ) ) )
5580 // InternalProblem.g:2048:2: ( (lv_exactValue_0_0= RULE_INT ) )
5581 {
5582 // InternalProblem.g:2048:2: ( (lv_exactValue_0_0= RULE_INT ) )
5583 // InternalProblem.g:2049:3: (lv_exactValue_0_0= RULE_INT )
5584 {
5585 // InternalProblem.g:2049:3: (lv_exactValue_0_0= RULE_INT )
5586 // InternalProblem.g:2050:4: lv_exactValue_0_0= RULE_INT
5587 {
5588 lv_exactValue_0_0=(Token)match(input,RULE_INT,FOLLOW_2);
5589
5590 newLeafNode(lv_exactValue_0_0, grammarAccess.getExactMultiplicityAccess().getExactValueINTTerminalRuleCall_0());
5591
5592
5593 if (current==null) {
5594 current = createModelElement(grammarAccess.getExactMultiplicityRule());
5595 }
5596 setWithLastConsumed(
5597 current,
5598 "exactValue",
5599 lv_exactValue_0_0,
5600 "org.eclipse.xtext.common.Terminals.INT");
5601
5602
5603 }
5604
5605
5606 }
5607
5608
5609 }
5610
5611
5612 leaveRule();
5613
5614 }
5615
5616 catch (RecognitionException re) {
5617 recover(input,re);
5618 appendSkippedTokens();
5619 }
5620 finally {
5621 }
5622 return current;
5623 }
5624 // $ANTLR end "ruleExactMultiplicity"
5625
5626
5627 // $ANTLR start "entryRuleUpperBound"
5628 // InternalProblem.g:2069:1: entryRuleUpperBound returns [String current=null] : iv_ruleUpperBound= ruleUpperBound EOF ;
5629 public final String entryRuleUpperBound() throws RecognitionException {
5630 String current = null;
5631
5632 AntlrDatatypeRuleToken iv_ruleUpperBound = null;
5633
5634
5635 try {
5636 // InternalProblem.g:2069:50: (iv_ruleUpperBound= ruleUpperBound EOF )
5637 // InternalProblem.g:2070:2: iv_ruleUpperBound= ruleUpperBound EOF
5638 {
5639 newCompositeNode(grammarAccess.getUpperBoundRule());
5640 pushFollow(FOLLOW_1);
5641 iv_ruleUpperBound=ruleUpperBound();
5642
5643 state._fsp--;
5644
5645 current =iv_ruleUpperBound.getText();
5646 match(input,EOF,FOLLOW_2);
5647
5648 }
5649
5650 }
5651
5652 catch (RecognitionException re) {
5653 recover(input,re);
5654 appendSkippedTokens();
5655 }
5656 finally {
5657 }
5658 return current;
5659 }
5660 // $ANTLR end "entryRuleUpperBound"
5661
5662
5663 // $ANTLR start "ruleUpperBound"
5664 // InternalProblem.g:2076:1: ruleUpperBound returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | kw= '*' ) ;
5665 public final AntlrDatatypeRuleToken ruleUpperBound() throws RecognitionException {
5666 AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
5667
5668 Token this_INT_0=null;
5669 Token kw=null;
5670
5671
5672 enterRule();
5673
5674 try {
5675 // InternalProblem.g:2082:2: ( (this_INT_0= RULE_INT | kw= '*' ) )
5676 // InternalProblem.g:2083:2: (this_INT_0= RULE_INT | kw= '*' )
5677 {
5678 // InternalProblem.g:2083:2: (this_INT_0= RULE_INT | kw= '*' )
5679 int alt42=2;
5680 int LA42_0 = input.LA(1);
5681
5682 if ( (LA42_0==RULE_INT) ) {
5683 alt42=1;
5684 }
5685 else if ( (LA42_0==40) ) {
5686 alt42=2;
5687 }
5688 else {
5689 NoViableAltException nvae =
5690 new NoViableAltException("", 42, 0, input);
5691
5692 throw nvae;
5693 }
5694 switch (alt42) {
5695 case 1 :
5696 // InternalProblem.g:2084:3: this_INT_0= RULE_INT
5697 {
5698 this_INT_0=(Token)match(input,RULE_INT,FOLLOW_2);
5699
5700 current.merge(this_INT_0);
5701
5702
5703 newLeafNode(this_INT_0, grammarAccess.getUpperBoundAccess().getINTTerminalRuleCall_0());
5704
5705
5706 }
5707 break;
5708 case 2 :
5709 // InternalProblem.g:2092:3: kw= '*'
5710 {
5711 kw=(Token)match(input,40,FOLLOW_2);
5712
5713 current.merge(kw);
5714 newLeafNode(kw, grammarAccess.getUpperBoundAccess().getAsteriskKeyword_1());
5715
5716
5717 }
5718 break;
5719
5720 }
5721
5722
5723 }
5724
5725
5726 leaveRule();
5727
5728 }
5729
5730 catch (RecognitionException re) {
5731 recover(input,re);
5732 appendSkippedTokens();
5733 }
5734 finally {
5735 }
5736 return current;
5737 }
5738 // $ANTLR end "ruleUpperBound"
5739
5740
5741 // $ANTLR start "entryRuleQualifiedName"
5742 // InternalProblem.g:2101:1: entryRuleQualifiedName returns [String current=null] : iv_ruleQualifiedName= ruleQualifiedName EOF ;
5743 public final String entryRuleQualifiedName() throws RecognitionException {
5744 String current = null;
5745
5746 AntlrDatatypeRuleToken iv_ruleQualifiedName = null;
5747
5748
5749
5750 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
5751
5752 try {
5753 // InternalProblem.g:2103:2: (iv_ruleQualifiedName= ruleQualifiedName EOF )
5754 // InternalProblem.g:2104:2: iv_ruleQualifiedName= ruleQualifiedName EOF
5755 {
5756 newCompositeNode(grammarAccess.getQualifiedNameRule());
5757 pushFollow(FOLLOW_1);
5758 iv_ruleQualifiedName=ruleQualifiedName();
5759
5760 state._fsp--;
5761
5762 current =iv_ruleQualifiedName.getText();
5763 match(input,EOF,FOLLOW_2);
5764
5765 }
5766
5767 }
5768
5769 catch (RecognitionException re) {
5770 recover(input,re);
5771 appendSkippedTokens();
5772 }
5773 finally {
5774
5775 myHiddenTokenState.restore();
5776
5777 }
5778 return current;
5779 }
5780 // $ANTLR end "entryRuleQualifiedName"
5781
5782
5783 // $ANTLR start "ruleQualifiedName"
5784 // InternalProblem.g:2113:1: ruleQualifiedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_QUOTED_ID_0= RULE_QUOTED_ID | (this_Identifier_1= ruleIdentifier (kw= '::' this_Identifier_3= ruleIdentifier )* ) ) ;
5785 public final AntlrDatatypeRuleToken ruleQualifiedName() throws RecognitionException {
5786 AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
5787
5788 Token this_QUOTED_ID_0=null;
5789 Token kw=null;
5790 AntlrDatatypeRuleToken this_Identifier_1 = null;
5791
5792 AntlrDatatypeRuleToken this_Identifier_3 = null;
5793
5794
5795
5796 enterRule();
5797 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
5798
5799 try {
5800 // InternalProblem.g:2120:2: ( (this_QUOTED_ID_0= RULE_QUOTED_ID | (this_Identifier_1= ruleIdentifier (kw= '::' this_Identifier_3= ruleIdentifier )* ) ) )
5801 // InternalProblem.g:2121:2: (this_QUOTED_ID_0= RULE_QUOTED_ID | (this_Identifier_1= ruleIdentifier (kw= '::' this_Identifier_3= ruleIdentifier )* ) )
5802 {
5803 // InternalProblem.g:2121:2: (this_QUOTED_ID_0= RULE_QUOTED_ID | (this_Identifier_1= ruleIdentifier (kw= '::' this_Identifier_3= ruleIdentifier )* ) )
5804 int alt44=2;
5805 int LA44_0 = input.LA(1);
5806
5807 if ( (LA44_0==RULE_QUOTED_ID) ) {
5808 alt44=1;
5809 }
5810 else if ( (LA44_0==RULE_ID||(LA44_0>=42 && LA44_0<=43)) ) {
5811 alt44=2;
5812 }
5813 else {
5814 NoViableAltException nvae =
5815 new NoViableAltException("", 44, 0, input);
5816
5817 throw nvae;
5818 }
5819 switch (alt44) {
5820 case 1 :
5821 // InternalProblem.g:2122:3: this_QUOTED_ID_0= RULE_QUOTED_ID
5822 {
5823 this_QUOTED_ID_0=(Token)match(input,RULE_QUOTED_ID,FOLLOW_2);
5824
5825 current.merge(this_QUOTED_ID_0);
5826
5827
5828 newLeafNode(this_QUOTED_ID_0, grammarAccess.getQualifiedNameAccess().getQUOTED_IDTerminalRuleCall_0());
5829
5830
5831 }
5832 break;
5833 case 2 :
5834 // InternalProblem.g:2130:3: (this_Identifier_1= ruleIdentifier (kw= '::' this_Identifier_3= ruleIdentifier )* )
5835 {
5836 // InternalProblem.g:2130:3: (this_Identifier_1= ruleIdentifier (kw= '::' this_Identifier_3= ruleIdentifier )* )
5837 // InternalProblem.g:2131:4: this_Identifier_1= ruleIdentifier (kw= '::' this_Identifier_3= ruleIdentifier )*
5838 {
5839
5840 newCompositeNode(grammarAccess.getQualifiedNameAccess().getIdentifierParserRuleCall_1_0());
5841
5842 pushFollow(FOLLOW_38);
5843 this_Identifier_1=ruleIdentifier();
5844
5845 state._fsp--;
5846
5847
5848 current.merge(this_Identifier_1);
5849
5850
5851 afterParserOrEnumRuleCall();
5852
5853 // InternalProblem.g:2141:4: (kw= '::' this_Identifier_3= ruleIdentifier )*
5854 loop43:
5855 do {
5856 int alt43=2;
5857 int LA43_0 = input.LA(1);
5858
5859 if ( (LA43_0==41) ) {
5860 alt43=1;
5861 }
5862
5863
5864 switch (alt43) {
5865 case 1 :
5866 // InternalProblem.g:2142:5: kw= '::' this_Identifier_3= ruleIdentifier
5867 {
5868 kw=(Token)match(input,41,FOLLOW_3);
5869
5870 current.merge(kw);
5871 newLeafNode(kw, grammarAccess.getQualifiedNameAccess().getColonColonKeyword_1_1_0());
5872
5873
5874 newCompositeNode(grammarAccess.getQualifiedNameAccess().getIdentifierParserRuleCall_1_1_1());
5875
5876 pushFollow(FOLLOW_38);
5877 this_Identifier_3=ruleIdentifier();
5878
5879 state._fsp--;
5880
5881
5882 current.merge(this_Identifier_3);
5883
5884
5885 afterParserOrEnumRuleCall();
5886
5887
5888 }
5889 break;
5890
5891 default :
5892 break loop43;
5893 }
5894 } while (true);
5895
5896
5897 }
5898
5899
5900 }
5901 break;
5902
5903 }
5904
5905
5906 }
5907
5908
5909 leaveRule();
5910
5911 }
5912
5913 catch (RecognitionException re) {
5914 recover(input,re);
5915 appendSkippedTokens();
5916 }
5917 finally {
5918
5919 myHiddenTokenState.restore();
5920
5921 }
5922 return current;
5923 }
5924 // $ANTLR end "ruleQualifiedName"
5925
5926
5927 // $ANTLR start "entryRuleIdentifier"
5928 // InternalProblem.g:2166:1: entryRuleIdentifier returns [String current=null] : iv_ruleIdentifier= ruleIdentifier EOF ;
5929 public final String entryRuleIdentifier() throws RecognitionException {
5930 String current = null;
5931
5932 AntlrDatatypeRuleToken iv_ruleIdentifier = null;
5933
5934
5935 try {
5936 // InternalProblem.g:2166:50: (iv_ruleIdentifier= ruleIdentifier EOF )
5937 // InternalProblem.g:2167:2: iv_ruleIdentifier= ruleIdentifier EOF
5938 {
5939 newCompositeNode(grammarAccess.getIdentifierRule());
5940 pushFollow(FOLLOW_1);
5941 iv_ruleIdentifier=ruleIdentifier();
5942
5943 state._fsp--;
5944
5945 current =iv_ruleIdentifier.getText();
5946 match(input,EOF,FOLLOW_2);
5947
5948 }
5949
5950 }
5951
5952 catch (RecognitionException re) {
5953 recover(input,re);
5954 appendSkippedTokens();
5955 }
5956 finally {
5957 }
5958 return current;
5959 }
5960 // $ANTLR end "entryRuleIdentifier"
5961
5962
5963 // $ANTLR start "ruleIdentifier"
5964 // InternalProblem.g:2173:1: ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_ID_0= RULE_ID | kw= 'true' | kw= 'false' ) ;
5965 public final AntlrDatatypeRuleToken ruleIdentifier() throws RecognitionException {
5966 AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
5967
5968 Token this_ID_0=null;
5969 Token kw=null;
5970
5971
5972 enterRule();
5973
5974 try {
5975 // InternalProblem.g:2179:2: ( (this_ID_0= RULE_ID | kw= 'true' | kw= 'false' ) )
5976 // InternalProblem.g:2180:2: (this_ID_0= RULE_ID | kw= 'true' | kw= 'false' )
5977 {
5978 // InternalProblem.g:2180:2: (this_ID_0= RULE_ID | kw= 'true' | kw= 'false' )
5979 int alt45=3;
5980 switch ( input.LA(1) ) {
5981 case RULE_ID:
5982 {
5983 alt45=1;
5984 }
5985 break;
5986 case 42:
5987 {
5988 alt45=2;
5989 }
5990 break;
5991 case 43:
5992 {
5993 alt45=3;
5994 }
5995 break;
5996 default:
5997 NoViableAltException nvae =
5998 new NoViableAltException("", 45, 0, input);
5999
6000 throw nvae;
6001 }
6002
6003 switch (alt45) {
6004 case 1 :
6005 // InternalProblem.g:2181:3: this_ID_0= RULE_ID
6006 {
6007 this_ID_0=(Token)match(input,RULE_ID,FOLLOW_2);
6008
6009 current.merge(this_ID_0);
6010
6011
6012 newLeafNode(this_ID_0, grammarAccess.getIdentifierAccess().getIDTerminalRuleCall_0());
6013
6014
6015 }
6016 break;
6017 case 2 :
6018 // InternalProblem.g:2189:3: kw= 'true'
6019 {
6020 kw=(Token)match(input,42,FOLLOW_2);
6021
6022 current.merge(kw);
6023 newLeafNode(kw, grammarAccess.getIdentifierAccess().getTrueKeyword_1());
6024
6025
6026 }
6027 break;
6028 case 3 :
6029 // InternalProblem.g:2195:3: kw= 'false'
6030 {
6031 kw=(Token)match(input,43,FOLLOW_2);
6032
6033 current.merge(kw);
6034 newLeafNode(kw, grammarAccess.getIdentifierAccess().getFalseKeyword_2());
6035
6036
6037 }
6038 break;
6039
6040 }
6041
6042
6043 }
6044
6045
6046 leaveRule();
6047
6048 }
6049
6050 catch (RecognitionException re) {
6051 recover(input,re);
6052 appendSkippedTokens();
6053 }
6054 finally {
6055 }
6056 return current;
6057 }
6058 // $ANTLR end "ruleIdentifier"
6059
6060
6061 // $ANTLR start "entryRuleInteger"
6062 // InternalProblem.g:2204:1: entryRuleInteger returns [String current=null] : iv_ruleInteger= ruleInteger EOF ;
6063 public final String entryRuleInteger() throws RecognitionException {
6064 String current = null;
6065
6066 AntlrDatatypeRuleToken iv_ruleInteger = null;
6067
6068
6069
6070 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
6071
6072 try {
6073 // InternalProblem.g:2206:2: (iv_ruleInteger= ruleInteger EOF )
6074 // InternalProblem.g:2207:2: iv_ruleInteger= ruleInteger EOF
6075 {
6076 newCompositeNode(grammarAccess.getIntegerRule());
6077 pushFollow(FOLLOW_1);
6078 iv_ruleInteger=ruleInteger();
6079
6080 state._fsp--;
6081
6082 current =iv_ruleInteger.getText();
6083 match(input,EOF,FOLLOW_2);
6084
6085 }
6086
6087 }
6088
6089 catch (RecognitionException re) {
6090 recover(input,re);
6091 appendSkippedTokens();
6092 }
6093 finally {
6094
6095 myHiddenTokenState.restore();
6096
6097 }
6098 return current;
6099 }
6100 // $ANTLR end "entryRuleInteger"
6101
6102
6103 // $ANTLR start "ruleInteger"
6104 // InternalProblem.g:2216:1: ruleInteger returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '-' )? this_INT_1= RULE_INT ) ;
6105 public final AntlrDatatypeRuleToken ruleInteger() throws RecognitionException {
6106 AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
6107
6108 Token kw=null;
6109 Token this_INT_1=null;
6110
6111
6112 enterRule();
6113 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
6114
6115 try {
6116 // InternalProblem.g:2223:2: ( ( (kw= '-' )? this_INT_1= RULE_INT ) )
6117 // InternalProblem.g:2224:2: ( (kw= '-' )? this_INT_1= RULE_INT )
6118 {
6119 // InternalProblem.g:2224:2: ( (kw= '-' )? this_INT_1= RULE_INT )
6120 // InternalProblem.g:2225:3: (kw= '-' )? this_INT_1= RULE_INT
6121 {
6122 // InternalProblem.g:2225:3: (kw= '-' )?
6123 int alt46=2;
6124 int LA46_0 = input.LA(1);
6125
6126 if ( (LA46_0==44) ) {
6127 alt46=1;
6128 }
6129 switch (alt46) {
6130 case 1 :
6131 // InternalProblem.g:2226:4: kw= '-'
6132 {
6133 kw=(Token)match(input,44,FOLLOW_17);
6134
6135 current.merge(kw);
6136 newLeafNode(kw, grammarAccess.getIntegerAccess().getHyphenMinusKeyword_0());
6137
6138
6139 }
6140 break;
6141
6142 }
6143
6144 this_INT_1=(Token)match(input,RULE_INT,FOLLOW_2);
6145
6146 current.merge(this_INT_1);
6147
6148
6149 newLeafNode(this_INT_1, grammarAccess.getIntegerAccess().getINTTerminalRuleCall_1());
6150
6151
6152 }
6153
6154
6155 }
6156
6157
6158 leaveRule();
6159
6160 }
6161
6162 catch (RecognitionException re) {
6163 recover(input,re);
6164 appendSkippedTokens();
6165 }
6166 finally {
6167
6168 myHiddenTokenState.restore();
6169
6170 }
6171 return current;
6172 }
6173 // $ANTLR end "ruleInteger"
6174
6175
6176 // $ANTLR start "entryRuleReal"
6177 // InternalProblem.g:2246:1: entryRuleReal returns [String current=null] : iv_ruleReal= ruleReal EOF ;
6178 public final String entryRuleReal() throws RecognitionException {
6179 String current = null;
6180
6181 AntlrDatatypeRuleToken iv_ruleReal = null;
6182
6183
6184 try {
6185 // InternalProblem.g:2246:44: (iv_ruleReal= ruleReal EOF )
6186 // InternalProblem.g:2247:2: iv_ruleReal= ruleReal EOF
6187 {
6188 newCompositeNode(grammarAccess.getRealRule());
6189 pushFollow(FOLLOW_1);
6190 iv_ruleReal=ruleReal();
6191
6192 state._fsp--;
6193
6194 current =iv_ruleReal.getText();
6195 match(input,EOF,FOLLOW_2);
6196
6197 }
6198
6199 }
6200
6201 catch (RecognitionException re) {
6202 recover(input,re);
6203 appendSkippedTokens();
6204 }
6205 finally {
6206 }
6207 return current;
6208 }
6209 // $ANTLR end "entryRuleReal"
6210
6211
6212 // $ANTLR start "ruleReal"
6213 // InternalProblem.g:2253:1: ruleReal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '-' )? (this_EXPONENTIAL_1= RULE_EXPONENTIAL | (this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) ) ) ) ;
6214 public final AntlrDatatypeRuleToken ruleReal() throws RecognitionException {
6215 AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
6216
6217 Token kw=null;
6218 Token this_EXPONENTIAL_1=null;
6219 Token this_INT_2=null;
6220 Token this_INT_4=null;
6221 Token this_EXPONENTIAL_5=null;
6222
6223
6224 enterRule();
6225
6226 try {
6227 // InternalProblem.g:2259:2: ( ( (kw= '-' )? (this_EXPONENTIAL_1= RULE_EXPONENTIAL | (this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) ) ) ) )
6228 // InternalProblem.g:2260:2: ( (kw= '-' )? (this_EXPONENTIAL_1= RULE_EXPONENTIAL | (this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) ) ) )
6229 {
6230 // InternalProblem.g:2260:2: ( (kw= '-' )? (this_EXPONENTIAL_1= RULE_EXPONENTIAL | (this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) ) ) )
6231 // InternalProblem.g:2261:3: (kw= '-' )? (this_EXPONENTIAL_1= RULE_EXPONENTIAL | (this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) ) )
6232 {
6233 // InternalProblem.g:2261:3: (kw= '-' )?
6234 int alt47=2;
6235 int LA47_0 = input.LA(1);
6236
6237 if ( (LA47_0==44) ) {
6238 alt47=1;
6239 }
6240 switch (alt47) {
6241 case 1 :
6242 // InternalProblem.g:2262:4: kw= '-'
6243 {
6244 kw=(Token)match(input,44,FOLLOW_39);
6245
6246 current.merge(kw);
6247 newLeafNode(kw, grammarAccess.getRealAccess().getHyphenMinusKeyword_0());
6248
6249
6250 }
6251 break;
6252
6253 }
6254
6255 // InternalProblem.g:2268:3: (this_EXPONENTIAL_1= RULE_EXPONENTIAL | (this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) ) )
6256 int alt49=2;
6257 int LA49_0 = input.LA(1);
6258
6259 if ( (LA49_0==RULE_EXPONENTIAL) ) {
6260 alt49=1;
6261 }
6262 else if ( (LA49_0==RULE_INT) ) {
6263 alt49=2;
6264 }
6265 else {
6266 NoViableAltException nvae =
6267 new NoViableAltException("", 49, 0, input);
6268
6269 throw nvae;
6270 }
6271 switch (alt49) {
6272 case 1 :
6273 // InternalProblem.g:2269:4: this_EXPONENTIAL_1= RULE_EXPONENTIAL
6274 {
6275 this_EXPONENTIAL_1=(Token)match(input,RULE_EXPONENTIAL,FOLLOW_2);
6276
6277 current.merge(this_EXPONENTIAL_1);
6278
6279
6280 newLeafNode(this_EXPONENTIAL_1, grammarAccess.getRealAccess().getEXPONENTIALTerminalRuleCall_1_0());
6281
6282
6283 }
6284 break;
6285 case 2 :
6286 // InternalProblem.g:2277:4: (this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) )
6287 {
6288 // InternalProblem.g:2277:4: (this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) )
6289 // InternalProblem.g:2278:5: this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL )
6290 {
6291 this_INT_2=(Token)match(input,RULE_INT,FOLLOW_4);
6292
6293 current.merge(this_INT_2);
6294
6295
6296 newLeafNode(this_INT_2, grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1_0());
6297
6298 kw=(Token)match(input,14,FOLLOW_39);
6299
6300 current.merge(kw);
6301 newLeafNode(kw, grammarAccess.getRealAccess().getFullStopKeyword_1_1_1());
6302
6303 // InternalProblem.g:2290:5: (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL )
6304 int alt48=2;
6305 int LA48_0 = input.LA(1);
6306
6307 if ( (LA48_0==RULE_INT) ) {
6308 alt48=1;
6309 }
6310 else if ( (LA48_0==RULE_EXPONENTIAL) ) {
6311 alt48=2;
6312 }
6313 else {
6314 NoViableAltException nvae =
6315 new NoViableAltException("", 48, 0, input);
6316
6317 throw nvae;
6318 }
6319 switch (alt48) {
6320 case 1 :
6321 // InternalProblem.g:2291:6: this_INT_4= RULE_INT
6322 {
6323 this_INT_4=(Token)match(input,RULE_INT,FOLLOW_2);
6324
6325 current.merge(this_INT_4);
6326
6327
6328 newLeafNode(this_INT_4, grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1_2_0());
6329
6330
6331 }
6332 break;
6333 case 2 :
6334 // InternalProblem.g:2299:6: this_EXPONENTIAL_5= RULE_EXPONENTIAL
6335 {
6336 this_EXPONENTIAL_5=(Token)match(input,RULE_EXPONENTIAL,FOLLOW_2);
6337
6338 current.merge(this_EXPONENTIAL_5);
6339
6340
6341 newLeafNode(this_EXPONENTIAL_5, grammarAccess.getRealAccess().getEXPONENTIALTerminalRuleCall_1_1_2_1());
6342
6343
6344 }
6345 break;
6346
6347 }
6348
6349
6350 }
6351
6352
6353 }
6354 break;
6355
6356 }
6357
6358
6359 }
6360
6361
6362 }
6363
6364
6365 leaveRule();
6366
6367 }
6368
6369 catch (RecognitionException re) {
6370 recover(input,re);
6371 appendSkippedTokens();
6372 }
6373 finally {
6374 }
6375 return current;
6376 }
6377 // $ANTLR end "ruleReal"
6378
6379
6380 // $ANTLR start "ruleLogicValue"
6381 // InternalProblem.g:2313:1: ruleLogicValue returns [Enumerator current=null] : ( (enumLiteral_0= 'true' ) | (enumLiteral_1= 'false' ) | (enumLiteral_2= 'unknown' ) ) ;
6382 public final Enumerator ruleLogicValue() throws RecognitionException {
6383 Enumerator current = null;
6384
6385 Token enumLiteral_0=null;
6386 Token enumLiteral_1=null;
6387 Token enumLiteral_2=null;
6388
6389
6390 enterRule();
6391
6392 try {
6393 // InternalProblem.g:2319:2: ( ( (enumLiteral_0= 'true' ) | (enumLiteral_1= 'false' ) | (enumLiteral_2= 'unknown' ) ) )
6394 // InternalProblem.g:2320:2: ( (enumLiteral_0= 'true' ) | (enumLiteral_1= 'false' ) | (enumLiteral_2= 'unknown' ) )
6395 {
6396 // InternalProblem.g:2320:2: ( (enumLiteral_0= 'true' ) | (enumLiteral_1= 'false' ) | (enumLiteral_2= 'unknown' ) )
6397 int alt50=3;
6398 switch ( input.LA(1) ) {
6399 case 42:
6400 {
6401 alt50=1;
6402 }
6403 break;
6404 case 43:
6405 {
6406 alt50=2;
6407 }
6408 break;
6409 case 45:
6410 {
6411 alt50=3;
6412 }
6413 break;
6414 default:
6415 NoViableAltException nvae =
6416 new NoViableAltException("", 50, 0, input);
6417
6418 throw nvae;
6419 }
6420
6421 switch (alt50) {
6422 case 1 :
6423 // InternalProblem.g:2321:3: (enumLiteral_0= 'true' )
6424 {
6425 // InternalProblem.g:2321:3: (enumLiteral_0= 'true' )
6426 // InternalProblem.g:2322:4: enumLiteral_0= 'true'
6427 {
6428 enumLiteral_0=(Token)match(input,42,FOLLOW_2);
6429
6430 current = grammarAccess.getLogicValueAccess().getTRUEEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
6431 newLeafNode(enumLiteral_0, grammarAccess.getLogicValueAccess().getTRUEEnumLiteralDeclaration_0());
6432
6433
6434 }
6435
6436
6437 }
6438 break;
6439 case 2 :
6440 // InternalProblem.g:2329:3: (enumLiteral_1= 'false' )
6441 {
6442 // InternalProblem.g:2329:3: (enumLiteral_1= 'false' )
6443 // InternalProblem.g:2330:4: enumLiteral_1= 'false'
6444 {
6445 enumLiteral_1=(Token)match(input,43,FOLLOW_2);
6446
6447 current = grammarAccess.getLogicValueAccess().getFALSEEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
6448 newLeafNode(enumLiteral_1, grammarAccess.getLogicValueAccess().getFALSEEnumLiteralDeclaration_1());
6449
6450
6451 }
6452
6453
6454 }
6455 break;
6456 case 3 :
6457 // InternalProblem.g:2337:3: (enumLiteral_2= 'unknown' )
6458 {
6459 // InternalProblem.g:2337:3: (enumLiteral_2= 'unknown' )
6460 // InternalProblem.g:2338:4: enumLiteral_2= 'unknown'
6461 {
6462 enumLiteral_2=(Token)match(input,45,FOLLOW_2);
6463
6464 current = grammarAccess.getLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
6465 newLeafNode(enumLiteral_2, grammarAccess.getLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_2());
6466
6467
6468 }
6469
6470
6471 }
6472 break;
6473
6474 }
6475
6476
6477 }
6478
6479
6480 leaveRule();
6481
6482 }
6483
6484 catch (RecognitionException re) {
6485 recover(input,re);
6486 appendSkippedTokens();
6487 }
6488 finally {
6489 }
6490 return current;
6491 }
6492 // $ANTLR end "ruleLogicValue"
6493
6494
6495 // $ANTLR start "ruleShortLogicValue"
6496 // InternalProblem.g:2348:1: ruleShortLogicValue returns [Enumerator current=null] : ( (enumLiteral_0= '!' ) | (enumLiteral_1= '?' ) ) ;
6497 public final Enumerator ruleShortLogicValue() throws RecognitionException {
6498 Enumerator current = null;
6499
6500 Token enumLiteral_0=null;
6501 Token enumLiteral_1=null;
6502
6503
6504 enterRule();
6505
6506 try {
6507 // InternalProblem.g:2354:2: ( ( (enumLiteral_0= '!' ) | (enumLiteral_1= '?' ) ) )
6508 // InternalProblem.g:2355:2: ( (enumLiteral_0= '!' ) | (enumLiteral_1= '?' ) )
6509 {
6510 // InternalProblem.g:2355:2: ( (enumLiteral_0= '!' ) | (enumLiteral_1= '?' ) )
6511 int alt51=2;
6512 int LA51_0 = input.LA(1);
6513
6514 if ( (LA51_0==33) ) {
6515 alt51=1;
6516 }
6517 else if ( (LA51_0==46) ) {
6518 alt51=2;
6519 }
6520 else {
6521 NoViableAltException nvae =
6522 new NoViableAltException("", 51, 0, input);
6523
6524 throw nvae;
6525 }
6526 switch (alt51) {
6527 case 1 :
6528 // InternalProblem.g:2356:3: (enumLiteral_0= '!' )
6529 {
6530 // InternalProblem.g:2356:3: (enumLiteral_0= '!' )
6531 // InternalProblem.g:2357:4: enumLiteral_0= '!'
6532 {
6533 enumLiteral_0=(Token)match(input,33,FOLLOW_2);
6534
6535 current = grammarAccess.getShortLogicValueAccess().getFALSEEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
6536 newLeafNode(enumLiteral_0, grammarAccess.getShortLogicValueAccess().getFALSEEnumLiteralDeclaration_0());
6537
6538
6539 }
6540
6541
6542 }
6543 break;
6544 case 2 :
6545 // InternalProblem.g:2364:3: (enumLiteral_1= '?' )
6546 {
6547 // InternalProblem.g:2364:3: (enumLiteral_1= '?' )
6548 // InternalProblem.g:2365:4: enumLiteral_1= '?'
6549 {
6550 enumLiteral_1=(Token)match(input,46,FOLLOW_2);
6551
6552 current = grammarAccess.getShortLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
6553 newLeafNode(enumLiteral_1, grammarAccess.getShortLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_1());
6554
6555
6556 }
6557
6558
6559 }
6560 break;
6561
6562 }
6563
6564
6565 }
6566
6567
6568 leaveRule();
6569
6570 }
6571
6572 catch (RecognitionException re) {
6573 recover(input,re);
6574 appendSkippedTokens();
6575 }
6576 finally {
6577 }
6578 return current;
6579 }
6580 // $ANTLR end "ruleShortLogicValue"
6581
6582 // Delegated rules
6583
6584
6585 protected DFA3 dfa3 = new DFA3(this);
6586 protected DFA35 dfa35 = new DFA35(this);
6587 static final String dfa_1s = "\17\uffff";
6588 static final String dfa_2s = "\1\5\3\uffff\4\36\3\uffff\1\5\3\36";
6589 static final String dfa_3s = "\1\56\3\uffff\1\43\3\51\3\uffff\1\53\3\51";
6590 static final String dfa_4s = "\1\uffff\1\1\1\2\1\3\4\uffff\1\4\1\6\1\5\4\uffff";
6591 static final String dfa_5s = "\17\uffff}>";
6592 static final String[] dfa_6s = {
6593 "\1\5\1\uffff\1\4\7\uffff\2\1\5\uffff\1\2\5\uffff\2\3\3\uffff\1\10\2\uffff\1\11\5\uffff\1\6\1\7\2\uffff\1\10",
6594 "",
6595 "",
6596 "",
6597 "\1\10\4\uffff\1\12",
6598 "\1\10\4\uffff\1\12\5\uffff\1\13",
6599 "\1\10\4\uffff\1\12\5\uffff\1\13",
6600 "\1\10\4\uffff\1\12\5\uffff\1\13",
6601 "",
6602 "",
6603 "",
6604 "\1\14\44\uffff\1\15\1\16",
6605 "\1\10\4\uffff\1\12\5\uffff\1\13",
6606 "\1\10\4\uffff\1\12\5\uffff\1\13",
6607 "\1\10\4\uffff\1\12\5\uffff\1\13"
6608 };
6609
6610 static final short[] dfa_1 = DFA.unpackEncodedString(dfa_1s);
6611 static final char[] dfa_2 = DFA.unpackEncodedStringToUnsignedChars(dfa_2s);
6612 static final char[] dfa_3 = DFA.unpackEncodedStringToUnsignedChars(dfa_3s);
6613 static final short[] dfa_4 = DFA.unpackEncodedString(dfa_4s);
6614 static final short[] dfa_5 = DFA.unpackEncodedString(dfa_5s);
6615 static final short[][] dfa_6 = unpackEncodedStringArray(dfa_6s);
6616
6617 class DFA3 extends DFA {
6618
6619 public DFA3(BaseRecognizer recognizer) {
6620 this.recognizer = recognizer;
6621 this.decisionNumber = 3;
6622 this.eot = dfa_1;
6623 this.eof = dfa_1;
6624 this.min = dfa_2;
6625 this.max = dfa_3;
6626 this.accept = dfa_4;
6627 this.special = dfa_5;
6628 this.transition = dfa_6;
6629 }
6630 public String getDescription() {
6631 return "146:2: (this_ClassDeclaration_0= ruleClassDeclaration | this_EnumDeclaration_1= ruleEnumDeclaration | this_PredicateDefinition_2= rulePredicateDefinition | this_Assertion_3= ruleAssertion | this_NodeValueAssertion_4= ruleNodeValueAssertion | this_ScopeDeclaration_5= ruleScopeDeclaration )";
6632 }
6633 }
6634 static final String dfa_7s = "\54\uffff";
6635 static final String dfa_8s = "\1\5\4\36\1\uffff\1\4\1\5\4\22\1\6\1\22\1\16\1\22\1\16\3\36\1\4\1\5\1\6\1\uffff\4\22\1\6\1\22\1\16\6\22\1\5\1\6\5\22";
6636 static final String dfa_9s = "\1\56\1\36\3\51\1\uffff\1\54\1\53\1\37\3\51\1\10\3\37\1\43\3\51\1\54\1\53\1\10\1\uffff\1\37\3\51\1\10\3\37\3\51\2\37\1\53\1\10\3\51\2\37";
6637 static final String dfa_10s = "\5\uffff\1\2\21\uffff\1\1\24\uffff";
6638 static final String dfa_11s = "\54\uffff}>";
6639 static final String[] dfa_12s = {
6640 "\1\2\1\uffff\1\1\31\uffff\1\5\10\uffff\1\3\1\4\2\uffff\1\5",
6641 "\1\6",
6642 "\1\6\12\uffff\1\7",
6643 "\1\6\12\uffff\1\7",
6644 "\1\6\12\uffff\1\7",
6645 "",
6646 "\1\17\1\11\1\16\1\10\1\15\26\uffff\1\20\12\uffff\1\12\1\13\1\14",
6647 "\1\21\44\uffff\1\22\1\23",
6648 "\1\24\14\uffff\1\20",
6649 "\1\24\14\uffff\1\20\11\uffff\1\25",
6650 "\1\24\14\uffff\1\20\11\uffff\1\25",
6651 "\1\24\14\uffff\1\20\11\uffff\1\25",
6652 "\1\16\1\uffff\1\15",
6653 "\1\24\14\uffff\1\20",
6654 "\1\26\3\uffff\1\24\14\uffff\1\20",
6655 "\1\24\14\uffff\1\20",
6656 "\1\5\24\uffff\1\27",
6657 "\1\6\12\uffff\1\7",
6658 "\1\6\12\uffff\1\7",
6659 "\1\6\12\uffff\1\7",
6660 "\1\37\1\31\1\36\1\30\1\35\41\uffff\1\32\1\33\1\34",
6661 "\1\40\44\uffff\1\41\1\42",
6662 "\1\43\1\uffff\1\44",
6663 "",
6664 "\1\24\14\uffff\1\20",
6665 "\1\24\14\uffff\1\20\11\uffff\1\45",
6666 "\1\24\14\uffff\1\20\11\uffff\1\45",
6667 "\1\24\14\uffff\1\20\11\uffff\1\45",
6668 "\1\36\1\uffff\1\35",
6669 "\1\24\14\uffff\1\20",
6670 "\1\46\3\uffff\1\24\14\uffff\1\20",
6671 "\1\24\14\uffff\1\20",
6672 "\1\24\14\uffff\1\20\11\uffff\1\25",
6673 "\1\24\14\uffff\1\20\11\uffff\1\25",
6674 "\1\24\14\uffff\1\20\11\uffff\1\25",
6675 "\1\24\14\uffff\1\20",
6676 "\1\24\14\uffff\1\20",
6677 "\1\47\44\uffff\1\50\1\51",
6678 "\1\52\1\uffff\1\53",
6679 "\1\24\14\uffff\1\20\11\uffff\1\45",
6680 "\1\24\14\uffff\1\20\11\uffff\1\45",
6681 "\1\24\14\uffff\1\20\11\uffff\1\45",
6682 "\1\24\14\uffff\1\20",
6683 "\1\24\14\uffff\1\20"
6684 };
6685
6686 static final short[] dfa_7 = DFA.unpackEncodedString(dfa_7s);
6687 static final char[] dfa_8 = DFA.unpackEncodedStringToUnsignedChars(dfa_8s);
6688 static final char[] dfa_9 = DFA.unpackEncodedStringToUnsignedChars(dfa_9s);
6689 static final short[] dfa_10 = DFA.unpackEncodedString(dfa_10s);
6690 static final short[] dfa_11 = DFA.unpackEncodedString(dfa_11s);
6691 static final short[][] dfa_12 = unpackEncodedStringArray(dfa_12s);
6692
6693 class DFA35 extends DFA {
6694
6695 public DFA35(BaseRecognizer recognizer) {
6696 this.recognizer = recognizer;
6697 this.decisionNumber = 35;
6698 this.eot = dfa_7;
6699 this.eof = dfa_7;
6700 this.min = dfa_8;
6701 this.max = dfa_9;
6702 this.accept = dfa_10;
6703 this.special = dfa_11;
6704 this.transition = dfa_12;
6705 }
6706 public String getDescription() {
6707 return "1219:3: ( ( ( ( ruleQualifiedName ) ) otherlv_1= '(' ( ( (lv_arguments_2_0= ruleAssertionArgument ) ) (otherlv_3= ',' ( (lv_arguments_4_0= ruleAssertionArgument ) ) )* )? otherlv_5= ')' otherlv_6= ':' ( (lv_value_7_0= ruleLogicValue ) ) ) | ( ( (lv_value_8_0= ruleShortLogicValue ) )? ( ( ruleQualifiedName ) ) otherlv_10= '(' ( ( (lv_arguments_11_0= ruleAssertionArgument ) ) (otherlv_12= ',' ( (lv_arguments_13_0= ruleAssertionArgument ) ) )* )? otherlv_14= ')' ) )";
6708 }
6709 }
6710
6711
6712 public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
6713 public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
6714 public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x00000C0000000020L});
6715 public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000004000L});
6716 public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x00004C12304180A2L});
6717 public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000000010000L});
6718 public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x00000000000A4000L});
6719 public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x00000C00000000A0L});
6720 public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x00000000000C4000L});
6721 public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x00000C0001A000A0L});
6722 public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x00000C0001B000A0L});
6723 public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000000084000L});
6724 public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x00000C0000200020L});
6725 public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000000340000L});
6726 public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000000200000L});
6727 public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x00000C0002000020L});
6728 public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000000040L});
6729 public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000004000000L});
6730 public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000008000002L});
6731 public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x00000C0020000020L});
6732 public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000040000000L});
6733 public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x00000C00800000A0L});
6734 public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000000080040000L});
6735 public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000000100004000L});
6736 public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x00000C02000000A0L});
6737 public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000000000104000L});
6738 public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000000000040002L});
6739 public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000000440000000L});
6740 public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x00001C00800001F0L});
6741 public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x00001C00000001F0L});
6742 public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000000800000000L});
6743 public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x00002C0000000000L});
6744 public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0000000000000020L});
6745 public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0000000000044000L});
6746 public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0000006000000000L});
6747 public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0000008000000000L});
6748 public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x0000010000000040L});
6749 public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x0000020000000002L});
6750 public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0000000000000140L});
6751
6752} \ No newline at end of file
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/scoping/AbstractProblemScopeProvider.java b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/scoping/AbstractProblemScopeProvider.java
deleted file mode 100644
index 5b024d47..00000000
--- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/scoping/AbstractProblemScopeProvider.java
+++ /dev/null
@@ -1,9 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4package org.eclipse.viatra.solver.language.scoping;
5
6import org.eclipse.xtext.scoping.impl.DelegatingScopeProvider;
7
8public abstract class AbstractProblemScopeProvider extends DelegatingScopeProvider {
9}
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/serializer/ProblemSemanticSequencer.java b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/serializer/ProblemSemanticSequencer.java
deleted file mode 100644
index 0aac4924..00000000
--- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/serializer/ProblemSemanticSequencer.java
+++ /dev/null
@@ -1,534 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4package org.eclipse.viatra.solver.language.serializer;
5
6import com.google.inject.Inject;
7import java.util.Set;
8import org.eclipse.emf.ecore.EObject;
9import org.eclipse.emf.ecore.EPackage;
10import org.eclipse.viatra.solver.language.model.problem.Assertion;
11import org.eclipse.viatra.solver.language.model.problem.Atom;
12import org.eclipse.viatra.solver.language.model.problem.ClassDeclaration;
13import org.eclipse.viatra.solver.language.model.problem.Conjunction;
14import org.eclipse.viatra.solver.language.model.problem.ConstantArgument;
15import org.eclipse.viatra.solver.language.model.problem.ConstantAssertionArgument;
16import org.eclipse.viatra.solver.language.model.problem.EnumDeclaration;
17import org.eclipse.viatra.solver.language.model.problem.ExactMultiplicity;
18import org.eclipse.viatra.solver.language.model.problem.IntConstant;
19import org.eclipse.viatra.solver.language.model.problem.NegativeLiteral;
20import org.eclipse.viatra.solver.language.model.problem.Node;
21import org.eclipse.viatra.solver.language.model.problem.NodeAssertionArgument;
22import org.eclipse.viatra.solver.language.model.problem.NodeValueAssertion;
23import org.eclipse.viatra.solver.language.model.problem.PredicateDefinition;
24import org.eclipse.viatra.solver.language.model.problem.Problem;
25import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
26import org.eclipse.viatra.solver.language.model.problem.RangeMultiplicity;
27import org.eclipse.viatra.solver.language.model.problem.RealConstant;
28import org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration;
29import org.eclipse.viatra.solver.language.model.problem.ScopeDeclaration;
30import org.eclipse.viatra.solver.language.model.problem.StringConstant;
31import org.eclipse.viatra.solver.language.model.problem.TypeScope;
32import org.eclipse.viatra.solver.language.model.problem.UnboundedMultiplicity;
33import org.eclipse.viatra.solver.language.model.problem.VariableOrNodeArgument;
34import org.eclipse.viatra.solver.language.services.ProblemGrammarAccess;
35import org.eclipse.xtext.Action;
36import org.eclipse.xtext.Parameter;
37import org.eclipse.xtext.ParserRule;
38import org.eclipse.xtext.serializer.ISerializationContext;
39import org.eclipse.xtext.serializer.acceptor.SequenceFeeder;
40import org.eclipse.xtext.serializer.sequencer.AbstractDelegatingSemanticSequencer;
41import org.eclipse.xtext.serializer.sequencer.ITransientValueService.ValueTransient;
42
43@SuppressWarnings("all")
44public class ProblemSemanticSequencer extends AbstractDelegatingSemanticSequencer {
45
46 @Inject
47 private ProblemGrammarAccess grammarAccess;
48
49 @Override
50 public void sequence(ISerializationContext context, EObject semanticObject) {
51 EPackage epackage = semanticObject.eClass().getEPackage();
52 ParserRule rule = context.getParserRule();
53 Action action = context.getAssignedAction();
54 Set<Parameter> parameters = context.getEnabledBooleanParameters();
55 if (epackage == ProblemPackage.eINSTANCE)
56 switch (semanticObject.eClass().getClassifierID()) {
57 case ProblemPackage.ASSERTION:
58 sequence_Assertion(context, (Assertion) semanticObject);
59 return;
60 case ProblemPackage.ATOM:
61 sequence_Atom(context, (Atom) semanticObject);
62 return;
63 case ProblemPackage.CLASS_DECLARATION:
64 sequence_ClassDeclaration(context, (ClassDeclaration) semanticObject);
65 return;
66 case ProblemPackage.CONJUNCTION:
67 sequence_Conjunction(context, (Conjunction) semanticObject);
68 return;
69 case ProblemPackage.CONSTANT_ARGUMENT:
70 sequence_ConstantArgument(context, (ConstantArgument) semanticObject);
71 return;
72 case ProblemPackage.CONSTANT_ASSERTION_ARGUMENT:
73 sequence_ConstantAssertionArgument(context, (ConstantAssertionArgument) semanticObject);
74 return;
75 case ProblemPackage.ENUM_DECLARATION:
76 sequence_EnumDeclaration(context, (EnumDeclaration) semanticObject);
77 return;
78 case ProblemPackage.EXACT_MULTIPLICITY:
79 sequence_ExactMultiplicity(context, (ExactMultiplicity) semanticObject);
80 return;
81 case ProblemPackage.INT_CONSTANT:
82 sequence_IntConstant(context, (IntConstant) semanticObject);
83 return;
84 case ProblemPackage.NEGATIVE_LITERAL:
85 sequence_NegativeLiteral(context, (NegativeLiteral) semanticObject);
86 return;
87 case ProblemPackage.NODE:
88 sequence_EnumLiteral(context, (Node) semanticObject);
89 return;
90 case ProblemPackage.NODE_ASSERTION_ARGUMENT:
91 sequence_NodeAssertionArgument(context, (NodeAssertionArgument) semanticObject);
92 return;
93 case ProblemPackage.NODE_VALUE_ASSERTION:
94 sequence_NodeValueAssertion(context, (NodeValueAssertion) semanticObject);
95 return;
96 case ProblemPackage.PARAMETER:
97 sequence_Parameter(context, (org.eclipse.viatra.solver.language.model.problem.Parameter) semanticObject);
98 return;
99 case ProblemPackage.PREDICATE_DEFINITION:
100 sequence_PredicateDefinition(context, (PredicateDefinition) semanticObject);
101 return;
102 case ProblemPackage.PROBLEM:
103 sequence_Problem(context, (Problem) semanticObject);
104 return;
105 case ProblemPackage.RANGE_MULTIPLICITY:
106 sequence_RangeMultiplicity(context, (RangeMultiplicity) semanticObject);
107 return;
108 case ProblemPackage.REAL_CONSTANT:
109 sequence_RealConstant(context, (RealConstant) semanticObject);
110 return;
111 case ProblemPackage.REFERENCE_DECLARATION:
112 sequence_ReferenceDeclaration(context, (ReferenceDeclaration) semanticObject);
113 return;
114 case ProblemPackage.SCOPE_DECLARATION:
115 sequence_ScopeDeclaration(context, (ScopeDeclaration) semanticObject);
116 return;
117 case ProblemPackage.STRING_CONSTANT:
118 sequence_StringConstant(context, (StringConstant) semanticObject);
119 return;
120 case ProblemPackage.TYPE_SCOPE:
121 sequence_TypeScope(context, (TypeScope) semanticObject);
122 return;
123 case ProblemPackage.UNBOUNDED_MULTIPLICITY:
124 sequence_UnboundedMultiplicity(context, (UnboundedMultiplicity) semanticObject);
125 return;
126 case ProblemPackage.VARIABLE_OR_NODE_ARGUMENT:
127 sequence_VariableOrNodeArgument(context, (VariableOrNodeArgument) semanticObject);
128 return;
129 }
130 if (errorAcceptor != null)
131 errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context));
132 }
133
134 /**
135 * Contexts:
136 * Statement returns Assertion
137 * Assertion returns Assertion
138 *
139 * Constraint:
140 * (
141 * (relation=[Relation|QualifiedName] (arguments+=AssertionArgument arguments+=AssertionArgument*)? value=LogicValue) |
142 * (value=ShortLogicValue? relation=[Relation|QualifiedName] (arguments+=AssertionArgument arguments+=AssertionArgument*)?)
143 * )
144 */
145 protected void sequence_Assertion(ISerializationContext context, Assertion semanticObject) {
146 genericSequencer.createSequence(context, semanticObject);
147 }
148
149
150 /**
151 * Contexts:
152 * Literal returns Atom
153 * Atom returns Atom
154 *
155 * Constraint:
156 * (relation=[Relation|QualifiedName] transitiveClosure?='+'? (arguments+=Argument arguments+=Argument*)?)
157 */
158 protected void sequence_Atom(ISerializationContext context, Atom semanticObject) {
159 genericSequencer.createSequence(context, semanticObject);
160 }
161
162
163 /**
164 * Contexts:
165 * Statement returns ClassDeclaration
166 * ClassDeclaration returns ClassDeclaration
167 *
168 * Constraint:
169 * (
170 * abstract?='abstract'?
171 * name=Identifier
172 * (superTypes+=[Relation|QualifiedName] superTypes+=[Relation|QualifiedName]*)?
173 * referenceDeclarations+=ReferenceDeclaration*
174 * )
175 */
176 protected void sequence_ClassDeclaration(ISerializationContext context, ClassDeclaration semanticObject) {
177 genericSequencer.createSequence(context, semanticObject);
178 }
179
180
181 /**
182 * Contexts:
183 * Conjunction returns Conjunction
184 *
185 * Constraint:
186 * (literals+=Literal literals+=Literal*)
187 */
188 protected void sequence_Conjunction(ISerializationContext context, Conjunction semanticObject) {
189 genericSequencer.createSequence(context, semanticObject);
190 }
191
192
193 /**
194 * Contexts:
195 * Argument returns ConstantArgument
196 * ConstantArgument returns ConstantArgument
197 *
198 * Constraint:
199 * constant=Constant
200 */
201 protected void sequence_ConstantArgument(ISerializationContext context, ConstantArgument semanticObject) {
202 if (errorAcceptor != null) {
203 if (transientValues.isValueTransient(semanticObject, ProblemPackage.Literals.CONSTANT_ARGUMENT__CONSTANT) == ValueTransient.YES)
204 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, ProblemPackage.Literals.CONSTANT_ARGUMENT__CONSTANT));
205 }
206 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
207 feeder.accept(grammarAccess.getConstantArgumentAccess().getConstantConstantParserRuleCall_0(), semanticObject.getConstant());
208 feeder.finish();
209 }
210
211
212 /**
213 * Contexts:
214 * AssertionArgument returns ConstantAssertionArgument
215 * ConstantAssertionArgument returns ConstantAssertionArgument
216 *
217 * Constraint:
218 * constant=Constant
219 */
220 protected void sequence_ConstantAssertionArgument(ISerializationContext context, ConstantAssertionArgument semanticObject) {
221 if (errorAcceptor != null) {
222 if (transientValues.isValueTransient(semanticObject, ProblemPackage.Literals.CONSTANT_ASSERTION_ARGUMENT__CONSTANT) == ValueTransient.YES)
223 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, ProblemPackage.Literals.CONSTANT_ASSERTION_ARGUMENT__CONSTANT));
224 }
225 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
226 feeder.accept(grammarAccess.getConstantAssertionArgumentAccess().getConstantConstantParserRuleCall_0(), semanticObject.getConstant());
227 feeder.finish();
228 }
229
230
231 /**
232 * Contexts:
233 * Statement returns EnumDeclaration
234 * EnumDeclaration returns EnumDeclaration
235 *
236 * Constraint:
237 * (name=Identifier (literals+=EnumLiteral literals+=EnumLiteral*)?)
238 */
239 protected void sequence_EnumDeclaration(ISerializationContext context, EnumDeclaration semanticObject) {
240 genericSequencer.createSequence(context, semanticObject);
241 }
242
243
244 /**
245 * Contexts:
246 * EnumLiteral returns Node
247 *
248 * Constraint:
249 * name=Identifier
250 */
251 protected void sequence_EnumLiteral(ISerializationContext context, Node semanticObject) {
252 if (errorAcceptor != null) {
253 if (transientValues.isValueTransient(semanticObject, ProblemPackage.Literals.NAMED_ELEMENT__NAME) == ValueTransient.YES)
254 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, ProblemPackage.Literals.NAMED_ELEMENT__NAME));
255 }
256 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
257 feeder.accept(grammarAccess.getEnumLiteralAccess().getNameIdentifierParserRuleCall_0(), semanticObject.getName());
258 feeder.finish();
259 }
260
261
262 /**
263 * Contexts:
264 * Multiplicity returns ExactMultiplicity
265 * DefiniteMultiplicity returns ExactMultiplicity
266 * ExactMultiplicity returns ExactMultiplicity
267 *
268 * Constraint:
269 * exactValue=INT
270 */
271 protected void sequence_ExactMultiplicity(ISerializationContext context, ExactMultiplicity semanticObject) {
272 if (errorAcceptor != null) {
273 if (transientValues.isValueTransient(semanticObject, ProblemPackage.Literals.EXACT_MULTIPLICITY__EXACT_VALUE) == ValueTransient.YES)
274 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, ProblemPackage.Literals.EXACT_MULTIPLICITY__EXACT_VALUE));
275 }
276 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
277 feeder.accept(grammarAccess.getExactMultiplicityAccess().getExactValueINTTerminalRuleCall_0(), semanticObject.getExactValue());
278 feeder.finish();
279 }
280
281
282 /**
283 * Contexts:
284 * Constant returns IntConstant
285 * IntConstant returns IntConstant
286 *
287 * Constraint:
288 * intValue=Integer
289 */
290 protected void sequence_IntConstant(ISerializationContext context, IntConstant semanticObject) {
291 if (errorAcceptor != null) {
292 if (transientValues.isValueTransient(semanticObject, ProblemPackage.Literals.INT_CONSTANT__INT_VALUE) == ValueTransient.YES)
293 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, ProblemPackage.Literals.INT_CONSTANT__INT_VALUE));
294 }
295 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
296 feeder.accept(grammarAccess.getIntConstantAccess().getIntValueIntegerParserRuleCall_0(), semanticObject.getIntValue());
297 feeder.finish();
298 }
299
300
301 /**
302 * Contexts:
303 * Literal returns NegativeLiteral
304 * NegativeLiteral returns NegativeLiteral
305 *
306 * Constraint:
307 * atom=Atom
308 */
309 protected void sequence_NegativeLiteral(ISerializationContext context, NegativeLiteral semanticObject) {
310 if (errorAcceptor != null) {
311 if (transientValues.isValueTransient(semanticObject, ProblemPackage.Literals.NEGATIVE_LITERAL__ATOM) == ValueTransient.YES)
312 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, ProblemPackage.Literals.NEGATIVE_LITERAL__ATOM));
313 }
314 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
315 feeder.accept(grammarAccess.getNegativeLiteralAccess().getAtomAtomParserRuleCall_1_0(), semanticObject.getAtom());
316 feeder.finish();
317 }
318
319
320 /**
321 * Contexts:
322 * AssertionArgument returns NodeAssertionArgument
323 * NodeAssertionArgument returns NodeAssertionArgument
324 *
325 * Constraint:
326 * node=[Node|QualifiedName]
327 */
328 protected void sequence_NodeAssertionArgument(ISerializationContext context, NodeAssertionArgument semanticObject) {
329 if (errorAcceptor != null) {
330 if (transientValues.isValueTransient(semanticObject, ProblemPackage.Literals.NODE_ASSERTION_ARGUMENT__NODE) == ValueTransient.YES)
331 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, ProblemPackage.Literals.NODE_ASSERTION_ARGUMENT__NODE));
332 }
333 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
334 feeder.accept(grammarAccess.getNodeAssertionArgumentAccess().getNodeNodeQualifiedNameParserRuleCall_0_1(), semanticObject.eGet(ProblemPackage.Literals.NODE_ASSERTION_ARGUMENT__NODE, false));
335 feeder.finish();
336 }
337
338
339 /**
340 * Contexts:
341 * Statement returns NodeValueAssertion
342 * NodeValueAssertion returns NodeValueAssertion
343 *
344 * Constraint:
345 * (node=[Node|QualifiedName] value=Constant)
346 */
347 protected void sequence_NodeValueAssertion(ISerializationContext context, NodeValueAssertion semanticObject) {
348 if (errorAcceptor != null) {
349 if (transientValues.isValueTransient(semanticObject, ProblemPackage.Literals.NODE_VALUE_ASSERTION__NODE) == ValueTransient.YES)
350 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, ProblemPackage.Literals.NODE_VALUE_ASSERTION__NODE));
351 if (transientValues.isValueTransient(semanticObject, ProblemPackage.Literals.NODE_VALUE_ASSERTION__VALUE) == ValueTransient.YES)
352 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, ProblemPackage.Literals.NODE_VALUE_ASSERTION__VALUE));
353 }
354 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
355 feeder.accept(grammarAccess.getNodeValueAssertionAccess().getNodeNodeQualifiedNameParserRuleCall_0_0_1(), semanticObject.eGet(ProblemPackage.Literals.NODE_VALUE_ASSERTION__NODE, false));
356 feeder.accept(grammarAccess.getNodeValueAssertionAccess().getValueConstantParserRuleCall_2_0(), semanticObject.getValue());
357 feeder.finish();
358 }
359
360
361 /**
362 * Contexts:
363 * Parameter returns Parameter
364 *
365 * Constraint:
366 * (parameterType=[Relation|QualifiedName]? name=Identifier)
367 */
368 protected void sequence_Parameter(ISerializationContext context, org.eclipse.viatra.solver.language.model.problem.Parameter semanticObject) {
369 genericSequencer.createSequence(context, semanticObject);
370 }
371
372
373 /**
374 * Contexts:
375 * Statement returns PredicateDefinition
376 * PredicateDefinition returns PredicateDefinition
377 *
378 * Constraint:
379 * (error?='error'? name=Identifier (parameters+=Parameter parameters+=Parameter*)? (bodies+=Conjunction bodies+=Conjunction*)?)
380 */
381 protected void sequence_PredicateDefinition(ISerializationContext context, PredicateDefinition semanticObject) {
382 genericSequencer.createSequence(context, semanticObject);
383 }
384
385
386 /**
387 * Contexts:
388 * Problem returns Problem
389 *
390 * Constraint:
391 * ((name=Identifier statements+=Statement+) | statements+=Statement+)?
392 */
393 protected void sequence_Problem(ISerializationContext context, Problem semanticObject) {
394 genericSequencer.createSequence(context, semanticObject);
395 }
396
397
398 /**
399 * Contexts:
400 * Multiplicity returns RangeMultiplicity
401 * DefiniteMultiplicity returns RangeMultiplicity
402 * RangeMultiplicity returns RangeMultiplicity
403 *
404 * Constraint:
405 * (lowerBound=INT upperBound=UpperBound)
406 */
407 protected void sequence_RangeMultiplicity(ISerializationContext context, RangeMultiplicity semanticObject) {
408 if (errorAcceptor != null) {
409 if (transientValues.isValueTransient(semanticObject, ProblemPackage.Literals.RANGE_MULTIPLICITY__LOWER_BOUND) == ValueTransient.YES)
410 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, ProblemPackage.Literals.RANGE_MULTIPLICITY__LOWER_BOUND));
411 if (transientValues.isValueTransient(semanticObject, ProblemPackage.Literals.RANGE_MULTIPLICITY__UPPER_BOUND) == ValueTransient.YES)
412 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, ProblemPackage.Literals.RANGE_MULTIPLICITY__UPPER_BOUND));
413 }
414 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
415 feeder.accept(grammarAccess.getRangeMultiplicityAccess().getLowerBoundINTTerminalRuleCall_0_0(), semanticObject.getLowerBound());
416 feeder.accept(grammarAccess.getRangeMultiplicityAccess().getUpperBoundUpperBoundParserRuleCall_2_0(), semanticObject.getUpperBound());
417 feeder.finish();
418 }
419
420
421 /**
422 * Contexts:
423 * Constant returns RealConstant
424 * RealConstant returns RealConstant
425 *
426 * Constraint:
427 * realValue=Real
428 */
429 protected void sequence_RealConstant(ISerializationContext context, RealConstant semanticObject) {
430 if (errorAcceptor != null) {
431 if (transientValues.isValueTransient(semanticObject, ProblemPackage.Literals.REAL_CONSTANT__REAL_VALUE) == ValueTransient.YES)
432 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, ProblemPackage.Literals.REAL_CONSTANT__REAL_VALUE));
433 }
434 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
435 feeder.accept(grammarAccess.getRealConstantAccess().getRealValueRealParserRuleCall_0(), semanticObject.getRealValue());
436 feeder.finish();
437 }
438
439
440 /**
441 * Contexts:
442 * ReferenceDeclaration returns ReferenceDeclaration
443 *
444 * Constraint:
445 * (
446 * containment?='contains'?
447 * referenceType=[Relation|QualifiedName]
448 * multiplicity=Multiplicity?
449 * name=Identifier
450 * opposite=[ReferenceDeclaration|QualifiedName]?
451 * )
452 */
453 protected void sequence_ReferenceDeclaration(ISerializationContext context, ReferenceDeclaration semanticObject) {
454 genericSequencer.createSequence(context, semanticObject);
455 }
456
457
458 /**
459 * Contexts:
460 * Statement returns ScopeDeclaration
461 * ScopeDeclaration returns ScopeDeclaration
462 *
463 * Constraint:
464 * (typeScopes+=TypeScope typeScopes+=TypeScope*)
465 */
466 protected void sequence_ScopeDeclaration(ISerializationContext context, ScopeDeclaration semanticObject) {
467 genericSequencer.createSequence(context, semanticObject);
468 }
469
470
471 /**
472 * Contexts:
473 * Constant returns StringConstant
474 * StringConstant returns StringConstant
475 *
476 * Constraint:
477 * stringValue=STRING
478 */
479 protected void sequence_StringConstant(ISerializationContext context, StringConstant semanticObject) {
480 if (errorAcceptor != null) {
481 if (transientValues.isValueTransient(semanticObject, ProblemPackage.Literals.STRING_CONSTANT__STRING_VALUE) == ValueTransient.YES)
482 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, ProblemPackage.Literals.STRING_CONSTANT__STRING_VALUE));
483 }
484 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
485 feeder.accept(grammarAccess.getStringConstantAccess().getStringValueSTRINGTerminalRuleCall_0(), semanticObject.getStringValue());
486 feeder.finish();
487 }
488
489
490 /**
491 * Contexts:
492 * TypeScope returns TypeScope
493 *
494 * Constraint:
495 * (targetType=[ClassDeclaration|ID] increment?='+='? multiplicity=DefiniteMultiplicity)
496 */
497 protected void sequence_TypeScope(ISerializationContext context, TypeScope semanticObject) {
498 genericSequencer.createSequence(context, semanticObject);
499 }
500
501
502 /**
503 * Contexts:
504 * Multiplicity returns UnboundedMultiplicity
505 * UnboundedMultiplicity returns UnboundedMultiplicity
506 *
507 * Constraint:
508 * {UnboundedMultiplicity}
509 */
510 protected void sequence_UnboundedMultiplicity(ISerializationContext context, UnboundedMultiplicity semanticObject) {
511 genericSequencer.createSequence(context, semanticObject);
512 }
513
514
515 /**
516 * Contexts:
517 * Argument returns VariableOrNodeArgument
518 * VariableOrNodeArgument returns VariableOrNodeArgument
519 *
520 * Constraint:
521 * variableOrNode=[VariableOrNode|QualifiedName]
522 */
523 protected void sequence_VariableOrNodeArgument(ISerializationContext context, VariableOrNodeArgument semanticObject) {
524 if (errorAcceptor != null) {
525 if (transientValues.isValueTransient(semanticObject, ProblemPackage.Literals.VARIABLE_OR_NODE_ARGUMENT__VARIABLE_OR_NODE) == ValueTransient.YES)
526 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, ProblemPackage.Literals.VARIABLE_OR_NODE_ARGUMENT__VARIABLE_OR_NODE));
527 }
528 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
529 feeder.accept(grammarAccess.getVariableOrNodeArgumentAccess().getVariableOrNodeVariableOrNodeQualifiedNameParserRuleCall_0_1(), semanticObject.eGet(ProblemPackage.Literals.VARIABLE_OR_NODE_ARGUMENT__VARIABLE_OR_NODE, false));
530 feeder.finish();
531 }
532
533
534}
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/serializer/ProblemSyntacticSequencer.java b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/serializer/ProblemSyntacticSequencer.java
deleted file mode 100644
index 3f0a3f05..00000000
--- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/serializer/ProblemSyntacticSequencer.java
+++ /dev/null
@@ -1,139 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4package org.eclipse.viatra.solver.language.serializer;
5
6import com.google.inject.Inject;
7import java.util.List;
8import org.eclipse.emf.ecore.EObject;
9import org.eclipse.viatra.solver.language.services.ProblemGrammarAccess;
10import org.eclipse.xtext.IGrammarAccess;
11import org.eclipse.xtext.RuleCall;
12import org.eclipse.xtext.nodemodel.INode;
13import org.eclipse.xtext.serializer.analysis.GrammarAlias.AbstractElementAlias;
14import org.eclipse.xtext.serializer.analysis.GrammarAlias.AlternativeAlias;
15import org.eclipse.xtext.serializer.analysis.GrammarAlias.GroupAlias;
16import org.eclipse.xtext.serializer.analysis.GrammarAlias.TokenAlias;
17import org.eclipse.xtext.serializer.analysis.ISyntacticSequencerPDAProvider.ISynNavigable;
18import org.eclipse.xtext.serializer.analysis.ISyntacticSequencerPDAProvider.ISynTransition;
19import org.eclipse.xtext.serializer.sequencer.AbstractSyntacticSequencer;
20
21@SuppressWarnings("all")
22public class ProblemSyntacticSequencer extends AbstractSyntacticSequencer {
23
24 protected ProblemGrammarAccess grammarAccess;
25 protected AbstractElementAlias match_ClassDeclaration_FullStopKeyword_4_1_or___LeftCurlyBracketKeyword_4_0_0_RightCurlyBracketKeyword_4_0_2__;
26 protected AbstractElementAlias match_ClassDeclaration_SemicolonKeyword_4_0_1_1_q;
27 protected AbstractElementAlias match_EnumDeclaration_FullStopKeyword_2_1_or___LeftCurlyBracketKeyword_2_0_0_RightCurlyBracketKeyword_2_0_2__;
28 protected AbstractElementAlias match_EnumDeclaration___CommaKeyword_2_0_1_2_0_or_SemicolonKeyword_2_0_1_2_1__q;
29 protected AbstractElementAlias match_PredicateDefinition_PredKeyword_0_0_1_q;
30 protected AbstractElementAlias match_ReferenceDeclaration_RefersKeyword_0_1_q;
31
32 @Inject
33 protected void init(IGrammarAccess access) {
34 grammarAccess = (ProblemGrammarAccess) access;
35 match_ClassDeclaration_FullStopKeyword_4_1_or___LeftCurlyBracketKeyword_4_0_0_RightCurlyBracketKeyword_4_0_2__ = new AlternativeAlias(false, false, new GroupAlias(false, false, new TokenAlias(false, false, grammarAccess.getClassDeclarationAccess().getLeftCurlyBracketKeyword_4_0_0()), new TokenAlias(false, false, grammarAccess.getClassDeclarationAccess().getRightCurlyBracketKeyword_4_0_2())), new TokenAlias(false, false, grammarAccess.getClassDeclarationAccess().getFullStopKeyword_4_1()));
36 match_ClassDeclaration_SemicolonKeyword_4_0_1_1_q = new TokenAlias(false, true, grammarAccess.getClassDeclarationAccess().getSemicolonKeyword_4_0_1_1());
37 match_EnumDeclaration_FullStopKeyword_2_1_or___LeftCurlyBracketKeyword_2_0_0_RightCurlyBracketKeyword_2_0_2__ = new AlternativeAlias(false, false, new GroupAlias(false, false, new TokenAlias(false, false, grammarAccess.getEnumDeclarationAccess().getLeftCurlyBracketKeyword_2_0_0()), new TokenAlias(false, false, grammarAccess.getEnumDeclarationAccess().getRightCurlyBracketKeyword_2_0_2())), new TokenAlias(false, false, grammarAccess.getEnumDeclarationAccess().getFullStopKeyword_2_1()));
38 match_EnumDeclaration___CommaKeyword_2_0_1_2_0_or_SemicolonKeyword_2_0_1_2_1__q = new AlternativeAlias(false, true, new TokenAlias(false, false, grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_2_0()), new TokenAlias(false, false, grammarAccess.getEnumDeclarationAccess().getSemicolonKeyword_2_0_1_2_1()));
39 match_PredicateDefinition_PredKeyword_0_0_1_q = new TokenAlias(false, true, grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_0_1());
40 match_ReferenceDeclaration_RefersKeyword_0_1_q = new TokenAlias(false, true, grammarAccess.getReferenceDeclarationAccess().getRefersKeyword_0_1());
41 }
42
43 @Override
44 protected String getUnassignedRuleCallToken(EObject semanticObject, RuleCall ruleCall, INode node) {
45 return "";
46 }
47
48
49 @Override
50 protected void emitUnassignedTokens(EObject semanticObject, ISynTransition transition, INode fromNode, INode toNode) {
51 if (transition.getAmbiguousSyntaxes().isEmpty()) return;
52 List<INode> transitionNodes = collectNodes(fromNode, toNode);
53 for (AbstractElementAlias syntax : transition.getAmbiguousSyntaxes()) {
54 List<INode> syntaxNodes = getNodesFor(transitionNodes, syntax);
55 if (match_ClassDeclaration_FullStopKeyword_4_1_or___LeftCurlyBracketKeyword_4_0_0_RightCurlyBracketKeyword_4_0_2__.equals(syntax))
56 emit_ClassDeclaration_FullStopKeyword_4_1_or___LeftCurlyBracketKeyword_4_0_0_RightCurlyBracketKeyword_4_0_2__(semanticObject, getLastNavigableState(), syntaxNodes);
57 else if (match_ClassDeclaration_SemicolonKeyword_4_0_1_1_q.equals(syntax))
58 emit_ClassDeclaration_SemicolonKeyword_4_0_1_1_q(semanticObject, getLastNavigableState(), syntaxNodes);
59 else if (match_EnumDeclaration_FullStopKeyword_2_1_or___LeftCurlyBracketKeyword_2_0_0_RightCurlyBracketKeyword_2_0_2__.equals(syntax))
60 emit_EnumDeclaration_FullStopKeyword_2_1_or___LeftCurlyBracketKeyword_2_0_0_RightCurlyBracketKeyword_2_0_2__(semanticObject, getLastNavigableState(), syntaxNodes);
61 else if (match_EnumDeclaration___CommaKeyword_2_0_1_2_0_or_SemicolonKeyword_2_0_1_2_1__q.equals(syntax))
62 emit_EnumDeclaration___CommaKeyword_2_0_1_2_0_or_SemicolonKeyword_2_0_1_2_1__q(semanticObject, getLastNavigableState(), syntaxNodes);
63 else if (match_PredicateDefinition_PredKeyword_0_0_1_q.equals(syntax))
64 emit_PredicateDefinition_PredKeyword_0_0_1_q(semanticObject, getLastNavigableState(), syntaxNodes);
65 else if (match_ReferenceDeclaration_RefersKeyword_0_1_q.equals(syntax))
66 emit_ReferenceDeclaration_RefersKeyword_0_1_q(semanticObject, getLastNavigableState(), syntaxNodes);
67 else acceptNodes(getLastNavigableState(), syntaxNodes);
68 }
69 }
70
71 /**
72 * Ambiguous syntax:
73 * ('{' '}') | '.'
74 *
75 * This ambiguous syntax occurs at:
76 * name=Identifier (ambiguity) (rule end)
77 * superTypes+=[Relation|QualifiedName] (ambiguity) (rule end)
78 */
79 protected void emit_ClassDeclaration_FullStopKeyword_4_1_or___LeftCurlyBracketKeyword_4_0_0_RightCurlyBracketKeyword_4_0_2__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
80 acceptNodes(transition, nodes);
81 }
82
83 /**
84 * Ambiguous syntax:
85 * ';'?
86 *
87 * This ambiguous syntax occurs at:
88 * referenceDeclarations+=ReferenceDeclaration (ambiguity) '}' (rule end)
89 * referenceDeclarations+=ReferenceDeclaration (ambiguity) referenceDeclarations+=ReferenceDeclaration
90 */
91 protected void emit_ClassDeclaration_SemicolonKeyword_4_0_1_1_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
92 acceptNodes(transition, nodes);
93 }
94
95 /**
96 * Ambiguous syntax:
97 * ('{' '}') | '.'
98 *
99 * This ambiguous syntax occurs at:
100 * name=Identifier (ambiguity) (rule end)
101 */
102 protected void emit_EnumDeclaration_FullStopKeyword_2_1_or___LeftCurlyBracketKeyword_2_0_0_RightCurlyBracketKeyword_2_0_2__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
103 acceptNodes(transition, nodes);
104 }
105
106 /**
107 * Ambiguous syntax:
108 * (',' | ';')?
109 *
110 * This ambiguous syntax occurs at:
111 * literals+=EnumLiteral (ambiguity) '}' (rule end)
112 */
113 protected void emit_EnumDeclaration___CommaKeyword_2_0_1_2_0_or_SemicolonKeyword_2_0_1_2_1__q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
114 acceptNodes(transition, nodes);
115 }
116
117 /**
118 * Ambiguous syntax:
119 * 'pred'?
120 *
121 * This ambiguous syntax occurs at:
122 * error?='error' (ambiguity) name=Identifier
123 */
124 protected void emit_PredicateDefinition_PredKeyword_0_0_1_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
125 acceptNodes(transition, nodes);
126 }
127
128 /**
129 * Ambiguous syntax:
130 * 'refers'?
131 *
132 * This ambiguous syntax occurs at:
133 * (rule start) (ambiguity) referenceType=[Relation|QualifiedName]
134 */
135 protected void emit_ReferenceDeclaration_RefersKeyword_0_1_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
136 acceptNodes(transition, nodes);
137 }
138
139}
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/services/ProblemGrammarAccess.java b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/services/ProblemGrammarAccess.java
deleted file mode 100644
index 01188c37..00000000
--- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/services/ProblemGrammarAccess.java
+++ /dev/null
@@ -1,2071 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4package org.eclipse.viatra.solver.language.services;
5
6import com.google.inject.Inject;
7import com.google.inject.Singleton;
8import java.util.List;
9import org.eclipse.xtext.Action;
10import org.eclipse.xtext.Alternatives;
11import org.eclipse.xtext.Assignment;
12import org.eclipse.xtext.CrossReference;
13import org.eclipse.xtext.EnumLiteralDeclaration;
14import org.eclipse.xtext.EnumRule;
15import org.eclipse.xtext.Grammar;
16import org.eclipse.xtext.GrammarUtil;
17import org.eclipse.xtext.Group;
18import org.eclipse.xtext.Keyword;
19import org.eclipse.xtext.ParserRule;
20import org.eclipse.xtext.RuleCall;
21import org.eclipse.xtext.TerminalRule;
22import org.eclipse.xtext.common.services.TerminalsGrammarAccess;
23import org.eclipse.xtext.service.AbstractElementFinder;
24import org.eclipse.xtext.service.GrammarProvider;
25
26@Singleton
27public class ProblemGrammarAccess extends AbstractElementFinder.AbstractGrammarElementFinder {
28
29 public class ProblemElements extends AbstractParserRuleElementFinder {
30 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Problem");
31 private final Group cGroup = (Group)rule.eContents().get(1);
32 private final Group cGroup_0 = (Group)cGroup.eContents().get(0);
33 private final Keyword cProblemKeyword_0_0 = (Keyword)cGroup_0.eContents().get(0);
34 private final Assignment cNameAssignment_0_1 = (Assignment)cGroup_0.eContents().get(1);
35 private final RuleCall cNameIdentifierParserRuleCall_0_1_0 = (RuleCall)cNameAssignment_0_1.eContents().get(0);
36 private final Keyword cFullStopKeyword_0_2 = (Keyword)cGroup_0.eContents().get(2);
37 private final Assignment cStatementsAssignment_1 = (Assignment)cGroup.eContents().get(1);
38 private final RuleCall cStatementsStatementParserRuleCall_1_0 = (RuleCall)cStatementsAssignment_1.eContents().get(0);
39
40 //Problem:
41 // ("problem" name=Identifier ".")?
42 // statements+=Statement*;
43 @Override public ParserRule getRule() { return rule; }
44
45 //("problem" name=Identifier ".")?
46 //statements+=Statement*
47 public Group getGroup() { return cGroup; }
48
49 //("problem" name=Identifier ".")?
50 public Group getGroup_0() { return cGroup_0; }
51
52 //"problem"
53 public Keyword getProblemKeyword_0_0() { return cProblemKeyword_0_0; }
54
55 //name=Identifier
56 public Assignment getNameAssignment_0_1() { return cNameAssignment_0_1; }
57
58 //Identifier
59 public RuleCall getNameIdentifierParserRuleCall_0_1_0() { return cNameIdentifierParserRuleCall_0_1_0; }
60
61 //"."
62 public Keyword getFullStopKeyword_0_2() { return cFullStopKeyword_0_2; }
63
64 //statements+=Statement*
65 public Assignment getStatementsAssignment_1() { return cStatementsAssignment_1; }
66
67 //Statement
68 public RuleCall getStatementsStatementParserRuleCall_1_0() { return cStatementsStatementParserRuleCall_1_0; }
69 }
70 public class StatementElements extends AbstractParserRuleElementFinder {
71 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Statement");
72 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
73 private final RuleCall cClassDeclarationParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
74 private final RuleCall cEnumDeclarationParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
75 private final RuleCall cPredicateDefinitionParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
76 private final RuleCall cAssertionParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
77 private final RuleCall cNodeValueAssertionParserRuleCall_4 = (RuleCall)cAlternatives.eContents().get(4);
78 private final RuleCall cScopeDeclarationParserRuleCall_5 = (RuleCall)cAlternatives.eContents().get(5);
79
80 //Statement:
81 // ClassDeclaration | EnumDeclaration | PredicateDefinition | Assertion | NodeValueAssertion | ScopeDeclaration;
82 @Override public ParserRule getRule() { return rule; }
83
84 //ClassDeclaration | EnumDeclaration | PredicateDefinition | Assertion | NodeValueAssertion | ScopeDeclaration
85 public Alternatives getAlternatives() { return cAlternatives; }
86
87 //ClassDeclaration
88 public RuleCall getClassDeclarationParserRuleCall_0() { return cClassDeclarationParserRuleCall_0; }
89
90 //EnumDeclaration
91 public RuleCall getEnumDeclarationParserRuleCall_1() { return cEnumDeclarationParserRuleCall_1; }
92
93 //PredicateDefinition
94 public RuleCall getPredicateDefinitionParserRuleCall_2() { return cPredicateDefinitionParserRuleCall_2; }
95
96 //Assertion
97 public RuleCall getAssertionParserRuleCall_3() { return cAssertionParserRuleCall_3; }
98
99 //NodeValueAssertion
100 public RuleCall getNodeValueAssertionParserRuleCall_4() { return cNodeValueAssertionParserRuleCall_4; }
101
102 //ScopeDeclaration
103 public RuleCall getScopeDeclarationParserRuleCall_5() { return cScopeDeclarationParserRuleCall_5; }
104 }
105 public class ClassDeclarationElements extends AbstractParserRuleElementFinder {
106 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.ClassDeclaration");
107 private final Group cGroup = (Group)rule.eContents().get(1);
108 private final Assignment cAbstractAssignment_0 = (Assignment)cGroup.eContents().get(0);
109 private final Keyword cAbstractAbstractKeyword_0_0 = (Keyword)cAbstractAssignment_0.eContents().get(0);
110 private final Keyword cClassKeyword_1 = (Keyword)cGroup.eContents().get(1);
111 private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2);
112 private final RuleCall cNameIdentifierParserRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0);
113 private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
114 private final Keyword cExtendsKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
115 private final Assignment cSuperTypesAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
116 private final CrossReference cSuperTypesRelationCrossReference_3_1_0 = (CrossReference)cSuperTypesAssignment_3_1.eContents().get(0);
117 private final RuleCall cSuperTypesRelationQualifiedNameParserRuleCall_3_1_0_1 = (RuleCall)cSuperTypesRelationCrossReference_3_1_0.eContents().get(1);
118 private final Group cGroup_3_2 = (Group)cGroup_3.eContents().get(2);
119 private final Keyword cCommaKeyword_3_2_0 = (Keyword)cGroup_3_2.eContents().get(0);
120 private final Assignment cSuperTypesAssignment_3_2_1 = (Assignment)cGroup_3_2.eContents().get(1);
121 private final CrossReference cSuperTypesRelationCrossReference_3_2_1_0 = (CrossReference)cSuperTypesAssignment_3_2_1.eContents().get(0);
122 private final RuleCall cSuperTypesRelationQualifiedNameParserRuleCall_3_2_1_0_1 = (RuleCall)cSuperTypesRelationCrossReference_3_2_1_0.eContents().get(1);
123 private final Alternatives cAlternatives_4 = (Alternatives)cGroup.eContents().get(4);
124 private final Group cGroup_4_0 = (Group)cAlternatives_4.eContents().get(0);
125 private final Keyword cLeftCurlyBracketKeyword_4_0_0 = (Keyword)cGroup_4_0.eContents().get(0);
126 private final Group cGroup_4_0_1 = (Group)cGroup_4_0.eContents().get(1);
127 private final Assignment cReferenceDeclarationsAssignment_4_0_1_0 = (Assignment)cGroup_4_0_1.eContents().get(0);
128 private final RuleCall cReferenceDeclarationsReferenceDeclarationParserRuleCall_4_0_1_0_0 = (RuleCall)cReferenceDeclarationsAssignment_4_0_1_0.eContents().get(0);
129 private final Keyword cSemicolonKeyword_4_0_1_1 = (Keyword)cGroup_4_0_1.eContents().get(1);
130 private final Keyword cRightCurlyBracketKeyword_4_0_2 = (Keyword)cGroup_4_0.eContents().get(2);
131 private final Keyword cFullStopKeyword_4_1 = (Keyword)cAlternatives_4.eContents().get(1);
132
133 //ClassDeclaration:
134 // abstract?="abstract"? "class"
135 // name=Identifier
136 // ("extends" superTypes+=[Relation|QualifiedName] ("," superTypes+=[Relation|QualifiedName])*)?
137 // ("{" (referenceDeclarations+=ReferenceDeclaration ";"?)* "}" | ".");
138 @Override public ParserRule getRule() { return rule; }
139
140 //abstract?="abstract"? "class"
141 //name=Identifier
142 //("extends" superTypes+=[Relation|QualifiedName] ("," superTypes+=[Relation|QualifiedName])*)?
143 //("{" (referenceDeclarations+=ReferenceDeclaration ";"?)* "}" | ".")
144 public Group getGroup() { return cGroup; }
145
146 //abstract?="abstract"?
147 public Assignment getAbstractAssignment_0() { return cAbstractAssignment_0; }
148
149 //"abstract"
150 public Keyword getAbstractAbstractKeyword_0_0() { return cAbstractAbstractKeyword_0_0; }
151
152 //"class"
153 public Keyword getClassKeyword_1() { return cClassKeyword_1; }
154
155 //name=Identifier
156 public Assignment getNameAssignment_2() { return cNameAssignment_2; }
157
158 //Identifier
159 public RuleCall getNameIdentifierParserRuleCall_2_0() { return cNameIdentifierParserRuleCall_2_0; }
160
161 //("extends" superTypes+=[Relation|QualifiedName] ("," superTypes+=[Relation|QualifiedName])*)?
162 public Group getGroup_3() { return cGroup_3; }
163
164 //"extends"
165 public Keyword getExtendsKeyword_3_0() { return cExtendsKeyword_3_0; }
166
167 //superTypes+=[Relation|QualifiedName]
168 public Assignment getSuperTypesAssignment_3_1() { return cSuperTypesAssignment_3_1; }
169
170 //[Relation|QualifiedName]
171 public CrossReference getSuperTypesRelationCrossReference_3_1_0() { return cSuperTypesRelationCrossReference_3_1_0; }
172
173 //QualifiedName
174 public RuleCall getSuperTypesRelationQualifiedNameParserRuleCall_3_1_0_1() { return cSuperTypesRelationQualifiedNameParserRuleCall_3_1_0_1; }
175
176 //("," superTypes+=[Relation|QualifiedName])*
177 public Group getGroup_3_2() { return cGroup_3_2; }
178
179 //","
180 public Keyword getCommaKeyword_3_2_0() { return cCommaKeyword_3_2_0; }
181
182 //superTypes+=[Relation|QualifiedName]
183 public Assignment getSuperTypesAssignment_3_2_1() { return cSuperTypesAssignment_3_2_1; }
184
185 //[Relation|QualifiedName]
186 public CrossReference getSuperTypesRelationCrossReference_3_2_1_0() { return cSuperTypesRelationCrossReference_3_2_1_0; }
187
188 //QualifiedName
189 public RuleCall getSuperTypesRelationQualifiedNameParserRuleCall_3_2_1_0_1() { return cSuperTypesRelationQualifiedNameParserRuleCall_3_2_1_0_1; }
190
191 //("{" (referenceDeclarations+=ReferenceDeclaration ";"?)* "}" | ".")
192 public Alternatives getAlternatives_4() { return cAlternatives_4; }
193
194 //"{" (referenceDeclarations+=ReferenceDeclaration ";"?)* "}"
195 public Group getGroup_4_0() { return cGroup_4_0; }
196
197 //"{"
198 public Keyword getLeftCurlyBracketKeyword_4_0_0() { return cLeftCurlyBracketKeyword_4_0_0; }
199
200 //(referenceDeclarations+=ReferenceDeclaration ";"?)*
201 public Group getGroup_4_0_1() { return cGroup_4_0_1; }
202
203 //referenceDeclarations+=ReferenceDeclaration
204 public Assignment getReferenceDeclarationsAssignment_4_0_1_0() { return cReferenceDeclarationsAssignment_4_0_1_0; }
205
206 //ReferenceDeclaration
207 public RuleCall getReferenceDeclarationsReferenceDeclarationParserRuleCall_4_0_1_0_0() { return cReferenceDeclarationsReferenceDeclarationParserRuleCall_4_0_1_0_0; }
208
209 //";"?
210 public Keyword getSemicolonKeyword_4_0_1_1() { return cSemicolonKeyword_4_0_1_1; }
211
212 //"}"
213 public Keyword getRightCurlyBracketKeyword_4_0_2() { return cRightCurlyBracketKeyword_4_0_2; }
214
215 //"."
216 public Keyword getFullStopKeyword_4_1() { return cFullStopKeyword_4_1; }
217 }
218 public class EnumDeclarationElements extends AbstractParserRuleElementFinder {
219 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.EnumDeclaration");
220 private final Group cGroup = (Group)rule.eContents().get(1);
221 private final Keyword cEnumKeyword_0 = (Keyword)cGroup.eContents().get(0);
222 private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
223 private final RuleCall cNameIdentifierParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
224 private final Alternatives cAlternatives_2 = (Alternatives)cGroup.eContents().get(2);
225 private final Group cGroup_2_0 = (Group)cAlternatives_2.eContents().get(0);
226 private final Keyword cLeftCurlyBracketKeyword_2_0_0 = (Keyword)cGroup_2_0.eContents().get(0);
227 private final Group cGroup_2_0_1 = (Group)cGroup_2_0.eContents().get(1);
228 private final Assignment cLiteralsAssignment_2_0_1_0 = (Assignment)cGroup_2_0_1.eContents().get(0);
229 private final RuleCall cLiteralsEnumLiteralParserRuleCall_2_0_1_0_0 = (RuleCall)cLiteralsAssignment_2_0_1_0.eContents().get(0);
230 private final Group cGroup_2_0_1_1 = (Group)cGroup_2_0_1.eContents().get(1);
231 private final Keyword cCommaKeyword_2_0_1_1_0 = (Keyword)cGroup_2_0_1_1.eContents().get(0);
232 private final Assignment cLiteralsAssignment_2_0_1_1_1 = (Assignment)cGroup_2_0_1_1.eContents().get(1);
233 private final RuleCall cLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0 = (RuleCall)cLiteralsAssignment_2_0_1_1_1.eContents().get(0);
234 private final Alternatives cAlternatives_2_0_1_2 = (Alternatives)cGroup_2_0_1.eContents().get(2);
235 private final Keyword cCommaKeyword_2_0_1_2_0 = (Keyword)cAlternatives_2_0_1_2.eContents().get(0);
236 private final Keyword cSemicolonKeyword_2_0_1_2_1 = (Keyword)cAlternatives_2_0_1_2.eContents().get(1);
237 private final Keyword cRightCurlyBracketKeyword_2_0_2 = (Keyword)cGroup_2_0.eContents().get(2);
238 private final Keyword cFullStopKeyword_2_1 = (Keyword)cAlternatives_2.eContents().get(1);
239
240 //EnumDeclaration:
241 // "enum"
242 // name=Identifier
243 // ("{" (literals+=EnumLiteral ("," literals+=EnumLiteral)* ("," | ";")?)? "}" | ".");
244 @Override public ParserRule getRule() { return rule; }
245
246 //"enum"
247 //name=Identifier
248 //("{" (literals+=EnumLiteral ("," literals+=EnumLiteral)* ("," | ";")?)? "}" | ".")
249 public Group getGroup() { return cGroup; }
250
251 //"enum"
252 public Keyword getEnumKeyword_0() { return cEnumKeyword_0; }
253
254 //name=Identifier
255 public Assignment getNameAssignment_1() { return cNameAssignment_1; }
256
257 //Identifier
258 public RuleCall getNameIdentifierParserRuleCall_1_0() { return cNameIdentifierParserRuleCall_1_0; }
259
260 //("{" (literals+=EnumLiteral ("," literals+=EnumLiteral)* ("," | ";")?)? "}" | ".")
261 public Alternatives getAlternatives_2() { return cAlternatives_2; }
262
263 //"{" (literals+=EnumLiteral ("," literals+=EnumLiteral)* ("," | ";")?)? "}"
264 public Group getGroup_2_0() { return cGroup_2_0; }
265
266 //"{"
267 public Keyword getLeftCurlyBracketKeyword_2_0_0() { return cLeftCurlyBracketKeyword_2_0_0; }
268
269 //(literals+=EnumLiteral ("," literals+=EnumLiteral)* ("," | ";")?)?
270 public Group getGroup_2_0_1() { return cGroup_2_0_1; }
271
272 //literals+=EnumLiteral
273 public Assignment getLiteralsAssignment_2_0_1_0() { return cLiteralsAssignment_2_0_1_0; }
274
275 //EnumLiteral
276 public RuleCall getLiteralsEnumLiteralParserRuleCall_2_0_1_0_0() { return cLiteralsEnumLiteralParserRuleCall_2_0_1_0_0; }
277
278 //("," literals+=EnumLiteral)*
279 public Group getGroup_2_0_1_1() { return cGroup_2_0_1_1; }
280
281 //","
282 public Keyword getCommaKeyword_2_0_1_1_0() { return cCommaKeyword_2_0_1_1_0; }
283
284 //literals+=EnumLiteral
285 public Assignment getLiteralsAssignment_2_0_1_1_1() { return cLiteralsAssignment_2_0_1_1_1; }
286
287 //EnumLiteral
288 public RuleCall getLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0() { return cLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0; }
289
290 //("," | ";")?
291 public Alternatives getAlternatives_2_0_1_2() { return cAlternatives_2_0_1_2; }
292
293 //","
294 public Keyword getCommaKeyword_2_0_1_2_0() { return cCommaKeyword_2_0_1_2_0; }
295
296 //";"
297 public Keyword getSemicolonKeyword_2_0_1_2_1() { return cSemicolonKeyword_2_0_1_2_1; }
298
299 //"}"
300 public Keyword getRightCurlyBracketKeyword_2_0_2() { return cRightCurlyBracketKeyword_2_0_2; }
301
302 //"."
303 public Keyword getFullStopKeyword_2_1() { return cFullStopKeyword_2_1; }
304 }
305 public class EnumLiteralElements extends AbstractParserRuleElementFinder {
306 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.EnumLiteral");
307 private final Assignment cNameAssignment = (Assignment)rule.eContents().get(1);
308 private final RuleCall cNameIdentifierParserRuleCall_0 = (RuleCall)cNameAssignment.eContents().get(0);
309
310 //EnumLiteral returns Node:
311 // name=Identifier;
312 @Override public ParserRule getRule() { return rule; }
313
314 //name=Identifier
315 public Assignment getNameAssignment() { return cNameAssignment; }
316
317 //Identifier
318 public RuleCall getNameIdentifierParserRuleCall_0() { return cNameIdentifierParserRuleCall_0; }
319 }
320 public class ReferenceDeclarationElements extends AbstractParserRuleElementFinder {
321 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.ReferenceDeclaration");
322 private final Group cGroup = (Group)rule.eContents().get(1);
323 private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0);
324 private final Assignment cContainmentAssignment_0_0 = (Assignment)cAlternatives_0.eContents().get(0);
325 private final Keyword cContainmentContainsKeyword_0_0_0 = (Keyword)cContainmentAssignment_0_0.eContents().get(0);
326 private final Keyword cRefersKeyword_0_1 = (Keyword)cAlternatives_0.eContents().get(1);
327 private final Assignment cReferenceTypeAssignment_1 = (Assignment)cGroup.eContents().get(1);
328 private final CrossReference cReferenceTypeRelationCrossReference_1_0 = (CrossReference)cReferenceTypeAssignment_1.eContents().get(0);
329 private final RuleCall cReferenceTypeRelationQualifiedNameParserRuleCall_1_0_1 = (RuleCall)cReferenceTypeRelationCrossReference_1_0.eContents().get(1);
330 private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
331 private final Keyword cLeftSquareBracketKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
332 private final Assignment cMultiplicityAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
333 private final RuleCall cMultiplicityMultiplicityParserRuleCall_2_1_0 = (RuleCall)cMultiplicityAssignment_2_1.eContents().get(0);
334 private final Keyword cRightSquareBracketKeyword_2_2 = (Keyword)cGroup_2.eContents().get(2);
335 private final Assignment cNameAssignment_3 = (Assignment)cGroup.eContents().get(3);
336 private final RuleCall cNameIdentifierParserRuleCall_3_0 = (RuleCall)cNameAssignment_3.eContents().get(0);
337 private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
338 private final Keyword cOppositeKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
339 private final Assignment cOppositeAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1);
340 private final CrossReference cOppositeReferenceDeclarationCrossReference_4_1_0 = (CrossReference)cOppositeAssignment_4_1.eContents().get(0);
341 private final RuleCall cOppositeReferenceDeclarationQualifiedNameParserRuleCall_4_1_0_1 = (RuleCall)cOppositeReferenceDeclarationCrossReference_4_1_0.eContents().get(1);
342
343 //ReferenceDeclaration:
344 // (containment?="contains" | "refers")?
345 // referenceType=[Relation|QualifiedName]
346 // ("[" multiplicity=Multiplicity "]")?
347 // name=Identifier
348 // ("opposite" opposite=[ReferenceDeclaration|QualifiedName])?;
349 @Override public ParserRule getRule() { return rule; }
350
351 //(containment?="contains" | "refers")?
352 //referenceType=[Relation|QualifiedName]
353 //("[" multiplicity=Multiplicity "]")?
354 //name=Identifier
355 //("opposite" opposite=[ReferenceDeclaration|QualifiedName])?
356 public Group getGroup() { return cGroup; }
357
358 //(containment?="contains" | "refers")?
359 public Alternatives getAlternatives_0() { return cAlternatives_0; }
360
361 //containment?="contains"
362 public Assignment getContainmentAssignment_0_0() { return cContainmentAssignment_0_0; }
363
364 //"contains"
365 public Keyword getContainmentContainsKeyword_0_0_0() { return cContainmentContainsKeyword_0_0_0; }
366
367 //"refers"
368 public Keyword getRefersKeyword_0_1() { return cRefersKeyword_0_1; }
369
370 //referenceType=[Relation|QualifiedName]
371 public Assignment getReferenceTypeAssignment_1() { return cReferenceTypeAssignment_1; }
372
373 //[Relation|QualifiedName]
374 public CrossReference getReferenceTypeRelationCrossReference_1_0() { return cReferenceTypeRelationCrossReference_1_0; }
375
376 //QualifiedName
377 public RuleCall getReferenceTypeRelationQualifiedNameParserRuleCall_1_0_1() { return cReferenceTypeRelationQualifiedNameParserRuleCall_1_0_1; }
378
379 //("[" multiplicity=Multiplicity "]")?
380 public Group getGroup_2() { return cGroup_2; }
381
382 //"["
383 public Keyword getLeftSquareBracketKeyword_2_0() { return cLeftSquareBracketKeyword_2_0; }
384
385 //multiplicity=Multiplicity
386 public Assignment getMultiplicityAssignment_2_1() { return cMultiplicityAssignment_2_1; }
387
388 //Multiplicity
389 public RuleCall getMultiplicityMultiplicityParserRuleCall_2_1_0() { return cMultiplicityMultiplicityParserRuleCall_2_1_0; }
390
391 //"]"
392 public Keyword getRightSquareBracketKeyword_2_2() { return cRightSquareBracketKeyword_2_2; }
393
394 //name=Identifier
395 public Assignment getNameAssignment_3() { return cNameAssignment_3; }
396
397 //Identifier
398 public RuleCall getNameIdentifierParserRuleCall_3_0() { return cNameIdentifierParserRuleCall_3_0; }
399
400 //("opposite" opposite=[ReferenceDeclaration|QualifiedName])?
401 public Group getGroup_4() { return cGroup_4; }
402
403 //"opposite"
404 public Keyword getOppositeKeyword_4_0() { return cOppositeKeyword_4_0; }
405
406 //opposite=[ReferenceDeclaration|QualifiedName]
407 public Assignment getOppositeAssignment_4_1() { return cOppositeAssignment_4_1; }
408
409 //[ReferenceDeclaration|QualifiedName]
410 public CrossReference getOppositeReferenceDeclarationCrossReference_4_1_0() { return cOppositeReferenceDeclarationCrossReference_4_1_0; }
411
412 //QualifiedName
413 public RuleCall getOppositeReferenceDeclarationQualifiedNameParserRuleCall_4_1_0_1() { return cOppositeReferenceDeclarationQualifiedNameParserRuleCall_4_1_0_1; }
414 }
415 public class PredicateDefinitionElements extends AbstractParserRuleElementFinder {
416 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.PredicateDefinition");
417 private final Group cGroup = (Group)rule.eContents().get(1);
418 private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0);
419 private final Group cGroup_0_0 = (Group)cAlternatives_0.eContents().get(0);
420 private final Assignment cErrorAssignment_0_0_0 = (Assignment)cGroup_0_0.eContents().get(0);
421 private final Keyword cErrorErrorKeyword_0_0_0_0 = (Keyword)cErrorAssignment_0_0_0.eContents().get(0);
422 private final Keyword cPredKeyword_0_0_1 = (Keyword)cGroup_0_0.eContents().get(1);
423 private final Keyword cPredKeyword_0_1 = (Keyword)cAlternatives_0.eContents().get(1);
424 private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
425 private final RuleCall cNameIdentifierParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
426 private final Keyword cLeftParenthesisKeyword_2 = (Keyword)cGroup.eContents().get(2);
427 private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
428 private final Assignment cParametersAssignment_3_0 = (Assignment)cGroup_3.eContents().get(0);
429 private final RuleCall cParametersParameterParserRuleCall_3_0_0 = (RuleCall)cParametersAssignment_3_0.eContents().get(0);
430 private final Group cGroup_3_1 = (Group)cGroup_3.eContents().get(1);
431 private final Keyword cCommaKeyword_3_1_0 = (Keyword)cGroup_3_1.eContents().get(0);
432 private final Assignment cParametersAssignment_3_1_1 = (Assignment)cGroup_3_1.eContents().get(1);
433 private final RuleCall cParametersParameterParserRuleCall_3_1_1_0 = (RuleCall)cParametersAssignment_3_1_1.eContents().get(0);
434 private final Keyword cRightParenthesisKeyword_4 = (Keyword)cGroup.eContents().get(4);
435 private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
436 private final Keyword cColonHyphenMinusKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
437 private final Assignment cBodiesAssignment_5_1 = (Assignment)cGroup_5.eContents().get(1);
438 private final RuleCall cBodiesConjunctionParserRuleCall_5_1_0 = (RuleCall)cBodiesAssignment_5_1.eContents().get(0);
439 private final Group cGroup_5_2 = (Group)cGroup_5.eContents().get(2);
440 private final Keyword cSemicolonKeyword_5_2_0 = (Keyword)cGroup_5_2.eContents().get(0);
441 private final Assignment cBodiesAssignment_5_2_1 = (Assignment)cGroup_5_2.eContents().get(1);
442 private final RuleCall cBodiesConjunctionParserRuleCall_5_2_1_0 = (RuleCall)cBodiesAssignment_5_2_1.eContents().get(0);
443 private final Keyword cFullStopKeyword_6 = (Keyword)cGroup.eContents().get(6);
444
445 //PredicateDefinition:
446 // (error?="error" "pred"? | "pred")
447 // name=Identifier
448 // "(" (parameters+=Parameter ("," parameters+=Parameter)*)? ")"
449 // (":-" bodies+=Conjunction (";" bodies+=Conjunction)*)?
450 // ".";
451 @Override public ParserRule getRule() { return rule; }
452
453 //(error?="error" "pred"? | "pred")
454 //name=Identifier
455 //"(" (parameters+=Parameter ("," parameters+=Parameter)*)? ")"
456 //(":-" bodies+=Conjunction (";" bodies+=Conjunction)*)?
457 //"."
458 public Group getGroup() { return cGroup; }
459
460 //(error?="error" "pred"? | "pred")
461 public Alternatives getAlternatives_0() { return cAlternatives_0; }
462
463 //error?="error" "pred"?
464 public Group getGroup_0_0() { return cGroup_0_0; }
465
466 //error?="error"
467 public Assignment getErrorAssignment_0_0_0() { return cErrorAssignment_0_0_0; }
468
469 //"error"
470 public Keyword getErrorErrorKeyword_0_0_0_0() { return cErrorErrorKeyword_0_0_0_0; }
471
472 //"pred"?
473 public Keyword getPredKeyword_0_0_1() { return cPredKeyword_0_0_1; }
474
475 //"pred"
476 public Keyword getPredKeyword_0_1() { return cPredKeyword_0_1; }
477
478 //name=Identifier
479 public Assignment getNameAssignment_1() { return cNameAssignment_1; }
480
481 //Identifier
482 public RuleCall getNameIdentifierParserRuleCall_1_0() { return cNameIdentifierParserRuleCall_1_0; }
483
484 //"("
485 public Keyword getLeftParenthesisKeyword_2() { return cLeftParenthesisKeyword_2; }
486
487 //(parameters+=Parameter ("," parameters+=Parameter)*)?
488 public Group getGroup_3() { return cGroup_3; }
489
490 //parameters+=Parameter
491 public Assignment getParametersAssignment_3_0() { return cParametersAssignment_3_0; }
492
493 //Parameter
494 public RuleCall getParametersParameterParserRuleCall_3_0_0() { return cParametersParameterParserRuleCall_3_0_0; }
495
496 //("," parameters+=Parameter)*
497 public Group getGroup_3_1() { return cGroup_3_1; }
498
499 //","
500 public Keyword getCommaKeyword_3_1_0() { return cCommaKeyword_3_1_0; }
501
502 //parameters+=Parameter
503 public Assignment getParametersAssignment_3_1_1() { return cParametersAssignment_3_1_1; }
504
505 //Parameter
506 public RuleCall getParametersParameterParserRuleCall_3_1_1_0() { return cParametersParameterParserRuleCall_3_1_1_0; }
507
508 //")"
509 public Keyword getRightParenthesisKeyword_4() { return cRightParenthesisKeyword_4; }
510
511 //(":-" bodies+=Conjunction (";" bodies+=Conjunction)*)?
512 public Group getGroup_5() { return cGroup_5; }
513
514 //":-"
515 public Keyword getColonHyphenMinusKeyword_5_0() { return cColonHyphenMinusKeyword_5_0; }
516
517 //bodies+=Conjunction
518 public Assignment getBodiesAssignment_5_1() { return cBodiesAssignment_5_1; }
519
520 //Conjunction
521 public RuleCall getBodiesConjunctionParserRuleCall_5_1_0() { return cBodiesConjunctionParserRuleCall_5_1_0; }
522
523 //(";" bodies+=Conjunction)*
524 public Group getGroup_5_2() { return cGroup_5_2; }
525
526 //";"
527 public Keyword getSemicolonKeyword_5_2_0() { return cSemicolonKeyword_5_2_0; }
528
529 //bodies+=Conjunction
530 public Assignment getBodiesAssignment_5_2_1() { return cBodiesAssignment_5_2_1; }
531
532 //Conjunction
533 public RuleCall getBodiesConjunctionParserRuleCall_5_2_1_0() { return cBodiesConjunctionParserRuleCall_5_2_1_0; }
534
535 //"."
536 public Keyword getFullStopKeyword_6() { return cFullStopKeyword_6; }
537 }
538 public class ParameterElements extends AbstractParserRuleElementFinder {
539 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Parameter");
540 private final Group cGroup = (Group)rule.eContents().get(1);
541 private final Assignment cParameterTypeAssignment_0 = (Assignment)cGroup.eContents().get(0);
542 private final CrossReference cParameterTypeRelationCrossReference_0_0 = (CrossReference)cParameterTypeAssignment_0.eContents().get(0);
543 private final RuleCall cParameterTypeRelationQualifiedNameParserRuleCall_0_0_1 = (RuleCall)cParameterTypeRelationCrossReference_0_0.eContents().get(1);
544 private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
545 private final RuleCall cNameIdentifierParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
546
547 //Parameter:
548 // parameterType=[Relation|QualifiedName]? name=Identifier;
549 @Override public ParserRule getRule() { return rule; }
550
551 //parameterType=[Relation|QualifiedName]? name=Identifier
552 public Group getGroup() { return cGroup; }
553
554 //parameterType=[Relation|QualifiedName]?
555 public Assignment getParameterTypeAssignment_0() { return cParameterTypeAssignment_0; }
556
557 //[Relation|QualifiedName]
558 public CrossReference getParameterTypeRelationCrossReference_0_0() { return cParameterTypeRelationCrossReference_0_0; }
559
560 //QualifiedName
561 public RuleCall getParameterTypeRelationQualifiedNameParserRuleCall_0_0_1() { return cParameterTypeRelationQualifiedNameParserRuleCall_0_0_1; }
562
563 //name=Identifier
564 public Assignment getNameAssignment_1() { return cNameAssignment_1; }
565
566 //Identifier
567 public RuleCall getNameIdentifierParserRuleCall_1_0() { return cNameIdentifierParserRuleCall_1_0; }
568 }
569 public class ConjunctionElements extends AbstractParserRuleElementFinder {
570 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Conjunction");
571 private final Group cGroup = (Group)rule.eContents().get(1);
572 private final Assignment cLiteralsAssignment_0 = (Assignment)cGroup.eContents().get(0);
573 private final RuleCall cLiteralsLiteralParserRuleCall_0_0 = (RuleCall)cLiteralsAssignment_0.eContents().get(0);
574 private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
575 private final Keyword cCommaKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
576 private final Assignment cLiteralsAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
577 private final RuleCall cLiteralsLiteralParserRuleCall_1_1_0 = (RuleCall)cLiteralsAssignment_1_1.eContents().get(0);
578
579 //Conjunction:
580 // literals+=Literal ("," literals+=Literal)*;
581 @Override public ParserRule getRule() { return rule; }
582
583 //literals+=Literal ("," literals+=Literal)*
584 public Group getGroup() { return cGroup; }
585
586 //literals+=Literal
587 public Assignment getLiteralsAssignment_0() { return cLiteralsAssignment_0; }
588
589 //Literal
590 public RuleCall getLiteralsLiteralParserRuleCall_0_0() { return cLiteralsLiteralParserRuleCall_0_0; }
591
592 //("," literals+=Literal)*
593 public Group getGroup_1() { return cGroup_1; }
594
595 //","
596 public Keyword getCommaKeyword_1_0() { return cCommaKeyword_1_0; }
597
598 //literals+=Literal
599 public Assignment getLiteralsAssignment_1_1() { return cLiteralsAssignment_1_1; }
600
601 //Literal
602 public RuleCall getLiteralsLiteralParserRuleCall_1_1_0() { return cLiteralsLiteralParserRuleCall_1_1_0; }
603 }
604 public class LiteralElements extends AbstractParserRuleElementFinder {
605 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Literal");
606 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
607 private final RuleCall cAtomParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
608 private final RuleCall cNegativeLiteralParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
609
610 //Literal:
611 // Atom | NegativeLiteral;
612 @Override public ParserRule getRule() { return rule; }
613
614 //Atom | NegativeLiteral
615 public Alternatives getAlternatives() { return cAlternatives; }
616
617 //Atom
618 public RuleCall getAtomParserRuleCall_0() { return cAtomParserRuleCall_0; }
619
620 //NegativeLiteral
621 public RuleCall getNegativeLiteralParserRuleCall_1() { return cNegativeLiteralParserRuleCall_1; }
622 }
623 public class NegativeLiteralElements extends AbstractParserRuleElementFinder {
624 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.NegativeLiteral");
625 private final Group cGroup = (Group)rule.eContents().get(1);
626 private final Keyword cExclamationMarkKeyword_0 = (Keyword)cGroup.eContents().get(0);
627 private final Assignment cAtomAssignment_1 = (Assignment)cGroup.eContents().get(1);
628 private final RuleCall cAtomAtomParserRuleCall_1_0 = (RuleCall)cAtomAssignment_1.eContents().get(0);
629
630 //NegativeLiteral:
631 // "!" atom=Atom;
632 @Override public ParserRule getRule() { return rule; }
633
634 //"!" atom=Atom
635 public Group getGroup() { return cGroup; }
636
637 //"!"
638 public Keyword getExclamationMarkKeyword_0() { return cExclamationMarkKeyword_0; }
639
640 //atom=Atom
641 public Assignment getAtomAssignment_1() { return cAtomAssignment_1; }
642
643 //Atom
644 public RuleCall getAtomAtomParserRuleCall_1_0() { return cAtomAtomParserRuleCall_1_0; }
645 }
646 public class AtomElements extends AbstractParserRuleElementFinder {
647 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Atom");
648 private final Group cGroup = (Group)rule.eContents().get(1);
649 private final Assignment cRelationAssignment_0 = (Assignment)cGroup.eContents().get(0);
650 private final CrossReference cRelationRelationCrossReference_0_0 = (CrossReference)cRelationAssignment_0.eContents().get(0);
651 private final RuleCall cRelationRelationQualifiedNameParserRuleCall_0_0_1 = (RuleCall)cRelationRelationCrossReference_0_0.eContents().get(1);
652 private final Assignment cTransitiveClosureAssignment_1 = (Assignment)cGroup.eContents().get(1);
653 private final Keyword cTransitiveClosurePlusSignKeyword_1_0 = (Keyword)cTransitiveClosureAssignment_1.eContents().get(0);
654 private final Keyword cLeftParenthesisKeyword_2 = (Keyword)cGroup.eContents().get(2);
655 private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
656 private final Assignment cArgumentsAssignment_3_0 = (Assignment)cGroup_3.eContents().get(0);
657 private final RuleCall cArgumentsArgumentParserRuleCall_3_0_0 = (RuleCall)cArgumentsAssignment_3_0.eContents().get(0);
658 private final Group cGroup_3_1 = (Group)cGroup_3.eContents().get(1);
659 private final Keyword cCommaKeyword_3_1_0 = (Keyword)cGroup_3_1.eContents().get(0);
660 private final Assignment cArgumentsAssignment_3_1_1 = (Assignment)cGroup_3_1.eContents().get(1);
661 private final RuleCall cArgumentsArgumentParserRuleCall_3_1_1_0 = (RuleCall)cArgumentsAssignment_3_1_1.eContents().get(0);
662 private final Keyword cRightParenthesisKeyword_4 = (Keyword)cGroup.eContents().get(4);
663
664 //Atom:
665 // relation=[Relation|QualifiedName]
666 // transitiveClosure?="+"?
667 // "(" (arguments+=Argument ("," arguments+=Argument)*)? ")";
668 @Override public ParserRule getRule() { return rule; }
669
670 //relation=[Relation|QualifiedName]
671 //transitiveClosure?="+"?
672 //"(" (arguments+=Argument ("," arguments+=Argument)*)? ")"
673 public Group getGroup() { return cGroup; }
674
675 //relation=[Relation|QualifiedName]
676 public Assignment getRelationAssignment_0() { return cRelationAssignment_0; }
677
678 //[Relation|QualifiedName]
679 public CrossReference getRelationRelationCrossReference_0_0() { return cRelationRelationCrossReference_0_0; }
680
681 //QualifiedName
682 public RuleCall getRelationRelationQualifiedNameParserRuleCall_0_0_1() { return cRelationRelationQualifiedNameParserRuleCall_0_0_1; }
683
684 //transitiveClosure?="+"?
685 public Assignment getTransitiveClosureAssignment_1() { return cTransitiveClosureAssignment_1; }
686
687 //"+"
688 public Keyword getTransitiveClosurePlusSignKeyword_1_0() { return cTransitiveClosurePlusSignKeyword_1_0; }
689
690 //"("
691 public Keyword getLeftParenthesisKeyword_2() { return cLeftParenthesisKeyword_2; }
692
693 //(arguments+=Argument ("," arguments+=Argument)*)?
694 public Group getGroup_3() { return cGroup_3; }
695
696 //arguments+=Argument
697 public Assignment getArgumentsAssignment_3_0() { return cArgumentsAssignment_3_0; }
698
699 //Argument
700 public RuleCall getArgumentsArgumentParserRuleCall_3_0_0() { return cArgumentsArgumentParserRuleCall_3_0_0; }
701
702 //("," arguments+=Argument)*
703 public Group getGroup_3_1() { return cGroup_3_1; }
704
705 //","
706 public Keyword getCommaKeyword_3_1_0() { return cCommaKeyword_3_1_0; }
707
708 //arguments+=Argument
709 public Assignment getArgumentsAssignment_3_1_1() { return cArgumentsAssignment_3_1_1; }
710
711 //Argument
712 public RuleCall getArgumentsArgumentParserRuleCall_3_1_1_0() { return cArgumentsArgumentParserRuleCall_3_1_1_0; }
713
714 //")"
715 public Keyword getRightParenthesisKeyword_4() { return cRightParenthesisKeyword_4; }
716 }
717 public class ArgumentElements extends AbstractParserRuleElementFinder {
718 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Argument");
719 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
720 private final RuleCall cVariableOrNodeArgumentParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
721 private final RuleCall cConstantArgumentParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
722
723 //Argument:
724 // VariableOrNodeArgument | ConstantArgument;
725 @Override public ParserRule getRule() { return rule; }
726
727 //VariableOrNodeArgument | ConstantArgument
728 public Alternatives getAlternatives() { return cAlternatives; }
729
730 //VariableOrNodeArgument
731 public RuleCall getVariableOrNodeArgumentParserRuleCall_0() { return cVariableOrNodeArgumentParserRuleCall_0; }
732
733 //ConstantArgument
734 public RuleCall getConstantArgumentParserRuleCall_1() { return cConstantArgumentParserRuleCall_1; }
735 }
736 public class VariableOrNodeArgumentElements extends AbstractParserRuleElementFinder {
737 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.VariableOrNodeArgument");
738 private final Assignment cVariableOrNodeAssignment = (Assignment)rule.eContents().get(1);
739 private final CrossReference cVariableOrNodeVariableOrNodeCrossReference_0 = (CrossReference)cVariableOrNodeAssignment.eContents().get(0);
740 private final RuleCall cVariableOrNodeVariableOrNodeQualifiedNameParserRuleCall_0_1 = (RuleCall)cVariableOrNodeVariableOrNodeCrossReference_0.eContents().get(1);
741
742 //VariableOrNodeArgument:
743 // variableOrNode=[VariableOrNode|QualifiedName];
744 @Override public ParserRule getRule() { return rule; }
745
746 //variableOrNode=[VariableOrNode|QualifiedName]
747 public Assignment getVariableOrNodeAssignment() { return cVariableOrNodeAssignment; }
748
749 //[VariableOrNode|QualifiedName]
750 public CrossReference getVariableOrNodeVariableOrNodeCrossReference_0() { return cVariableOrNodeVariableOrNodeCrossReference_0; }
751
752 //QualifiedName
753 public RuleCall getVariableOrNodeVariableOrNodeQualifiedNameParserRuleCall_0_1() { return cVariableOrNodeVariableOrNodeQualifiedNameParserRuleCall_0_1; }
754 }
755 public class ConstantArgumentElements extends AbstractParserRuleElementFinder {
756 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.ConstantArgument");
757 private final Assignment cConstantAssignment = (Assignment)rule.eContents().get(1);
758 private final RuleCall cConstantConstantParserRuleCall_0 = (RuleCall)cConstantAssignment.eContents().get(0);
759
760 //ConstantArgument:
761 // constant=Constant;
762 @Override public ParserRule getRule() { return rule; }
763
764 //constant=Constant
765 public Assignment getConstantAssignment() { return cConstantAssignment; }
766
767 //Constant
768 public RuleCall getConstantConstantParserRuleCall_0() { return cConstantConstantParserRuleCall_0; }
769 }
770 public class AssertionElements extends AbstractParserRuleElementFinder {
771 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Assertion");
772 private final Group cGroup = (Group)rule.eContents().get(1);
773 private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0);
774 private final Group cGroup_0_0 = (Group)cAlternatives_0.eContents().get(0);
775 private final Assignment cRelationAssignment_0_0_0 = (Assignment)cGroup_0_0.eContents().get(0);
776 private final CrossReference cRelationRelationCrossReference_0_0_0_0 = (CrossReference)cRelationAssignment_0_0_0.eContents().get(0);
777 private final RuleCall cRelationRelationQualifiedNameParserRuleCall_0_0_0_0_1 = (RuleCall)cRelationRelationCrossReference_0_0_0_0.eContents().get(1);
778 private final Keyword cLeftParenthesisKeyword_0_0_1 = (Keyword)cGroup_0_0.eContents().get(1);
779 private final Group cGroup_0_0_2 = (Group)cGroup_0_0.eContents().get(2);
780 private final Assignment cArgumentsAssignment_0_0_2_0 = (Assignment)cGroup_0_0_2.eContents().get(0);
781 private final RuleCall cArgumentsAssertionArgumentParserRuleCall_0_0_2_0_0 = (RuleCall)cArgumentsAssignment_0_0_2_0.eContents().get(0);
782 private final Group cGroup_0_0_2_1 = (Group)cGroup_0_0_2.eContents().get(1);
783 private final Keyword cCommaKeyword_0_0_2_1_0 = (Keyword)cGroup_0_0_2_1.eContents().get(0);
784 private final Assignment cArgumentsAssignment_0_0_2_1_1 = (Assignment)cGroup_0_0_2_1.eContents().get(1);
785 private final RuleCall cArgumentsAssertionArgumentParserRuleCall_0_0_2_1_1_0 = (RuleCall)cArgumentsAssignment_0_0_2_1_1.eContents().get(0);
786 private final Keyword cRightParenthesisKeyword_0_0_3 = (Keyword)cGroup_0_0.eContents().get(3);
787 private final Keyword cColonKeyword_0_0_4 = (Keyword)cGroup_0_0.eContents().get(4);
788 private final Assignment cValueAssignment_0_0_5 = (Assignment)cGroup_0_0.eContents().get(5);
789 private final RuleCall cValueLogicValueEnumRuleCall_0_0_5_0 = (RuleCall)cValueAssignment_0_0_5.eContents().get(0);
790 private final Group cGroup_0_1 = (Group)cAlternatives_0.eContents().get(1);
791 private final Assignment cValueAssignment_0_1_0 = (Assignment)cGroup_0_1.eContents().get(0);
792 private final RuleCall cValueShortLogicValueEnumRuleCall_0_1_0_0 = (RuleCall)cValueAssignment_0_1_0.eContents().get(0);
793 private final Assignment cRelationAssignment_0_1_1 = (Assignment)cGroup_0_1.eContents().get(1);
794 private final CrossReference cRelationRelationCrossReference_0_1_1_0 = (CrossReference)cRelationAssignment_0_1_1.eContents().get(0);
795 private final RuleCall cRelationRelationQualifiedNameParserRuleCall_0_1_1_0_1 = (RuleCall)cRelationRelationCrossReference_0_1_1_0.eContents().get(1);
796 private final Keyword cLeftParenthesisKeyword_0_1_2 = (Keyword)cGroup_0_1.eContents().get(2);
797 private final Group cGroup_0_1_3 = (Group)cGroup_0_1.eContents().get(3);
798 private final Assignment cArgumentsAssignment_0_1_3_0 = (Assignment)cGroup_0_1_3.eContents().get(0);
799 private final RuleCall cArgumentsAssertionArgumentParserRuleCall_0_1_3_0_0 = (RuleCall)cArgumentsAssignment_0_1_3_0.eContents().get(0);
800 private final Group cGroup_0_1_3_1 = (Group)cGroup_0_1_3.eContents().get(1);
801 private final Keyword cCommaKeyword_0_1_3_1_0 = (Keyword)cGroup_0_1_3_1.eContents().get(0);
802 private final Assignment cArgumentsAssignment_0_1_3_1_1 = (Assignment)cGroup_0_1_3_1.eContents().get(1);
803 private final RuleCall cArgumentsAssertionArgumentParserRuleCall_0_1_3_1_1_0 = (RuleCall)cArgumentsAssignment_0_1_3_1_1.eContents().get(0);
804 private final Keyword cRightParenthesisKeyword_0_1_4 = (Keyword)cGroup_0_1.eContents().get(4);
805 private final Keyword cFullStopKeyword_1 = (Keyword)cGroup.eContents().get(1);
806
807 //Assertion:
808 // (relation=[Relation|QualifiedName]
809 // "(" (arguments+=AssertionArgument ("," arguments+=AssertionArgument)*)? ")"
810 // ":" value=LogicValue |
811 // value=ShortLogicValue?
812 // relation=[Relation|QualifiedName]
813 // "(" (arguments+=AssertionArgument ("," arguments+=AssertionArgument)*)? ")")
814 // ".";
815 @Override public ParserRule getRule() { return rule; }
816
817 //(relation=[Relation|QualifiedName]
818 //"(" (arguments+=AssertionArgument ("," arguments+=AssertionArgument)*)? ")"
819 //":" value=LogicValue |
820 //value=ShortLogicValue?
821 //relation=[Relation|QualifiedName]
822 //"(" (arguments+=AssertionArgument ("," arguments+=AssertionArgument)*)? ")")
823 //"."
824 public Group getGroup() { return cGroup; }
825
826 //(relation=[Relation|QualifiedName]
827 //"(" (arguments+=AssertionArgument ("," arguments+=AssertionArgument)*)? ")"
828 //":" value=LogicValue |
829 //value=ShortLogicValue?
830 //relation=[Relation|QualifiedName]
831 //"(" (arguments+=AssertionArgument ("," arguments+=AssertionArgument)*)? ")")
832 public Alternatives getAlternatives_0() { return cAlternatives_0; }
833
834 //relation=[Relation|QualifiedName]
835 // "(" (arguments+=AssertionArgument ("," arguments+=AssertionArgument)*)? ")"
836 // ":" value=LogicValue
837 public Group getGroup_0_0() { return cGroup_0_0; }
838
839 //relation=[Relation|QualifiedName]
840 public Assignment getRelationAssignment_0_0_0() { return cRelationAssignment_0_0_0; }
841
842 //[Relation|QualifiedName]
843 public CrossReference getRelationRelationCrossReference_0_0_0_0() { return cRelationRelationCrossReference_0_0_0_0; }
844
845 //QualifiedName
846 public RuleCall getRelationRelationQualifiedNameParserRuleCall_0_0_0_0_1() { return cRelationRelationQualifiedNameParserRuleCall_0_0_0_0_1; }
847
848 //"("
849 public Keyword getLeftParenthesisKeyword_0_0_1() { return cLeftParenthesisKeyword_0_0_1; }
850
851 //(arguments+=AssertionArgument ("," arguments+=AssertionArgument)*)?
852 public Group getGroup_0_0_2() { return cGroup_0_0_2; }
853
854 //arguments+=AssertionArgument
855 public Assignment getArgumentsAssignment_0_0_2_0() { return cArgumentsAssignment_0_0_2_0; }
856
857 //AssertionArgument
858 public RuleCall getArgumentsAssertionArgumentParserRuleCall_0_0_2_0_0() { return cArgumentsAssertionArgumentParserRuleCall_0_0_2_0_0; }
859
860 //("," arguments+=AssertionArgument)*
861 public Group getGroup_0_0_2_1() { return cGroup_0_0_2_1; }
862
863 //","
864 public Keyword getCommaKeyword_0_0_2_1_0() { return cCommaKeyword_0_0_2_1_0; }
865
866 //arguments+=AssertionArgument
867 public Assignment getArgumentsAssignment_0_0_2_1_1() { return cArgumentsAssignment_0_0_2_1_1; }
868
869 //AssertionArgument
870 public RuleCall getArgumentsAssertionArgumentParserRuleCall_0_0_2_1_1_0() { return cArgumentsAssertionArgumentParserRuleCall_0_0_2_1_1_0; }
871
872 //")"
873 public Keyword getRightParenthesisKeyword_0_0_3() { return cRightParenthesisKeyword_0_0_3; }
874
875 //":"
876 public Keyword getColonKeyword_0_0_4() { return cColonKeyword_0_0_4; }
877
878 //value=LogicValue
879 public Assignment getValueAssignment_0_0_5() { return cValueAssignment_0_0_5; }
880
881 //LogicValue
882 public RuleCall getValueLogicValueEnumRuleCall_0_0_5_0() { return cValueLogicValueEnumRuleCall_0_0_5_0; }
883
884 //value=ShortLogicValue?
885 //relation=[Relation|QualifiedName]
886 //"(" (arguments+=AssertionArgument ("," arguments+=AssertionArgument)*)? ")"
887 public Group getGroup_0_1() { return cGroup_0_1; }
888
889 //value=ShortLogicValue?
890 public Assignment getValueAssignment_0_1_0() { return cValueAssignment_0_1_0; }
891
892 //ShortLogicValue
893 public RuleCall getValueShortLogicValueEnumRuleCall_0_1_0_0() { return cValueShortLogicValueEnumRuleCall_0_1_0_0; }
894
895 //relation=[Relation|QualifiedName]
896 public Assignment getRelationAssignment_0_1_1() { return cRelationAssignment_0_1_1; }
897
898 //[Relation|QualifiedName]
899 public CrossReference getRelationRelationCrossReference_0_1_1_0() { return cRelationRelationCrossReference_0_1_1_0; }
900
901 //QualifiedName
902 public RuleCall getRelationRelationQualifiedNameParserRuleCall_0_1_1_0_1() { return cRelationRelationQualifiedNameParserRuleCall_0_1_1_0_1; }
903
904 //"("
905 public Keyword getLeftParenthesisKeyword_0_1_2() { return cLeftParenthesisKeyword_0_1_2; }
906
907 //(arguments+=AssertionArgument ("," arguments+=AssertionArgument)*)?
908 public Group getGroup_0_1_3() { return cGroup_0_1_3; }
909
910 //arguments+=AssertionArgument
911 public Assignment getArgumentsAssignment_0_1_3_0() { return cArgumentsAssignment_0_1_3_0; }
912
913 //AssertionArgument
914 public RuleCall getArgumentsAssertionArgumentParserRuleCall_0_1_3_0_0() { return cArgumentsAssertionArgumentParserRuleCall_0_1_3_0_0; }
915
916 //("," arguments+=AssertionArgument)*
917 public Group getGroup_0_1_3_1() { return cGroup_0_1_3_1; }
918
919 //","
920 public Keyword getCommaKeyword_0_1_3_1_0() { return cCommaKeyword_0_1_3_1_0; }
921
922 //arguments+=AssertionArgument
923 public Assignment getArgumentsAssignment_0_1_3_1_1() { return cArgumentsAssignment_0_1_3_1_1; }
924
925 //AssertionArgument
926 public RuleCall getArgumentsAssertionArgumentParserRuleCall_0_1_3_1_1_0() { return cArgumentsAssertionArgumentParserRuleCall_0_1_3_1_1_0; }
927
928 //")"
929 public Keyword getRightParenthesisKeyword_0_1_4() { return cRightParenthesisKeyword_0_1_4; }
930
931 //"."
932 public Keyword getFullStopKeyword_1() { return cFullStopKeyword_1; }
933 }
934 public class AssertionArgumentElements extends AbstractParserRuleElementFinder {
935 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.AssertionArgument");
936 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
937 private final RuleCall cNodeAssertionArgumentParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
938 private final RuleCall cConstantAssertionArgumentParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
939
940 //AssertionArgument:
941 // NodeAssertionArgument | ConstantAssertionArgument;
942 @Override public ParserRule getRule() { return rule; }
943
944 //NodeAssertionArgument | ConstantAssertionArgument
945 public Alternatives getAlternatives() { return cAlternatives; }
946
947 //NodeAssertionArgument
948 public RuleCall getNodeAssertionArgumentParserRuleCall_0() { return cNodeAssertionArgumentParserRuleCall_0; }
949
950 //ConstantAssertionArgument
951 public RuleCall getConstantAssertionArgumentParserRuleCall_1() { return cConstantAssertionArgumentParserRuleCall_1; }
952 }
953 public class NodeAssertionArgumentElements extends AbstractParserRuleElementFinder {
954 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.NodeAssertionArgument");
955 private final Assignment cNodeAssignment = (Assignment)rule.eContents().get(1);
956 private final CrossReference cNodeNodeCrossReference_0 = (CrossReference)cNodeAssignment.eContents().get(0);
957 private final RuleCall cNodeNodeQualifiedNameParserRuleCall_0_1 = (RuleCall)cNodeNodeCrossReference_0.eContents().get(1);
958
959 //NodeAssertionArgument:
960 // node=[Node|QualifiedName];
961 @Override public ParserRule getRule() { return rule; }
962
963 //node=[Node|QualifiedName]
964 public Assignment getNodeAssignment() { return cNodeAssignment; }
965
966 //[Node|QualifiedName]
967 public CrossReference getNodeNodeCrossReference_0() { return cNodeNodeCrossReference_0; }
968
969 //QualifiedName
970 public RuleCall getNodeNodeQualifiedNameParserRuleCall_0_1() { return cNodeNodeQualifiedNameParserRuleCall_0_1; }
971 }
972 public class ConstantAssertionArgumentElements extends AbstractParserRuleElementFinder {
973 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.ConstantAssertionArgument");
974 private final Assignment cConstantAssignment = (Assignment)rule.eContents().get(1);
975 private final RuleCall cConstantConstantParserRuleCall_0 = (RuleCall)cConstantAssignment.eContents().get(0);
976
977 //ConstantAssertionArgument:
978 // constant=Constant;
979 @Override public ParserRule getRule() { return rule; }
980
981 //constant=Constant
982 public Assignment getConstantAssignment() { return cConstantAssignment; }
983
984 //Constant
985 public RuleCall getConstantConstantParserRuleCall_0() { return cConstantConstantParserRuleCall_0; }
986 }
987 public class NodeValueAssertionElements extends AbstractParserRuleElementFinder {
988 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.NodeValueAssertion");
989 private final Group cGroup = (Group)rule.eContents().get(1);
990 private final Assignment cNodeAssignment_0 = (Assignment)cGroup.eContents().get(0);
991 private final CrossReference cNodeNodeCrossReference_0_0 = (CrossReference)cNodeAssignment_0.eContents().get(0);
992 private final RuleCall cNodeNodeQualifiedNameParserRuleCall_0_0_1 = (RuleCall)cNodeNodeCrossReference_0_0.eContents().get(1);
993 private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1);
994 private final Assignment cValueAssignment_2 = (Assignment)cGroup.eContents().get(2);
995 private final RuleCall cValueConstantParserRuleCall_2_0 = (RuleCall)cValueAssignment_2.eContents().get(0);
996 private final Keyword cFullStopKeyword_3 = (Keyword)cGroup.eContents().get(3);
997
998 //NodeValueAssertion:
999 // node=[Node|QualifiedName] ":" value=Constant ".";
1000 @Override public ParserRule getRule() { return rule; }
1001
1002 //node=[Node|QualifiedName] ":" value=Constant "."
1003 public Group getGroup() { return cGroup; }
1004
1005 //node=[Node|QualifiedName]
1006 public Assignment getNodeAssignment_0() { return cNodeAssignment_0; }
1007
1008 //[Node|QualifiedName]
1009 public CrossReference getNodeNodeCrossReference_0_0() { return cNodeNodeCrossReference_0_0; }
1010
1011 //QualifiedName
1012 public RuleCall getNodeNodeQualifiedNameParserRuleCall_0_0_1() { return cNodeNodeQualifiedNameParserRuleCall_0_0_1; }
1013
1014 //":"
1015 public Keyword getColonKeyword_1() { return cColonKeyword_1; }
1016
1017 //value=Constant
1018 public Assignment getValueAssignment_2() { return cValueAssignment_2; }
1019
1020 //Constant
1021 public RuleCall getValueConstantParserRuleCall_2_0() { return cValueConstantParserRuleCall_2_0; }
1022
1023 //"."
1024 public Keyword getFullStopKeyword_3() { return cFullStopKeyword_3; }
1025 }
1026 public class ConstantElements extends AbstractParserRuleElementFinder {
1027 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Constant");
1028 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
1029 private final RuleCall cRealConstantParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
1030 private final RuleCall cIntConstantParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
1031 private final RuleCall cStringConstantParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
1032
1033 //Constant:
1034 // RealConstant | IntConstant | StringConstant;
1035 @Override public ParserRule getRule() { return rule; }
1036
1037 //RealConstant | IntConstant | StringConstant
1038 public Alternatives getAlternatives() { return cAlternatives; }
1039
1040 //RealConstant
1041 public RuleCall getRealConstantParserRuleCall_0() { return cRealConstantParserRuleCall_0; }
1042
1043 //IntConstant
1044 public RuleCall getIntConstantParserRuleCall_1() { return cIntConstantParserRuleCall_1; }
1045
1046 //StringConstant
1047 public RuleCall getStringConstantParserRuleCall_2() { return cStringConstantParserRuleCall_2; }
1048 }
1049 public class IntConstantElements extends AbstractParserRuleElementFinder {
1050 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.IntConstant");
1051 private final Assignment cIntValueAssignment = (Assignment)rule.eContents().get(1);
1052 private final RuleCall cIntValueIntegerParserRuleCall_0 = (RuleCall)cIntValueAssignment.eContents().get(0);
1053
1054 //IntConstant:
1055 // intValue=Integer;
1056 @Override public ParserRule getRule() { return rule; }
1057
1058 //intValue=Integer
1059 public Assignment getIntValueAssignment() { return cIntValueAssignment; }
1060
1061 //Integer
1062 public RuleCall getIntValueIntegerParserRuleCall_0() { return cIntValueIntegerParserRuleCall_0; }
1063 }
1064 public class RealConstantElements extends AbstractParserRuleElementFinder {
1065 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.RealConstant");
1066 private final Assignment cRealValueAssignment = (Assignment)rule.eContents().get(1);
1067 private final RuleCall cRealValueRealParserRuleCall_0 = (RuleCall)cRealValueAssignment.eContents().get(0);
1068
1069 //RealConstant:
1070 // realValue=Real;
1071 @Override public ParserRule getRule() { return rule; }
1072
1073 //realValue=Real
1074 public Assignment getRealValueAssignment() { return cRealValueAssignment; }
1075
1076 //Real
1077 public RuleCall getRealValueRealParserRuleCall_0() { return cRealValueRealParserRuleCall_0; }
1078 }
1079 public class StringConstantElements extends AbstractParserRuleElementFinder {
1080 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.StringConstant");
1081 private final Assignment cStringValueAssignment = (Assignment)rule.eContents().get(1);
1082 private final RuleCall cStringValueSTRINGTerminalRuleCall_0 = (RuleCall)cStringValueAssignment.eContents().get(0);
1083
1084 //StringConstant:
1085 // stringValue=STRING;
1086 @Override public ParserRule getRule() { return rule; }
1087
1088 //stringValue=STRING
1089 public Assignment getStringValueAssignment() { return cStringValueAssignment; }
1090
1091 //STRING
1092 public RuleCall getStringValueSTRINGTerminalRuleCall_0() { return cStringValueSTRINGTerminalRuleCall_0; }
1093 }
1094 public class ScopeDeclarationElements extends AbstractParserRuleElementFinder {
1095 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.ScopeDeclaration");
1096 private final Group cGroup = (Group)rule.eContents().get(1);
1097 private final Keyword cScopeKeyword_0 = (Keyword)cGroup.eContents().get(0);
1098 private final Assignment cTypeScopesAssignment_1 = (Assignment)cGroup.eContents().get(1);
1099 private final RuleCall cTypeScopesTypeScopeParserRuleCall_1_0 = (RuleCall)cTypeScopesAssignment_1.eContents().get(0);
1100 private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
1101 private final Keyword cCommaKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
1102 private final Assignment cTypeScopesAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
1103 private final RuleCall cTypeScopesTypeScopeParserRuleCall_2_1_0 = (RuleCall)cTypeScopesAssignment_2_1.eContents().get(0);
1104 private final Keyword cFullStopKeyword_3 = (Keyword)cGroup.eContents().get(3);
1105
1106 //ScopeDeclaration:
1107 // "scope" typeScopes+=TypeScope ("," typeScopes+=TypeScope)* ".";
1108 @Override public ParserRule getRule() { return rule; }
1109
1110 //"scope" typeScopes+=TypeScope ("," typeScopes+=TypeScope)* "."
1111 public Group getGroup() { return cGroup; }
1112
1113 //"scope"
1114 public Keyword getScopeKeyword_0() { return cScopeKeyword_0; }
1115
1116 //typeScopes+=TypeScope
1117 public Assignment getTypeScopesAssignment_1() { return cTypeScopesAssignment_1; }
1118
1119 //TypeScope
1120 public RuleCall getTypeScopesTypeScopeParserRuleCall_1_0() { return cTypeScopesTypeScopeParserRuleCall_1_0; }
1121
1122 //("," typeScopes+=TypeScope)*
1123 public Group getGroup_2() { return cGroup_2; }
1124
1125 //","
1126 public Keyword getCommaKeyword_2_0() { return cCommaKeyword_2_0; }
1127
1128 //typeScopes+=TypeScope
1129 public Assignment getTypeScopesAssignment_2_1() { return cTypeScopesAssignment_2_1; }
1130
1131 //TypeScope
1132 public RuleCall getTypeScopesTypeScopeParserRuleCall_2_1_0() { return cTypeScopesTypeScopeParserRuleCall_2_1_0; }
1133
1134 //"."
1135 public Keyword getFullStopKeyword_3() { return cFullStopKeyword_3; }
1136 }
1137 public class TypeScopeElements extends AbstractParserRuleElementFinder {
1138 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.TypeScope");
1139 private final Group cGroup = (Group)rule.eContents().get(1);
1140 private final Assignment cTargetTypeAssignment_0 = (Assignment)cGroup.eContents().get(0);
1141 private final CrossReference cTargetTypeClassDeclarationCrossReference_0_0 = (CrossReference)cTargetTypeAssignment_0.eContents().get(0);
1142 private final RuleCall cTargetTypeClassDeclarationIDTerminalRuleCall_0_0_1 = (RuleCall)cTargetTypeClassDeclarationCrossReference_0_0.eContents().get(1);
1143 private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
1144 private final Assignment cIncrementAssignment_1_0 = (Assignment)cAlternatives_1.eContents().get(0);
1145 private final Keyword cIncrementPlusSignEqualsSignKeyword_1_0_0 = (Keyword)cIncrementAssignment_1_0.eContents().get(0);
1146 private final Keyword cEqualsSignKeyword_1_1 = (Keyword)cAlternatives_1.eContents().get(1);
1147 private final Assignment cMultiplicityAssignment_2 = (Assignment)cGroup.eContents().get(2);
1148 private final RuleCall cMultiplicityDefiniteMultiplicityParserRuleCall_2_0 = (RuleCall)cMultiplicityAssignment_2.eContents().get(0);
1149
1150 //TypeScope:
1151 // targetType=[ClassDeclaration]
1152 // (increment?="+=" | "=")
1153 // multiplicity=DefiniteMultiplicity;
1154 @Override public ParserRule getRule() { return rule; }
1155
1156 //targetType=[ClassDeclaration]
1157 //(increment?="+=" | "=")
1158 //multiplicity=DefiniteMultiplicity
1159 public Group getGroup() { return cGroup; }
1160
1161 //targetType=[ClassDeclaration]
1162 public Assignment getTargetTypeAssignment_0() { return cTargetTypeAssignment_0; }
1163
1164 //[ClassDeclaration]
1165 public CrossReference getTargetTypeClassDeclarationCrossReference_0_0() { return cTargetTypeClassDeclarationCrossReference_0_0; }
1166
1167 //ID
1168 public RuleCall getTargetTypeClassDeclarationIDTerminalRuleCall_0_0_1() { return cTargetTypeClassDeclarationIDTerminalRuleCall_0_0_1; }
1169
1170 //(increment?="+=" | "=")
1171 public Alternatives getAlternatives_1() { return cAlternatives_1; }
1172
1173 //increment?="+="
1174 public Assignment getIncrementAssignment_1_0() { return cIncrementAssignment_1_0; }
1175
1176 //"+="
1177 public Keyword getIncrementPlusSignEqualsSignKeyword_1_0_0() { return cIncrementPlusSignEqualsSignKeyword_1_0_0; }
1178
1179 //"="
1180 public Keyword getEqualsSignKeyword_1_1() { return cEqualsSignKeyword_1_1; }
1181
1182 //multiplicity=DefiniteMultiplicity
1183 public Assignment getMultiplicityAssignment_2() { return cMultiplicityAssignment_2; }
1184
1185 //DefiniteMultiplicity
1186 public RuleCall getMultiplicityDefiniteMultiplicityParserRuleCall_2_0() { return cMultiplicityDefiniteMultiplicityParserRuleCall_2_0; }
1187 }
1188 public class MultiplicityElements extends AbstractParserRuleElementFinder {
1189 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Multiplicity");
1190 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
1191 private final RuleCall cUnboundedMultiplicityParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
1192 private final RuleCall cDefiniteMultiplicityParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
1193
1194 //Multiplicity:
1195 // UnboundedMultiplicity | DefiniteMultiplicity;
1196 @Override public ParserRule getRule() { return rule; }
1197
1198 //UnboundedMultiplicity | DefiniteMultiplicity
1199 public Alternatives getAlternatives() { return cAlternatives; }
1200
1201 //UnboundedMultiplicity
1202 public RuleCall getUnboundedMultiplicityParserRuleCall_0() { return cUnboundedMultiplicityParserRuleCall_0; }
1203
1204 //DefiniteMultiplicity
1205 public RuleCall getDefiniteMultiplicityParserRuleCall_1() { return cDefiniteMultiplicityParserRuleCall_1; }
1206 }
1207 public class DefiniteMultiplicityElements extends AbstractParserRuleElementFinder {
1208 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.DefiniteMultiplicity");
1209 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
1210 private final RuleCall cRangeMultiplicityParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
1211 private final RuleCall cExactMultiplicityParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
1212
1213 //DefiniteMultiplicity returns Multiplicity:
1214 // RangeMultiplicity | ExactMultiplicity;
1215 @Override public ParserRule getRule() { return rule; }
1216
1217 //RangeMultiplicity | ExactMultiplicity
1218 public Alternatives getAlternatives() { return cAlternatives; }
1219
1220 //RangeMultiplicity
1221 public RuleCall getRangeMultiplicityParserRuleCall_0() { return cRangeMultiplicityParserRuleCall_0; }
1222
1223 //ExactMultiplicity
1224 public RuleCall getExactMultiplicityParserRuleCall_1() { return cExactMultiplicityParserRuleCall_1; }
1225 }
1226 public class UnboundedMultiplicityElements extends AbstractParserRuleElementFinder {
1227 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.UnboundedMultiplicity");
1228 private final Action cUnboundedMultiplicityAction = (Action)rule.eContents().get(1);
1229
1230 //UnboundedMultiplicity:
1231 // {UnboundedMultiplicity};
1232 @Override public ParserRule getRule() { return rule; }
1233
1234 //{UnboundedMultiplicity}
1235 public Action getUnboundedMultiplicityAction() { return cUnboundedMultiplicityAction; }
1236 }
1237 public class RangeMultiplicityElements extends AbstractParserRuleElementFinder {
1238 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.RangeMultiplicity");
1239 private final Group cGroup = (Group)rule.eContents().get(1);
1240 private final Assignment cLowerBoundAssignment_0 = (Assignment)cGroup.eContents().get(0);
1241 private final RuleCall cLowerBoundINTTerminalRuleCall_0_0 = (RuleCall)cLowerBoundAssignment_0.eContents().get(0);
1242 private final Keyword cFullStopFullStopKeyword_1 = (Keyword)cGroup.eContents().get(1);
1243 private final Assignment cUpperBoundAssignment_2 = (Assignment)cGroup.eContents().get(2);
1244 private final RuleCall cUpperBoundUpperBoundParserRuleCall_2_0 = (RuleCall)cUpperBoundAssignment_2.eContents().get(0);
1245
1246 //RangeMultiplicity:
1247 // lowerBound=INT ".." upperBound=UpperBound;
1248 @Override public ParserRule getRule() { return rule; }
1249
1250 //lowerBound=INT ".." upperBound=UpperBound
1251 public Group getGroup() { return cGroup; }
1252
1253 //lowerBound=INT
1254 public Assignment getLowerBoundAssignment_0() { return cLowerBoundAssignment_0; }
1255
1256 //INT
1257 public RuleCall getLowerBoundINTTerminalRuleCall_0_0() { return cLowerBoundINTTerminalRuleCall_0_0; }
1258
1259 //".."
1260 public Keyword getFullStopFullStopKeyword_1() { return cFullStopFullStopKeyword_1; }
1261
1262 //upperBound=UpperBound
1263 public Assignment getUpperBoundAssignment_2() { return cUpperBoundAssignment_2; }
1264
1265 //UpperBound
1266 public RuleCall getUpperBoundUpperBoundParserRuleCall_2_0() { return cUpperBoundUpperBoundParserRuleCall_2_0; }
1267 }
1268 public class ExactMultiplicityElements extends AbstractParserRuleElementFinder {
1269 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.ExactMultiplicity");
1270 private final Assignment cExactValueAssignment = (Assignment)rule.eContents().get(1);
1271 private final RuleCall cExactValueINTTerminalRuleCall_0 = (RuleCall)cExactValueAssignment.eContents().get(0);
1272
1273 //ExactMultiplicity:
1274 // exactValue=INT;
1275 @Override public ParserRule getRule() { return rule; }
1276
1277 //exactValue=INT
1278 public Assignment getExactValueAssignment() { return cExactValueAssignment; }
1279
1280 //INT
1281 public RuleCall getExactValueINTTerminalRuleCall_0() { return cExactValueINTTerminalRuleCall_0; }
1282 }
1283 public class UpperBoundElements extends AbstractParserRuleElementFinder {
1284 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.UpperBound");
1285 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
1286 private final RuleCall cINTTerminalRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
1287 private final Keyword cAsteriskKeyword_1 = (Keyword)cAlternatives.eContents().get(1);
1288
1289 //UpperBound returns ecore::EInt:
1290 // INT | "*";
1291 @Override public ParserRule getRule() { return rule; }
1292
1293 //INT | "*"
1294 public Alternatives getAlternatives() { return cAlternatives; }
1295
1296 //INT
1297 public RuleCall getINTTerminalRuleCall_0() { return cINTTerminalRuleCall_0; }
1298
1299 //"*"
1300 public Keyword getAsteriskKeyword_1() { return cAsteriskKeyword_1; }
1301 }
1302 public class QualifiedNameElements extends AbstractParserRuleElementFinder {
1303 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.QualifiedName");
1304 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
1305 private final RuleCall cQUOTED_IDTerminalRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
1306 private final Group cGroup_1 = (Group)cAlternatives.eContents().get(1);
1307 private final RuleCall cIdentifierParserRuleCall_1_0 = (RuleCall)cGroup_1.eContents().get(0);
1308 private final Group cGroup_1_1 = (Group)cGroup_1.eContents().get(1);
1309 private final Keyword cColonColonKeyword_1_1_0 = (Keyword)cGroup_1_1.eContents().get(0);
1310 private final RuleCall cIdentifierParserRuleCall_1_1_1 = (RuleCall)cGroup_1_1.eContents().get(1);
1311
1312 //QualifiedName hidden():
1313 // QUOTED_ID | Identifier ("::" Identifier)*;
1314 @Override public ParserRule getRule() { return rule; }
1315
1316 //QUOTED_ID | Identifier ("::" Identifier)*
1317 public Alternatives getAlternatives() { return cAlternatives; }
1318
1319 //QUOTED_ID
1320 public RuleCall getQUOTED_IDTerminalRuleCall_0() { return cQUOTED_IDTerminalRuleCall_0; }
1321
1322 //Identifier ("::" Identifier)*
1323 public Group getGroup_1() { return cGroup_1; }
1324
1325 //Identifier
1326 public RuleCall getIdentifierParserRuleCall_1_0() { return cIdentifierParserRuleCall_1_0; }
1327
1328 //("::" Identifier)*
1329 public Group getGroup_1_1() { return cGroup_1_1; }
1330
1331 //"::"
1332 public Keyword getColonColonKeyword_1_1_0() { return cColonColonKeyword_1_1_0; }
1333
1334 //Identifier
1335 public RuleCall getIdentifierParserRuleCall_1_1_1() { return cIdentifierParserRuleCall_1_1_1; }
1336 }
1337 public class IdentifierElements extends AbstractParserRuleElementFinder {
1338 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Identifier");
1339 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
1340 private final RuleCall cIDTerminalRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
1341 private final Keyword cTrueKeyword_1 = (Keyword)cAlternatives.eContents().get(1);
1342 private final Keyword cFalseKeyword_2 = (Keyword)cAlternatives.eContents().get(2);
1343
1344 //Identifier:
1345 // ID | "true" | "false";
1346 @Override public ParserRule getRule() { return rule; }
1347
1348 //ID | "true" | "false"
1349 public Alternatives getAlternatives() { return cAlternatives; }
1350
1351 //ID
1352 public RuleCall getIDTerminalRuleCall_0() { return cIDTerminalRuleCall_0; }
1353
1354 //"true"
1355 public Keyword getTrueKeyword_1() { return cTrueKeyword_1; }
1356
1357 //"false"
1358 public Keyword getFalseKeyword_2() { return cFalseKeyword_2; }
1359 }
1360 public class IntegerElements extends AbstractParserRuleElementFinder {
1361 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Integer");
1362 private final Group cGroup = (Group)rule.eContents().get(1);
1363 private final Keyword cHyphenMinusKeyword_0 = (Keyword)cGroup.eContents().get(0);
1364 private final RuleCall cINTTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1);
1365
1366 //Integer returns ecore::EInt hidden():
1367 // "-"? INT;
1368 @Override public ParserRule getRule() { return rule; }
1369
1370 //"-"? INT
1371 public Group getGroup() { return cGroup; }
1372
1373 //"-"?
1374 public Keyword getHyphenMinusKeyword_0() { return cHyphenMinusKeyword_0; }
1375
1376 //INT
1377 public RuleCall getINTTerminalRuleCall_1() { return cINTTerminalRuleCall_1; }
1378 }
1379 public class RealElements extends AbstractParserRuleElementFinder {
1380 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Real");
1381 private final Group cGroup = (Group)rule.eContents().get(1);
1382 private final Keyword cHyphenMinusKeyword_0 = (Keyword)cGroup.eContents().get(0);
1383 private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
1384 private final RuleCall cEXPONENTIALTerminalRuleCall_1_0 = (RuleCall)cAlternatives_1.eContents().get(0);
1385 private final Group cGroup_1_1 = (Group)cAlternatives_1.eContents().get(1);
1386 private final RuleCall cINTTerminalRuleCall_1_1_0 = (RuleCall)cGroup_1_1.eContents().get(0);
1387 private final Keyword cFullStopKeyword_1_1_1 = (Keyword)cGroup_1_1.eContents().get(1);
1388 private final Alternatives cAlternatives_1_1_2 = (Alternatives)cGroup_1_1.eContents().get(2);
1389 private final RuleCall cINTTerminalRuleCall_1_1_2_0 = (RuleCall)cAlternatives_1_1_2.eContents().get(0);
1390 private final RuleCall cEXPONENTIALTerminalRuleCall_1_1_2_1 = (RuleCall)cAlternatives_1_1_2.eContents().get(1);
1391
1392 //Real returns ecore::EDouble:
1393 // "-"? (EXPONENTIAL | INT "." (INT | EXPONENTIAL));
1394 @Override public ParserRule getRule() { return rule; }
1395
1396 //"-"? (EXPONENTIAL | INT "." (INT | EXPONENTIAL))
1397 public Group getGroup() { return cGroup; }
1398
1399 //"-"?
1400 public Keyword getHyphenMinusKeyword_0() { return cHyphenMinusKeyword_0; }
1401
1402 //(EXPONENTIAL | INT "." (INT | EXPONENTIAL))
1403 public Alternatives getAlternatives_1() { return cAlternatives_1; }
1404
1405 //EXPONENTIAL
1406 public RuleCall getEXPONENTIALTerminalRuleCall_1_0() { return cEXPONENTIALTerminalRuleCall_1_0; }
1407
1408 //INT "." (INT | EXPONENTIAL)
1409 public Group getGroup_1_1() { return cGroup_1_1; }
1410
1411 //INT
1412 public RuleCall getINTTerminalRuleCall_1_1_0() { return cINTTerminalRuleCall_1_1_0; }
1413
1414 //"."
1415 public Keyword getFullStopKeyword_1_1_1() { return cFullStopKeyword_1_1_1; }
1416
1417 //(INT | EXPONENTIAL)
1418 public Alternatives getAlternatives_1_1_2() { return cAlternatives_1_1_2; }
1419
1420 //INT
1421 public RuleCall getINTTerminalRuleCall_1_1_2_0() { return cINTTerminalRuleCall_1_1_2_0; }
1422
1423 //EXPONENTIAL
1424 public RuleCall getEXPONENTIALTerminalRuleCall_1_1_2_1() { return cEXPONENTIALTerminalRuleCall_1_1_2_1; }
1425 }
1426
1427 public class LogicValueElements extends AbstractElementFinder.AbstractEnumRuleElementFinder {
1428 private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.LogicValue");
1429 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
1430 private final EnumLiteralDeclaration cTRUEEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0);
1431 private final Keyword cTRUETrueKeyword_0_0 = (Keyword)cTRUEEnumLiteralDeclaration_0.eContents().get(0);
1432 private final EnumLiteralDeclaration cFALSEEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1);
1433 private final Keyword cFALSEFalseKeyword_1_0 = (Keyword)cFALSEEnumLiteralDeclaration_1.eContents().get(0);
1434 private final EnumLiteralDeclaration cUNKNOWNEnumLiteralDeclaration_2 = (EnumLiteralDeclaration)cAlternatives.eContents().get(2);
1435 private final Keyword cUNKNOWNUnknownKeyword_2_0 = (Keyword)cUNKNOWNEnumLiteralDeclaration_2.eContents().get(0);
1436
1437 //enum LogicValue:
1438 // TRUE="true" | FALSE="false" | UNKNOWN="unknown";
1439 public EnumRule getRule() { return rule; }
1440
1441 //TRUE="true" | FALSE="false" | UNKNOWN="unknown"
1442 public Alternatives getAlternatives() { return cAlternatives; }
1443
1444 //TRUE="true"
1445 public EnumLiteralDeclaration getTRUEEnumLiteralDeclaration_0() { return cTRUEEnumLiteralDeclaration_0; }
1446
1447 //"true"
1448 public Keyword getTRUETrueKeyword_0_0() { return cTRUETrueKeyword_0_0; }
1449
1450 //FALSE="false"
1451 public EnumLiteralDeclaration getFALSEEnumLiteralDeclaration_1() { return cFALSEEnumLiteralDeclaration_1; }
1452
1453 //"false"
1454 public Keyword getFALSEFalseKeyword_1_0() { return cFALSEFalseKeyword_1_0; }
1455
1456 //UNKNOWN="unknown"
1457 public EnumLiteralDeclaration getUNKNOWNEnumLiteralDeclaration_2() { return cUNKNOWNEnumLiteralDeclaration_2; }
1458
1459 //"unknown"
1460 public Keyword getUNKNOWNUnknownKeyword_2_0() { return cUNKNOWNUnknownKeyword_2_0; }
1461 }
1462 public class ShortLogicValueElements extends AbstractElementFinder.AbstractEnumRuleElementFinder {
1463 private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.ShortLogicValue");
1464 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
1465 private final EnumLiteralDeclaration cFALSEEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0);
1466 private final Keyword cFALSEExclamationMarkKeyword_0_0 = (Keyword)cFALSEEnumLiteralDeclaration_0.eContents().get(0);
1467 private final EnumLiteralDeclaration cUNKNOWNEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1);
1468 private final Keyword cUNKNOWNQuestionMarkKeyword_1_0 = (Keyword)cUNKNOWNEnumLiteralDeclaration_1.eContents().get(0);
1469
1470 //enum ShortLogicValue returns LogicValue:
1471 // FALSE="!" | UNKNOWN="?";
1472 public EnumRule getRule() { return rule; }
1473
1474 //FALSE="!" | UNKNOWN="?"
1475 public Alternatives getAlternatives() { return cAlternatives; }
1476
1477 //FALSE="!"
1478 public EnumLiteralDeclaration getFALSEEnumLiteralDeclaration_0() { return cFALSEEnumLiteralDeclaration_0; }
1479
1480 //"!"
1481 public Keyword getFALSEExclamationMarkKeyword_0_0() { return cFALSEExclamationMarkKeyword_0_0; }
1482
1483 //UNKNOWN="?"
1484 public EnumLiteralDeclaration getUNKNOWNEnumLiteralDeclaration_1() { return cUNKNOWNEnumLiteralDeclaration_1; }
1485
1486 //"?"
1487 public Keyword getUNKNOWNQuestionMarkKeyword_1_0() { return cUNKNOWNQuestionMarkKeyword_1_0; }
1488 }
1489
1490 private final ProblemElements pProblem;
1491 private final StatementElements pStatement;
1492 private final ClassDeclarationElements pClassDeclaration;
1493 private final EnumDeclarationElements pEnumDeclaration;
1494 private final EnumLiteralElements pEnumLiteral;
1495 private final ReferenceDeclarationElements pReferenceDeclaration;
1496 private final PredicateDefinitionElements pPredicateDefinition;
1497 private final ParameterElements pParameter;
1498 private final ConjunctionElements pConjunction;
1499 private final LiteralElements pLiteral;
1500 private final NegativeLiteralElements pNegativeLiteral;
1501 private final AtomElements pAtom;
1502 private final ArgumentElements pArgument;
1503 private final VariableOrNodeArgumentElements pVariableOrNodeArgument;
1504 private final ConstantArgumentElements pConstantArgument;
1505 private final AssertionElements pAssertion;
1506 private final AssertionArgumentElements pAssertionArgument;
1507 private final NodeAssertionArgumentElements pNodeAssertionArgument;
1508 private final ConstantAssertionArgumentElements pConstantAssertionArgument;
1509 private final LogicValueElements eLogicValue;
1510 private final ShortLogicValueElements eShortLogicValue;
1511 private final NodeValueAssertionElements pNodeValueAssertion;
1512 private final ConstantElements pConstant;
1513 private final IntConstantElements pIntConstant;
1514 private final RealConstantElements pRealConstant;
1515 private final StringConstantElements pStringConstant;
1516 private final ScopeDeclarationElements pScopeDeclaration;
1517 private final TypeScopeElements pTypeScope;
1518 private final MultiplicityElements pMultiplicity;
1519 private final DefiniteMultiplicityElements pDefiniteMultiplicity;
1520 private final UnboundedMultiplicityElements pUnboundedMultiplicity;
1521 private final RangeMultiplicityElements pRangeMultiplicity;
1522 private final ExactMultiplicityElements pExactMultiplicity;
1523 private final UpperBoundElements pUpperBound;
1524 private final QualifiedNameElements pQualifiedName;
1525 private final IdentifierElements pIdentifier;
1526 private final IntegerElements pInteger;
1527 private final RealElements pReal;
1528 private final TerminalRule tID;
1529 private final TerminalRule tEXPONENTIAL;
1530 private final TerminalRule tSTRING;
1531 private final TerminalRule tQUOTED_ID;
1532 private final TerminalRule tSL_COMMENT;
1533
1534 private final Grammar grammar;
1535
1536 private final TerminalsGrammarAccess gaTerminals;
1537
1538 @Inject
1539 public ProblemGrammarAccess(GrammarProvider grammarProvider,
1540 TerminalsGrammarAccess gaTerminals) {
1541 this.grammar = internalFindGrammar(grammarProvider);
1542 this.gaTerminals = gaTerminals;
1543 this.pProblem = new ProblemElements();
1544 this.pStatement = new StatementElements();
1545 this.pClassDeclaration = new ClassDeclarationElements();
1546 this.pEnumDeclaration = new EnumDeclarationElements();
1547 this.pEnumLiteral = new EnumLiteralElements();
1548 this.pReferenceDeclaration = new ReferenceDeclarationElements();
1549 this.pPredicateDefinition = new PredicateDefinitionElements();
1550 this.pParameter = new ParameterElements();
1551 this.pConjunction = new ConjunctionElements();
1552 this.pLiteral = new LiteralElements();
1553 this.pNegativeLiteral = new NegativeLiteralElements();
1554 this.pAtom = new AtomElements();
1555 this.pArgument = new ArgumentElements();
1556 this.pVariableOrNodeArgument = new VariableOrNodeArgumentElements();
1557 this.pConstantArgument = new ConstantArgumentElements();
1558 this.pAssertion = new AssertionElements();
1559 this.pAssertionArgument = new AssertionArgumentElements();
1560 this.pNodeAssertionArgument = new NodeAssertionArgumentElements();
1561 this.pConstantAssertionArgument = new ConstantAssertionArgumentElements();
1562 this.eLogicValue = new LogicValueElements();
1563 this.eShortLogicValue = new ShortLogicValueElements();
1564 this.pNodeValueAssertion = new NodeValueAssertionElements();
1565 this.pConstant = new ConstantElements();
1566 this.pIntConstant = new IntConstantElements();
1567 this.pRealConstant = new RealConstantElements();
1568 this.pStringConstant = new StringConstantElements();
1569 this.pScopeDeclaration = new ScopeDeclarationElements();
1570 this.pTypeScope = new TypeScopeElements();
1571 this.pMultiplicity = new MultiplicityElements();
1572 this.pDefiniteMultiplicity = new DefiniteMultiplicityElements();
1573 this.pUnboundedMultiplicity = new UnboundedMultiplicityElements();
1574 this.pRangeMultiplicity = new RangeMultiplicityElements();
1575 this.pExactMultiplicity = new ExactMultiplicityElements();
1576 this.pUpperBound = new UpperBoundElements();
1577 this.pQualifiedName = new QualifiedNameElements();
1578 this.pIdentifier = new IdentifierElements();
1579 this.pInteger = new IntegerElements();
1580 this.pReal = new RealElements();
1581 this.tID = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.ID");
1582 this.tEXPONENTIAL = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.EXPONENTIAL");
1583 this.tSTRING = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.STRING");
1584 this.tQUOTED_ID = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.QUOTED_ID");
1585 this.tSL_COMMENT = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.SL_COMMENT");
1586 }
1587
1588 protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
1589 Grammar grammar = grammarProvider.getGrammar(this);
1590 while (grammar != null) {
1591 if ("org.eclipse.viatra.solver.language.Problem".equals(grammar.getName())) {
1592 return grammar;
1593 }
1594 List<Grammar> grammars = grammar.getUsedGrammars();
1595 if (!grammars.isEmpty()) {
1596 grammar = grammars.iterator().next();
1597 } else {
1598 return null;
1599 }
1600 }
1601 return grammar;
1602 }
1603
1604 @Override
1605 public Grammar getGrammar() {
1606 return grammar;
1607 }
1608
1609
1610 public TerminalsGrammarAccess getTerminalsGrammarAccess() {
1611 return gaTerminals;
1612 }
1613
1614
1615 //Problem:
1616 // ("problem" name=Identifier ".")?
1617 // statements+=Statement*;
1618 public ProblemElements getProblemAccess() {
1619 return pProblem;
1620 }
1621
1622 public ParserRule getProblemRule() {
1623 return getProblemAccess().getRule();
1624 }
1625
1626 //Statement:
1627 // ClassDeclaration | EnumDeclaration | PredicateDefinition | Assertion | NodeValueAssertion | ScopeDeclaration;
1628 public StatementElements getStatementAccess() {
1629 return pStatement;
1630 }
1631
1632 public ParserRule getStatementRule() {
1633 return getStatementAccess().getRule();
1634 }
1635
1636 //ClassDeclaration:
1637 // abstract?="abstract"? "class"
1638 // name=Identifier
1639 // ("extends" superTypes+=[Relation|QualifiedName] ("," superTypes+=[Relation|QualifiedName])*)?
1640 // ("{" (referenceDeclarations+=ReferenceDeclaration ";"?)* "}" | ".");
1641 public ClassDeclarationElements getClassDeclarationAccess() {
1642 return pClassDeclaration;
1643 }
1644
1645 public ParserRule getClassDeclarationRule() {
1646 return getClassDeclarationAccess().getRule();
1647 }
1648
1649 //EnumDeclaration:
1650 // "enum"
1651 // name=Identifier
1652 // ("{" (literals+=EnumLiteral ("," literals+=EnumLiteral)* ("," | ";")?)? "}" | ".");
1653 public EnumDeclarationElements getEnumDeclarationAccess() {
1654 return pEnumDeclaration;
1655 }
1656
1657 public ParserRule getEnumDeclarationRule() {
1658 return getEnumDeclarationAccess().getRule();
1659 }
1660
1661 //EnumLiteral returns Node:
1662 // name=Identifier;
1663 public EnumLiteralElements getEnumLiteralAccess() {
1664 return pEnumLiteral;
1665 }
1666
1667 public ParserRule getEnumLiteralRule() {
1668 return getEnumLiteralAccess().getRule();
1669 }
1670
1671 //ReferenceDeclaration:
1672 // (containment?="contains" | "refers")?
1673 // referenceType=[Relation|QualifiedName]
1674 // ("[" multiplicity=Multiplicity "]")?
1675 // name=Identifier
1676 // ("opposite" opposite=[ReferenceDeclaration|QualifiedName])?;
1677 public ReferenceDeclarationElements getReferenceDeclarationAccess() {
1678 return pReferenceDeclaration;
1679 }
1680
1681 public ParserRule getReferenceDeclarationRule() {
1682 return getReferenceDeclarationAccess().getRule();
1683 }
1684
1685 //PredicateDefinition:
1686 // (error?="error" "pred"? | "pred")
1687 // name=Identifier
1688 // "(" (parameters+=Parameter ("," parameters+=Parameter)*)? ")"
1689 // (":-" bodies+=Conjunction (";" bodies+=Conjunction)*)?
1690 // ".";
1691 public PredicateDefinitionElements getPredicateDefinitionAccess() {
1692 return pPredicateDefinition;
1693 }
1694
1695 public ParserRule getPredicateDefinitionRule() {
1696 return getPredicateDefinitionAccess().getRule();
1697 }
1698
1699 //Parameter:
1700 // parameterType=[Relation|QualifiedName]? name=Identifier;
1701 public ParameterElements getParameterAccess() {
1702 return pParameter;
1703 }
1704
1705 public ParserRule getParameterRule() {
1706 return getParameterAccess().getRule();
1707 }
1708
1709 //Conjunction:
1710 // literals+=Literal ("," literals+=Literal)*;
1711 public ConjunctionElements getConjunctionAccess() {
1712 return pConjunction;
1713 }
1714
1715 public ParserRule getConjunctionRule() {
1716 return getConjunctionAccess().getRule();
1717 }
1718
1719 //Literal:
1720 // Atom | NegativeLiteral;
1721 public LiteralElements getLiteralAccess() {
1722 return pLiteral;
1723 }
1724
1725 public ParserRule getLiteralRule() {
1726 return getLiteralAccess().getRule();
1727 }
1728
1729 //NegativeLiteral:
1730 // "!" atom=Atom;
1731 public NegativeLiteralElements getNegativeLiteralAccess() {
1732 return pNegativeLiteral;
1733 }
1734
1735 public ParserRule getNegativeLiteralRule() {
1736 return getNegativeLiteralAccess().getRule();
1737 }
1738
1739 //Atom:
1740 // relation=[Relation|QualifiedName]
1741 // transitiveClosure?="+"?
1742 // "(" (arguments+=Argument ("," arguments+=Argument)*)? ")";
1743 public AtomElements getAtomAccess() {
1744 return pAtom;
1745 }
1746
1747 public ParserRule getAtomRule() {
1748 return getAtomAccess().getRule();
1749 }
1750
1751 //Argument:
1752 // VariableOrNodeArgument | ConstantArgument;
1753 public ArgumentElements getArgumentAccess() {
1754 return pArgument;
1755 }
1756
1757 public ParserRule getArgumentRule() {
1758 return getArgumentAccess().getRule();
1759 }
1760
1761 //VariableOrNodeArgument:
1762 // variableOrNode=[VariableOrNode|QualifiedName];
1763 public VariableOrNodeArgumentElements getVariableOrNodeArgumentAccess() {
1764 return pVariableOrNodeArgument;
1765 }
1766
1767 public ParserRule getVariableOrNodeArgumentRule() {
1768 return getVariableOrNodeArgumentAccess().getRule();
1769 }
1770
1771 //ConstantArgument:
1772 // constant=Constant;
1773 public ConstantArgumentElements getConstantArgumentAccess() {
1774 return pConstantArgument;
1775 }
1776
1777 public ParserRule getConstantArgumentRule() {
1778 return getConstantArgumentAccess().getRule();
1779 }
1780
1781 //Assertion:
1782 // (relation=[Relation|QualifiedName]
1783 // "(" (arguments+=AssertionArgument ("," arguments+=AssertionArgument)*)? ")"
1784 // ":" value=LogicValue |
1785 // value=ShortLogicValue?
1786 // relation=[Relation|QualifiedName]
1787 // "(" (arguments+=AssertionArgument ("," arguments+=AssertionArgument)*)? ")")
1788 // ".";
1789 public AssertionElements getAssertionAccess() {
1790 return pAssertion;
1791 }
1792
1793 public ParserRule getAssertionRule() {
1794 return getAssertionAccess().getRule();
1795 }
1796
1797 //AssertionArgument:
1798 // NodeAssertionArgument | ConstantAssertionArgument;
1799 public AssertionArgumentElements getAssertionArgumentAccess() {
1800 return pAssertionArgument;
1801 }
1802
1803 public ParserRule getAssertionArgumentRule() {
1804 return getAssertionArgumentAccess().getRule();
1805 }
1806
1807 //NodeAssertionArgument:
1808 // node=[Node|QualifiedName];
1809 public NodeAssertionArgumentElements getNodeAssertionArgumentAccess() {
1810 return pNodeAssertionArgument;
1811 }
1812
1813 public ParserRule getNodeAssertionArgumentRule() {
1814 return getNodeAssertionArgumentAccess().getRule();
1815 }
1816
1817 //ConstantAssertionArgument:
1818 // constant=Constant;
1819 public ConstantAssertionArgumentElements getConstantAssertionArgumentAccess() {
1820 return pConstantAssertionArgument;
1821 }
1822
1823 public ParserRule getConstantAssertionArgumentRule() {
1824 return getConstantAssertionArgumentAccess().getRule();
1825 }
1826
1827 //enum LogicValue:
1828 // TRUE="true" | FALSE="false" | UNKNOWN="unknown";
1829 public LogicValueElements getLogicValueAccess() {
1830 return eLogicValue;
1831 }
1832
1833 public EnumRule getLogicValueRule() {
1834 return getLogicValueAccess().getRule();
1835 }
1836
1837 //enum ShortLogicValue returns LogicValue:
1838 // FALSE="!" | UNKNOWN="?";
1839 public ShortLogicValueElements getShortLogicValueAccess() {
1840 return eShortLogicValue;
1841 }
1842
1843 public EnumRule getShortLogicValueRule() {
1844 return getShortLogicValueAccess().getRule();
1845 }
1846
1847 //NodeValueAssertion:
1848 // node=[Node|QualifiedName] ":" value=Constant ".";
1849 public NodeValueAssertionElements getNodeValueAssertionAccess() {
1850 return pNodeValueAssertion;
1851 }
1852
1853 public ParserRule getNodeValueAssertionRule() {
1854 return getNodeValueAssertionAccess().getRule();
1855 }
1856
1857 //Constant:
1858 // RealConstant | IntConstant | StringConstant;
1859 public ConstantElements getConstantAccess() {
1860 return pConstant;
1861 }
1862
1863 public ParserRule getConstantRule() {
1864 return getConstantAccess().getRule();
1865 }
1866
1867 //IntConstant:
1868 // intValue=Integer;
1869 public IntConstantElements getIntConstantAccess() {
1870 return pIntConstant;
1871 }
1872
1873 public ParserRule getIntConstantRule() {
1874 return getIntConstantAccess().getRule();
1875 }
1876
1877 //RealConstant:
1878 // realValue=Real;
1879 public RealConstantElements getRealConstantAccess() {
1880 return pRealConstant;
1881 }
1882
1883 public ParserRule getRealConstantRule() {
1884 return getRealConstantAccess().getRule();
1885 }
1886
1887 //StringConstant:
1888 // stringValue=STRING;
1889 public StringConstantElements getStringConstantAccess() {
1890 return pStringConstant;
1891 }
1892
1893 public ParserRule getStringConstantRule() {
1894 return getStringConstantAccess().getRule();
1895 }
1896
1897 //ScopeDeclaration:
1898 // "scope" typeScopes+=TypeScope ("," typeScopes+=TypeScope)* ".";
1899 public ScopeDeclarationElements getScopeDeclarationAccess() {
1900 return pScopeDeclaration;
1901 }
1902
1903 public ParserRule getScopeDeclarationRule() {
1904 return getScopeDeclarationAccess().getRule();
1905 }
1906
1907 //TypeScope:
1908 // targetType=[ClassDeclaration]
1909 // (increment?="+=" | "=")
1910 // multiplicity=DefiniteMultiplicity;
1911 public TypeScopeElements getTypeScopeAccess() {
1912 return pTypeScope;
1913 }
1914
1915 public ParserRule getTypeScopeRule() {
1916 return getTypeScopeAccess().getRule();
1917 }
1918
1919 //Multiplicity:
1920 // UnboundedMultiplicity | DefiniteMultiplicity;
1921 public MultiplicityElements getMultiplicityAccess() {
1922 return pMultiplicity;
1923 }
1924
1925 public ParserRule getMultiplicityRule() {
1926 return getMultiplicityAccess().getRule();
1927 }
1928
1929 //DefiniteMultiplicity returns Multiplicity:
1930 // RangeMultiplicity | ExactMultiplicity;
1931 public DefiniteMultiplicityElements getDefiniteMultiplicityAccess() {
1932 return pDefiniteMultiplicity;
1933 }
1934
1935 public ParserRule getDefiniteMultiplicityRule() {
1936 return getDefiniteMultiplicityAccess().getRule();
1937 }
1938
1939 //UnboundedMultiplicity:
1940 // {UnboundedMultiplicity};
1941 public UnboundedMultiplicityElements getUnboundedMultiplicityAccess() {
1942 return pUnboundedMultiplicity;
1943 }
1944
1945 public ParserRule getUnboundedMultiplicityRule() {
1946 return getUnboundedMultiplicityAccess().getRule();
1947 }
1948
1949 //RangeMultiplicity:
1950 // lowerBound=INT ".." upperBound=UpperBound;
1951 public RangeMultiplicityElements getRangeMultiplicityAccess() {
1952 return pRangeMultiplicity;
1953 }
1954
1955 public ParserRule getRangeMultiplicityRule() {
1956 return getRangeMultiplicityAccess().getRule();
1957 }
1958
1959 //ExactMultiplicity:
1960 // exactValue=INT;
1961 public ExactMultiplicityElements getExactMultiplicityAccess() {
1962 return pExactMultiplicity;
1963 }
1964
1965 public ParserRule getExactMultiplicityRule() {
1966 return getExactMultiplicityAccess().getRule();
1967 }
1968
1969 //UpperBound returns ecore::EInt:
1970 // INT | "*";
1971 public UpperBoundElements getUpperBoundAccess() {
1972 return pUpperBound;
1973 }
1974
1975 public ParserRule getUpperBoundRule() {
1976 return getUpperBoundAccess().getRule();
1977 }
1978
1979 //QualifiedName hidden():
1980 // QUOTED_ID | Identifier ("::" Identifier)*;
1981 public QualifiedNameElements getQualifiedNameAccess() {
1982 return pQualifiedName;
1983 }
1984
1985 public ParserRule getQualifiedNameRule() {
1986 return getQualifiedNameAccess().getRule();
1987 }
1988
1989 //Identifier:
1990 // ID | "true" | "false";
1991 public IdentifierElements getIdentifierAccess() {
1992 return pIdentifier;
1993 }
1994
1995 public ParserRule getIdentifierRule() {
1996 return getIdentifierAccess().getRule();
1997 }
1998
1999 //Integer returns ecore::EInt hidden():
2000 // "-"? INT;
2001 public IntegerElements getIntegerAccess() {
2002 return pInteger;
2003 }
2004
2005 public ParserRule getIntegerRule() {
2006 return getIntegerAccess().getRule();
2007 }
2008
2009 //Real returns ecore::EDouble:
2010 // "-"? (EXPONENTIAL | INT "." (INT | EXPONENTIAL));
2011 public RealElements getRealAccess() {
2012 return pReal;
2013 }
2014
2015 public ParserRule getRealRule() {
2016 return getRealAccess().getRule();
2017 }
2018
2019 //@Override
2020 //terminal ID:
2021 // ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
2022 public TerminalRule getIDRule() {
2023 return tID;
2024 }
2025
2026 //terminal EXPONENTIAL:
2027 // INT ("e" | "E") ("+" | "-")? INT;
2028 public TerminalRule getEXPONENTIALRule() {
2029 return tEXPONENTIAL;
2030 }
2031
2032 //@Override
2033 //terminal STRING:
2034 // '"' ('\\' . /* 'b'|'t'|'n'|'f'|'r'|'u'|'"'|"'"|'\\' */ | !('\\' | '"'))* '"';
2035 public TerminalRule getSTRINGRule() {
2036 return tSTRING;
2037 }
2038
2039 //terminal QUOTED_ID:
2040 // "'" ('\\' . /* 'b'|'t'|'n'|'f'|'r'|'u'|'"'|"'"|'\\' */ | !('\\' | "'"))* "'";
2041 public TerminalRule getQUOTED_IDRule() {
2042 return tQUOTED_ID;
2043 }
2044
2045 //@Override
2046 //terminal SL_COMMENT:
2047 // ('%' | '//') !('\n' | '\r')* ('\r'? '\n')?;
2048 public TerminalRule getSL_COMMENTRule() {
2049 return tSL_COMMENT;
2050 }
2051
2052 //terminal INT returns ecore::EInt: ('0'..'9')+;
2053 public TerminalRule getINTRule() {
2054 return gaTerminals.getINTRule();
2055 }
2056
2057 //terminal ML_COMMENT : '/*' -> '*/';
2058 public TerminalRule getML_COMMENTRule() {
2059 return gaTerminals.getML_COMMENTRule();
2060 }
2061
2062 //terminal WS : (' '|'\t'|'\r'|'\n')+;
2063 public TerminalRule getWSRule() {
2064 return gaTerminals.getWSRule();
2065 }
2066
2067 //terminal ANY_OTHER: .;
2068 public TerminalRule getANY_OTHERRule() {
2069 return gaTerminals.getANY_OTHERRule();
2070 }
2071}
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/validation/AbstractProblemValidator.java b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/validation/AbstractProblemValidator.java
deleted file mode 100644
index 9cd73e1e..00000000
--- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/validation/AbstractProblemValidator.java
+++ /dev/null
@@ -1,19 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4package org.eclipse.viatra.solver.language.validation;
5
6import java.util.ArrayList;
7import java.util.List;
8import org.eclipse.emf.ecore.EPackage;
9import org.eclipse.xtext.validation.AbstractDeclarativeValidator;
10
11public abstract class AbstractProblemValidator extends AbstractDeclarativeValidator {
12
13 @Override
14 protected List<EPackage> getEPackages() {
15 List<EPackage> result = new ArrayList<EPackage>();
16 result.add(EPackage.Registry.INSTANCE.getEPackage("http://www.eclipse.org/viatra/solver/language/model/Problem"));
17 return result;
18 }
19}
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/validation/ProblemConfigurableIssueCodesProvider.java b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/validation/ProblemConfigurableIssueCodesProvider.java
deleted file mode 100644
index f5a0d87d..00000000
--- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/validation/ProblemConfigurableIssueCodesProvider.java
+++ /dev/null
@@ -1,22 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4package org.eclipse.viatra.solver.language.validation;
5
6import org.eclipse.xtext.preferences.PreferenceKey;
7import org.eclipse.xtext.util.IAcceptor;
8import org.eclipse.xtext.validation.ConfigurableIssueCodesProvider;
9import org.eclipse.xtext.validation.SeverityConverter;
10
11@SuppressWarnings("restriction")
12public class ProblemConfigurableIssueCodesProvider extends ConfigurableIssueCodesProvider {
13 protected static final String ISSUE_CODE_PREFIX = "org.eclipse.viatra.solver.language.";
14
15 public static final String DEPRECATED_MODEL_PART = ISSUE_CODE_PREFIX + "deprecatedModelPart";
16
17 @Override
18 protected void initialize(IAcceptor<PreferenceKey> acceptor) {
19 super.initialize(acceptor);
20 acceptor.accept(create(DEPRECATED_MODEL_PART, SeverityConverter.SEVERITY_WARNING));
21 }
22}
diff --git a/language/src/test/xtext-gen/org/eclipse/viatra/solver/language/tests/ProblemInjectorProvider.java b/language/src/test/xtext-gen/org/eclipse/viatra/solver/language/tests/ProblemInjectorProvider.java
deleted file mode 100644
index 7d0ef1bb..00000000
--- a/language/src/test/xtext-gen/org/eclipse/viatra/solver/language/tests/ProblemInjectorProvider.java
+++ /dev/null
@@ -1,69 +0,0 @@
1/*
2 * generated by Xtext 2.26.0.M1
3 */
4package org.eclipse.viatra.solver.language.tests;
5
6import com.google.inject.Guice;
7import com.google.inject.Injector;
8import org.eclipse.viatra.solver.language.ProblemRuntimeModule;
9import org.eclipse.viatra.solver.language.ProblemStandaloneSetup;
10import org.eclipse.xtext.testing.GlobalRegistries;
11import org.eclipse.xtext.testing.GlobalRegistries.GlobalStateMemento;
12import org.eclipse.xtext.testing.IInjectorProvider;
13import org.eclipse.xtext.testing.IRegistryConfigurator;
14
15public class ProblemInjectorProvider implements IInjectorProvider, IRegistryConfigurator {
16
17 protected GlobalStateMemento stateBeforeInjectorCreation;
18 protected GlobalStateMemento stateAfterInjectorCreation;
19 protected Injector injector;
20
21 static {
22 GlobalRegistries.initializeDefaults();
23 }
24
25 @Override
26 public Injector getInjector() {
27 if (injector == null) {
28 this.injector = internalCreateInjector();
29 stateAfterInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
30 }
31 return injector;
32 }
33
34 protected Injector internalCreateInjector() {
35 return new ProblemStandaloneSetup() {
36 @Override
37 public Injector createInjector() {
38 return Guice.createInjector(createRuntimeModule());
39 }
40 }.createInjectorAndDoEMFRegistration();
41 }
42
43 protected ProblemRuntimeModule createRuntimeModule() {
44 // make it work also with Maven/Tycho and OSGI
45 // see https://bugs.eclipse.org/bugs/show_bug.cgi?id=493672
46 return new ProblemRuntimeModule() {
47 @Override
48 public ClassLoader bindClassLoaderToInstance() {
49 return ProblemInjectorProvider.class
50 .getClassLoader();
51 }
52 };
53 }
54
55 @Override
56 public void restoreRegistry() {
57 stateBeforeInjectorCreation.restoreGlobalState();
58 stateBeforeInjectorCreation = null;
59 }
60
61 @Override
62 public void setupRegistry() {
63 stateBeforeInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
64 if (injector == null) {
65 getInjector();
66 }
67 stateAfterInjectorCreation.restoreGlobalState();
68 }
69}