EmbASP-Python
DLVHEXParser.py
1 # Generated from DLVHEXParser.g4 by ANTLR 4.7
2 # encoding: utf-8
3 from __future__ import print_function
4 from antlr4 import *
5 from io import StringIO
6 import sys
7 
8 def serializedATN():
9  with StringIO() as buf:
10  buf.write(u"\3\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964\3")
11  buf.write(u"\27b\4\2\t\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7")
12  buf.write(u"\4\b\t\b\4\t\t\t\3\2\3\2\3\2\7\2\26\n\2\f\2\16\2\31\13")
13  buf.write(u"\2\3\2\3\2\3\2\3\2\3\2\5\2 \n\2\3\2\5\2#\n\2\3\3\3\3")
14  buf.write(u"\3\3\3\3\7\3)\n\3\f\3\16\3,\13\3\5\3.\n\3\3\3\3\3\5\3")
15  buf.write(u"\62\n\3\3\4\3\4\3\4\3\4\7\48\n\4\f\4\16\4;\13\4\3\4\3")
16  buf.write(u"\4\3\5\3\5\3\5\3\5\3\5\3\5\3\6\7\6F\n\6\f\6\16\6I\13")
17  buf.write(u"\6\3\7\3\7\3\7\3\7\3\7\7\7P\n\7\f\7\16\7S\13\7\3\7\3")
18  buf.write(u"\7\5\7W\n\7\3\b\3\b\3\b\3\b\5\b]\n\b\3\t\3\t\3\t\3\t")
19  buf.write(u"\2\2\n\2\4\6\b\n\f\16\20\2\2\2f\2\"\3\2\2\2\4$\3\2\2")
20  buf.write(u"\2\6\63\3\2\2\2\b>\3\2\2\2\nG\3\2\2\2\fJ\3\2\2\2\16\\")
21  buf.write(u"\3\2\2\2\20^\3\2\2\2\22\27\7\17\2\2\23\24\7\6\2\2\24")
22  buf.write(u"\26\7\17\2\2\25\23\3\2\2\2\26\31\3\2\2\2\27\25\3\2\2")
23  buf.write(u"\2\27\30\3\2\2\2\30\32\3\2\2\2\31\27\3\2\2\2\32\33\7")
24  buf.write(u"\f\2\2\33\34\7\23\2\2\34\37\7\25\2\2\35 \7\24\2\2\36")
25  buf.write(u" \5\20\t\2\37\35\3\2\2\2\37\36\3\2\2\2 #\3\2\2\2!#\5")
26  buf.write(u"\4\3\2\"\22\3\2\2\2\"!\3\2\2\2#\3\3\2\2\2$-\7\r\2\2%")
27  buf.write(u"*\5\f\7\2&\'\7\6\2\2\')\5\f\7\2(&\3\2\2\2),\3\2\2\2*")
28  buf.write(u"(\3\2\2\2*+\3\2\2\2+.\3\2\2\2,*\3\2\2\2-%\3\2\2\2-.\3")
29  buf.write(u"\2\2\2./\3\2\2\2/\61\7\16\2\2\60\62\5\6\4\2\61\60\3\2")
30  buf.write(u"\2\2\61\62\3\2\2\2\62\5\3\2\2\2\63\64\7\7\2\2\649\5\b")
31  buf.write(u"\5\2\65\66\7\6\2\2\668\5\b\5\2\67\65\3\2\2\28;\3\2\2")
32  buf.write(u"\29\67\3\2\2\29:\3\2\2\2:<\3\2\2\2;9\3\2\2\2<=\7\b\2")
33  buf.write(u"\2=\7\3\2\2\2>?\7\n\2\2?@\7\t\2\2@A\7\5\2\2AB\7\t\2\2")
34  buf.write(u"BC\7\13\2\2C\t\3\2\2\2DF\5\2\2\2ED\3\2\2\2FI\3\2\2\2")
35  buf.write(u"GE\3\2\2\2GH\3\2\2\2H\13\3\2\2\2IG\3\2\2\2JV\7\17\2\2")
36  buf.write(u"KL\7\21\2\2LQ\5\16\b\2MN\7\6\2\2NP\5\16\b\2OM\3\2\2\2")
37  buf.write(u"PS\3\2\2\2QO\3\2\2\2QR\3\2\2\2RT\3\2\2\2SQ\3\2\2\2TU")
38  buf.write(u"\7\22\2\2UW\3\2\2\2VK\3\2\2\2VW\3\2\2\2W\r\3\2\2\2X]")
39  buf.write(u"\7\17\2\2Y]\7\t\2\2Z]\5\f\7\2[]\7\20\2\2\\X\3\2\2\2\\")
40  buf.write(u"Y\3\2\2\2\\Z\3\2\2\2\\[\3\2\2\2]\17\3\2\2\2^_\7\27\2")
41  buf.write(u"\2_`\5\4\3\2`\21\3\2\2\2\r\27\37\"*-\619GQV\\")
42  return buf.getvalue()
43 
44 
45 class DLVHEXParser ( Parser ):
46 
47  grammarFileName = "DLVHEXParser.g4"
48 
49  atn = ATNDeserializer().deserialize(serializedATN())
50 
51  decisionsToDFA = [ DFA(ds, i) for i, ds in enumerate(atn.decisionToState) ]
52 
53  sharedContextCache = PredictionContextCache()
54 
55  literalNames = [ u"<INVALID>", u"<INVALID>", u"<INVALID>", u"':'", u"','",
56  u"'<'", u"'>'", u"<INVALID>", u"'['", u"']'", u"' is '",
57  u"'{'", u"'}'", u"<INVALID>", u"<INVALID>", u"'('",
58  u"')'", u"<INVALID>", u"'.'", u"<INVALID>", u"<INVALID>",
59  u"', evidenced by'" ]
60 
61  symbolicNames = [ u"<INVALID>", u"HEADER", u"WHITE_SPACE", u"COLON",
62  u"COMMA", u"COST_BEGIN", u"COST_END", u"INTEGER",
63  u"LEVEL_BEGIN", u"LEVEL_END", u"GROUND_QUERY_BEGIN",
64  u"ANSWER_SET_BEGIN", u"ANSWER_SET_END", u"IDENTIFIER",
65  u"STRING_CONSTANT", u"TERMS_BEGIN", u"TERMS_END",
66  u"REASONING", u"DOT", u"BOOLEAN", u"WHITESPACE_IN_GROUND_QUERY",
67  u"WITNESS_LABEL" ]
68 
69  RULE_answer_set = 0
70  RULE_atoms = 1
71  RULE_cost = 2
72  RULE_level = 3
73  RULE_output = 4
74  RULE_predicate_atom = 5
75  RULE_term = 6
76  RULE_witness = 7
77 
78  ruleNames = [ u"answer_set", u"atoms", u"cost", u"level", u"output",
79  u"predicate_atom", u"term", u"witness" ]
80 
81  EOF = Token.EOF
82  HEADER=1
83  WHITE_SPACE=2
84  COLON=3
85  COMMA=4
86  COST_BEGIN=5
87  COST_END=6
88  INTEGER=7
89  LEVEL_BEGIN=8
90  LEVEL_END=9
91  GROUND_QUERY_BEGIN=10
92  ANSWER_SET_BEGIN=11
93  ANSWER_SET_END=12
94  IDENTIFIER=13
95  STRING_CONSTANT=14
96  TERMS_BEGIN=15
97  TERMS_END=16
98  REASONING=17
99  DOT=18
100  BOOLEAN=19
101  WHITESPACE_IN_GROUND_QUERY=20
102  WITNESS_LABEL=21
103 
104  def __init__(self, input, output=sys.stdout):
105  super(DLVHEXParser, self).__init__(input, output=output)
106  self.checkVersion("4.7")
107  self._interp = ParserATNSimulator(self, self.atn, self.decisionsToDFA, self.sharedContextCache)
108  self._predicates = None
109 
110 
111 
112  class Answer_setContext(ParserRuleContext):
113 
114  def __init__(self, parser, parent=None, invokingState=-1):
115  super(DLVHEXParser.Answer_setContext, self).__init__(parent, invokingState)
116  self.parser = parser
117 
118 
119  def getRuleIndex(self):
120  return DLVHEXParser.RULE_answer_set
121 
122 
123  def copyFrom(self, ctx):
124  super(DLVHEXParser.Answer_setContext, self).copyFrom(ctx)
125 
126 
127 
129 
130  def __init__(self, parser, ctx): # actually a DLVHEXParser.Answer_setContext)
131  super(DLVHEXParser.GroundQueryContext, self).__init__(parser)
132  self.copyFrom(ctx)
133 
134  def IDENTIFIER(self, i=None):
135  if i is None:
136  return self.getTokens(DLVHEXParser.IDENTIFIER)
137  else:
138  return self.getToken(DLVHEXParser.IDENTIFIER, i)
139  def GROUND_QUERY_BEGIN(self):
140  return self.getToken(DLVHEXParser.GROUND_QUERY_BEGIN, 0)
141  def REASONING(self):
142  return self.getToken(DLVHEXParser.REASONING, 0)
143  def BOOLEAN(self):
144  return self.getToken(DLVHEXParser.BOOLEAN, 0)
145  def DOT(self):
146  return self.getToken(DLVHEXParser.DOT, 0)
147  def witness(self):
148  return self.getTypedRuleContext(DLVHEXParser.WitnessContext,0)
149 
150  def COMMA(self, i=None):
151  if i is None:
152  return self.getTokens(DLVHEXParser.COMMA)
153  else:
154  return self.getToken(DLVHEXParser.COMMA, i)
155 
156  def accept(self, visitor):
157  if hasattr(visitor, "visitGroundQuery"):
158  return visitor.visitGroundQuery(self)
159  else:
160  return visitor.visitChildren(self)
161 
162 
164 
165  def __init__(self, parser, ctx): # actually a DLVHEXParser.Answer_setContext)
166  super(DLVHEXParser.ModelContext, self).__init__(parser)
167  self.copyFrom(ctx)
168 
169  def atoms(self):
170  return self.getTypedRuleContext(DLVHEXParser.AtomsContext,0)
171 
172 
173  def accept(self, visitor):
174  if hasattr(visitor, "visitModel"):
175  return visitor.visitModel(self)
176  else:
177  return visitor.visitChildren(self)
178 
179 
180 
181  def answer_set(self):
182 
183  localctx = DLVHEXParser.Answer_setContext(self, self._ctx, self.state)
184  self.enterRule(localctx, 0, self.RULE_answer_set)
185  self._la = 0 # Token type
186  try:
187  self.state = 32
188  self._errHandler.sync(self)
189  token = self._input.LA(1)
190  if token in [DLVHEXParser.IDENTIFIER]:
191  localctx = DLVHEXParser.GroundQueryContext(self, localctx)
192  self.enterOuterAlt(localctx, 1)
193  self.state = 16
194  self.match(DLVHEXParser.IDENTIFIER)
195  self.state = 21
196  self._errHandler.sync(self)
197  _la = self._input.LA(1)
198  while _la==DLVHEXParser.COMMA:
199  self.state = 17
200  self.match(DLVHEXParser.COMMA)
201  self.state = 18
202  self.match(DLVHEXParser.IDENTIFIER)
203  self.state = 23
204  self._errHandler.sync(self)
205  _la = self._input.LA(1)
206 
207  self.state = 24
208  self.match(DLVHEXParser.GROUND_QUERY_BEGIN)
209  self.state = 25
210  self.match(DLVHEXParser.REASONING)
211  self.state = 26
212  self.match(DLVHEXParser.BOOLEAN)
213  self.state = 29
214  self._errHandler.sync(self)
215  token = self._input.LA(1)
216  if token in [DLVHEXParser.DOT]:
217  self.state = 27
218  self.match(DLVHEXParser.DOT)
219  pass
220  elif token in [DLVHEXParser.WITNESS_LABEL]:
221  self.state = 28
222  self.witness()
223  pass
224  else:
225  raise NoViableAltException(self)
226 
227  pass
228  elif token in [DLVHEXParser.ANSWER_SET_BEGIN]:
229  localctx = DLVHEXParser.ModelContext(self, localctx)
230  self.enterOuterAlt(localctx, 2)
231  self.state = 31
232  self.atoms()
233  pass
234  else:
235  raise NoViableAltException(self)
236 
237  except RecognitionException as re:
238  localctx.exception = re
239  self._errHandler.reportError(self, re)
240  self._errHandler.recover(self, re)
241  finally:
242  self.exitRule()
243  return localctx
244 
245  class AtomsContext(ParserRuleContext):
246 
247  def __init__(self, parser, parent=None, invokingState=-1):
248  super(DLVHEXParser.AtomsContext, self).__init__(parent, invokingState)
249  self.parser = parser
250 
251  def ANSWER_SET_BEGIN(self):
252  return self.getToken(DLVHEXParser.ANSWER_SET_BEGIN, 0)
253 
254  def ANSWER_SET_END(self):
255  return self.getToken(DLVHEXParser.ANSWER_SET_END, 0)
256 
257  def predicate_atom(self, i=None):
258  if i is None:
259  return self.getTypedRuleContexts(DLVHEXParser.Predicate_atomContext)
260  else:
261  return self.getTypedRuleContext(DLVHEXParser.Predicate_atomContext,i)
262 
263 
264  def cost(self):
265  return self.getTypedRuleContext(DLVHEXParser.CostContext,0)
266 
267 
268  def COMMA(self, i=None):
269  if i is None:
270  return self.getTokens(DLVHEXParser.COMMA)
271  else:
272  return self.getToken(DLVHEXParser.COMMA, i)
273 
274  def getRuleIndex(self):
275  return DLVHEXParser.RULE_atoms
276 
277  def accept(self, visitor):
278  if hasattr(visitor, "visitAtoms"):
279  return visitor.visitAtoms(self)
280  else:
281  return visitor.visitChildren(self)
282 
283 
284 
285 
286  def atoms(self):
287 
288  localctx = DLVHEXParser.AtomsContext(self, self._ctx, self.state)
289  self.enterRule(localctx, 2, self.RULE_atoms)
290  self._la = 0 # Token type
291  try:
292  self.enterOuterAlt(localctx, 1)
293  self.state = 34
294  self.match(DLVHEXParser.ANSWER_SET_BEGIN)
295  self.state = 43
296  self._errHandler.sync(self)
297  _la = self._input.LA(1)
298  if _la==DLVHEXParser.IDENTIFIER:
299  self.state = 35
300  self.predicate_atom()
301  self.state = 40
302  self._errHandler.sync(self)
303  _la = self._input.LA(1)
304  while _la==DLVHEXParser.COMMA:
305  self.state = 36
306  self.match(DLVHEXParser.COMMA)
307  self.state = 37
308  self.predicate_atom()
309  self.state = 42
310  self._errHandler.sync(self)
311  _la = self._input.LA(1)
312 
313 
314 
315  self.state = 45
316  self.match(DLVHEXParser.ANSWER_SET_END)
317  self.state = 47
318  self._errHandler.sync(self)
319  _la = self._input.LA(1)
320  if _la==DLVHEXParser.COST_BEGIN:
321  self.state = 46
322  self.cost()
323 
324 
325  except RecognitionException as re:
326  localctx.exception = re
327  self._errHandler.reportError(self, re)
328  self._errHandler.recover(self, re)
329  finally:
330  self.exitRule()
331  return localctx
332 
333  class CostContext(ParserRuleContext):
334 
335  def __init__(self, parser, parent=None, invokingState=-1):
336  super(DLVHEXParser.CostContext, self).__init__(parent, invokingState)
337  self.parser = parser
338 
339  def COST_BEGIN(self):
340  return self.getToken(DLVHEXParser.COST_BEGIN, 0)
341 
342  def level(self, i=None):
343  if i is None:
344  return self.getTypedRuleContexts(DLVHEXParser.LevelContext)
345  else:
346  return self.getTypedRuleContext(DLVHEXParser.LevelContext,i)
347 
348 
349  def COST_END(self):
350  return self.getToken(DLVHEXParser.COST_END, 0)
351 
352  def COMMA(self, i=None):
353  if i is None:
354  return self.getTokens(DLVHEXParser.COMMA)
355  else:
356  return self.getToken(DLVHEXParser.COMMA, i)
357 
358  def getRuleIndex(self):
359  return DLVHEXParser.RULE_cost
360 
361  def accept(self, visitor):
362  if hasattr(visitor, "visitCost"):
363  return visitor.visitCost(self)
364  else:
365  return visitor.visitChildren(self)
366 
367 
368 
369 
370  def cost(self):
371 
372  localctx = DLVHEXParser.CostContext(self, self._ctx, self.state)
373  self.enterRule(localctx, 4, self.RULE_cost)
374  self._la = 0 # Token type
375  try:
376  self.enterOuterAlt(localctx, 1)
377  self.state = 49
378  self.match(DLVHEXParser.COST_BEGIN)
379  self.state = 50
380  self.level()
381  self.state = 55
382  self._errHandler.sync(self)
383  _la = self._input.LA(1)
384  while _la==DLVHEXParser.COMMA:
385  self.state = 51
386  self.match(DLVHEXParser.COMMA)
387  self.state = 52
388  self.level()
389  self.state = 57
390  self._errHandler.sync(self)
391  _la = self._input.LA(1)
392 
393  self.state = 58
394  self.match(DLVHEXParser.COST_END)
395  except RecognitionException as re:
396  localctx.exception = re
397  self._errHandler.reportError(self, re)
398  self._errHandler.recover(self, re)
399  finally:
400  self.exitRule()
401  return localctx
402 
403  class LevelContext(ParserRuleContext):
404 
405  def __init__(self, parser, parent=None, invokingState=-1):
406  super(DLVHEXParser.LevelContext, self).__init__(parent, invokingState)
407  self.parser = parser
408 
409  def LEVEL_BEGIN(self):
410  return self.getToken(DLVHEXParser.LEVEL_BEGIN, 0)
411 
412  def INTEGER(self, i=None):
413  if i is None:
414  return self.getTokens(DLVHEXParser.INTEGER)
415  else:
416  return self.getToken(DLVHEXParser.INTEGER, i)
417 
418  def COLON(self):
419  return self.getToken(DLVHEXParser.COLON, 0)
420 
421  def LEVEL_END(self):
422  return self.getToken(DLVHEXParser.LEVEL_END, 0)
423 
424  def getRuleIndex(self):
425  return DLVHEXParser.RULE_level
426 
427  def accept(self, visitor):
428  if hasattr(visitor, "visitLevel"):
429  return visitor.visitLevel(self)
430  else:
431  return visitor.visitChildren(self)
432 
433 
434 
435 
436  def level(self):
437 
438  localctx = DLVHEXParser.LevelContext(self, self._ctx, self.state)
439  self.enterRule(localctx, 6, self.RULE_level)
440  try:
441  self.enterOuterAlt(localctx, 1)
442  self.state = 60
443  self.match(DLVHEXParser.LEVEL_BEGIN)
444  self.state = 61
445  self.match(DLVHEXParser.INTEGER)
446  self.state = 62
447  self.match(DLVHEXParser.COLON)
448  self.state = 63
449  self.match(DLVHEXParser.INTEGER)
450  self.state = 64
451  self.match(DLVHEXParser.LEVEL_END)
452  except RecognitionException as re:
453  localctx.exception = re
454  self._errHandler.reportError(self, re)
455  self._errHandler.recover(self, re)
456  finally:
457  self.exitRule()
458  return localctx
459 
460  class OutputContext(ParserRuleContext):
461 
462  def __init__(self, parser, parent=None, invokingState=-1):
463  super(DLVHEXParser.OutputContext, self).__init__(parent, invokingState)
464  self.parser = parser
465 
466  def answer_set(self, i=None):
467  if i is None:
468  return self.getTypedRuleContexts(DLVHEXParser.Answer_setContext)
469  else:
470  return self.getTypedRuleContext(DLVHEXParser.Answer_setContext,i)
471 
472 
473  def getRuleIndex(self):
474  return DLVHEXParser.RULE_output
475 
476  def accept(self, visitor):
477  if hasattr(visitor, "visitOutput"):
478  return visitor.visitOutput(self)
479  else:
480  return visitor.visitChildren(self)
481 
482 
483 
484 
485  def output(self):
486 
487  localctx = DLVHEXParser.OutputContext(self, self._ctx, self.state)
488  self.enterRule(localctx, 8, self.RULE_output)
489  self._la = 0 # Token type
490  try:
491  self.enterOuterAlt(localctx, 1)
492  self.state = 69
493  self._errHandler.sync(self)
494  _la = self._input.LA(1)
495  while _la==DLVHEXParser.ANSWER_SET_BEGIN or _la==DLVHEXParser.IDENTIFIER:
496  self.state = 66
497  self.answer_set()
498  self.state = 71
499  self._errHandler.sync(self)
500  _la = self._input.LA(1)
501 
502  except RecognitionException as re:
503  localctx.exception = re
504  self._errHandler.reportError(self, re)
505  self._errHandler.recover(self, re)
506  finally:
507  self.exitRule()
508  return localctx
509 
510  class Predicate_atomContext(ParserRuleContext):
511 
512  def __init__(self, parser, parent=None, invokingState=-1):
513  super(DLVHEXParser.Predicate_atomContext, self).__init__(parent, invokingState)
514  self.parser = parser
515 
516  def IDENTIFIER(self):
517  return self.getToken(DLVHEXParser.IDENTIFIER, 0)
518 
519  def TERMS_BEGIN(self):
520  return self.getToken(DLVHEXParser.TERMS_BEGIN, 0)
521 
522  def term(self, i=None):
523  if i is None:
524  return self.getTypedRuleContexts(DLVHEXParser.TermContext)
525  else:
526  return self.getTypedRuleContext(DLVHEXParser.TermContext,i)
527 
528 
529  def TERMS_END(self):
530  return self.getToken(DLVHEXParser.TERMS_END, 0)
531 
532  def COMMA(self, i=None):
533  if i is None:
534  return self.getTokens(DLVHEXParser.COMMA)
535  else:
536  return self.getToken(DLVHEXParser.COMMA, i)
537 
538  def getRuleIndex(self):
539  return DLVHEXParser.RULE_predicate_atom
540 
541  def accept(self, visitor):
542  if hasattr(visitor, "visitPredicate_atom"):
543  return visitor.visitPredicate_atom(self)
544  else:
545  return visitor.visitChildren(self)
546 
547 
548 
549 
550  def predicate_atom(self):
551 
552  localctx = DLVHEXParser.Predicate_atomContext(self, self._ctx, self.state)
553  self.enterRule(localctx, 10, self.RULE_predicate_atom)
554  self._la = 0 # Token type
555  try:
556  self.enterOuterAlt(localctx, 1)
557  self.state = 72
558  self.match(DLVHEXParser.IDENTIFIER)
559  self.state = 84
560  self._errHandler.sync(self)
561  _la = self._input.LA(1)
562  if _la==DLVHEXParser.TERMS_BEGIN:
563  self.state = 73
564  self.match(DLVHEXParser.TERMS_BEGIN)
565  self.state = 74
566  self.term()
567  self.state = 79
568  self._errHandler.sync(self)
569  _la = self._input.LA(1)
570  while _la==DLVHEXParser.COMMA:
571  self.state = 75
572  self.match(DLVHEXParser.COMMA)
573  self.state = 76
574  self.term()
575  self.state = 81
576  self._errHandler.sync(self)
577  _la = self._input.LA(1)
578 
579  self.state = 82
580  self.match(DLVHEXParser.TERMS_END)
581 
582 
583  except RecognitionException as re:
584  localctx.exception = re
585  self._errHandler.reportError(self, re)
586  self._errHandler.recover(self, re)
587  finally:
588  self.exitRule()
589  return localctx
590 
591  class TermContext(ParserRuleContext):
592 
593  def __init__(self, parser, parent=None, invokingState=-1):
594  super(DLVHEXParser.TermContext, self).__init__(parent, invokingState)
595  self.parser = parser
596 
597  def IDENTIFIER(self):
598  return self.getToken(DLVHEXParser.IDENTIFIER, 0)
599 
600  def INTEGER(self):
601  return self.getToken(DLVHEXParser.INTEGER, 0)
602 
603  def predicate_atom(self):
604  return self.getTypedRuleContext(DLVHEXParser.Predicate_atomContext,0)
605 
606 
607  def STRING_CONSTANT(self):
608  return self.getToken(DLVHEXParser.STRING_CONSTANT, 0)
609 
610  def getRuleIndex(self):
611  return DLVHEXParser.RULE_term
612 
613  def accept(self, visitor):
614  if hasattr(visitor, "visitTerm"):
615  return visitor.visitTerm(self)
616  else:
617  return visitor.visitChildren(self)
618 
619 
620 
621 
622  def term(self):
623 
624  localctx = DLVHEXParser.TermContext(self, self._ctx, self.state)
625  self.enterRule(localctx, 12, self.RULE_term)
626  try:
627  self.state = 90
628  self._errHandler.sync(self)
629  la_ = self._interp.adaptivePredict(self._input,10,self._ctx)
630  if la_ == 1:
631  self.enterOuterAlt(localctx, 1)
632  self.state = 86
633  self.match(DLVHEXParser.IDENTIFIER)
634  pass
635 
636  elif la_ == 2:
637  self.enterOuterAlt(localctx, 2)
638  self.state = 87
639  self.match(DLVHEXParser.INTEGER)
640  pass
641 
642  elif la_ == 3:
643  self.enterOuterAlt(localctx, 3)
644  self.state = 88
645  self.predicate_atom()
646  pass
647 
648  elif la_ == 4:
649  self.enterOuterAlt(localctx, 4)
650  self.state = 89
651  self.match(DLVHEXParser.STRING_CONSTANT)
652  pass
653 
654 
655  except RecognitionException as re:
656  localctx.exception = re
657  self._errHandler.reportError(self, re)
658  self._errHandler.recover(self, re)
659  finally:
660  self.exitRule()
661  return localctx
662 
663  class WitnessContext(ParserRuleContext):
664 
665  def __init__(self, parser, parent=None, invokingState=-1):
666  super(DLVHEXParser.WitnessContext, self).__init__(parent, invokingState)
667  self.parser = parser
668 
669  def WITNESS_LABEL(self):
670  return self.getToken(DLVHEXParser.WITNESS_LABEL, 0)
671 
672  def atoms(self):
673  return self.getTypedRuleContext(DLVHEXParser.AtomsContext,0)
674 
675 
676  def getRuleIndex(self):
677  return DLVHEXParser.RULE_witness
678 
679  def accept(self, visitor):
680  if hasattr(visitor, "visitWitness"):
681  return visitor.visitWitness(self)
682  else:
683  return visitor.visitChildren(self)
684 
685 
686 
687 
688  def witness(self):
689 
690  localctx = DLVHEXParser.WitnessContext(self, self._ctx, self.state)
691  self.enterRule(localctx, 14, self.RULE_witness)
692  try:
693  self.enterOuterAlt(localctx, 1)
694  self.state = 92
695  self.match(DLVHEXParser.WITNESS_LABEL)
696  self.state = 93
697  self.atoms()
698  except RecognitionException as re:
699  localctx.exception = re
700  self._errHandler.reportError(self, re)
701  self._errHandler.recover(self, re)
702  finally:
703  self.exitRule()
704  return localctx
705 
706 
707 
708 
709 
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser
Definition: DLVHEXParser.py:45
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.CostContext.level
def level(self, i=None)
Definition: DLVHEXParser.py:342
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.Answer_setContext.parser
parser
Definition: DLVHEXParser.py:116
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.AtomsContext.predicate_atom
def predicate_atom(self, i=None)
Definition: DLVHEXParser.py:257
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.ModelContext
Definition: DLVHEXParser.py:163
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.LevelContext
Definition: DLVHEXParser.py:403
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.Answer_setContext
Definition: DLVHEXParser.py:112
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.WitnessContext.parser
parser
Definition: DLVHEXParser.py:667
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.Predicate_atomContext.parser
parser
Definition: DLVHEXParser.py:514
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.OutputContext.answer_set
def answer_set(self, i=None)
Definition: DLVHEXParser.py:466
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.CostContext.parser
parser
Definition: DLVHEXParser.py:337
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.Answer_setContext.copyFrom
def copyFrom(self, ctx)
Definition: DLVHEXParser.py:123
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.decisionsToDFA
list decisionsToDFA
Definition: DLVHEXParser.py:51
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.LevelContext.parser
parser
Definition: DLVHEXParser.py:407
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.CostContext
Definition: DLVHEXParser.py:333
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser._interp
_interp
Definition: DLVHEXParser.py:107
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.atn
atn
Definition: DLVHEXParser.py:49
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.GroundQueryContext
Definition: DLVHEXParser.py:128
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.AtomsContext.parser
parser
Definition: DLVHEXParser.py:249
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.sharedContextCache
sharedContextCache
Definition: DLVHEXParser.py:53
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.OutputContext.parser
parser
Definition: DLVHEXParser.py:464
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.WitnessContext
Definition: DLVHEXParser.py:663
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.TermContext.parser
parser
Definition: DLVHEXParser.py:595
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.TermContext.predicate_atom
def predicate_atom(self)
Definition: DLVHEXParser.py:603
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.TermContext
Definition: DLVHEXParser.py:591
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser._predicates
_predicates
Definition: DLVHEXParser.py:108
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.Predicate_atomContext.term
def term(self, i=None)
Definition: DLVHEXParser.py:522
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.OutputContext
Definition: DLVHEXParser.py:460
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.ModelContext.atoms
def atoms(self)
Definition: DLVHEXParser.py:169
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.Predicate_atomContext
Definition: DLVHEXParser.py:510
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.AtomsContext
Definition: DLVHEXParser.py:245
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.WitnessContext.atoms
def atoms(self)
Definition: DLVHEXParser.py:672
parsers.asp.dlvhex.DLVHEXParser.DLVHEXParser.AtomsContext.cost
def cost(self)
Definition: DLVHEXParser.py:264