diff options
author | PaulMeng <baolmeng@gmail.com> | 2016-04-20 14:43:18 -0500 |
---|---|---|
committer | PaulMeng <baolmeng@gmail.com> | 2016-04-20 14:43:18 -0500 |
commit | 904ffb6e73402bae537aa89e7fd8f0ab2e9d60e2 (patch) | |
tree | d96bb0c974bdea6170957d3e39d47a98f5c85ca0 /src/parser | |
parent | a0054e9cc78822416d745e955c30f69cbb2a3aa7 (diff) |
update from the master
Diffstat (limited to 'src/parser')
39 files changed, 298 insertions, 260 deletions
diff --git a/src/parser/antlr_input.cpp b/src/parser/antlr_input.cpp index a1f74d694..6edb23a23 100644 --- a/src/parser/antlr_input.cpp +++ b/src/parser/antlr_input.cpp @@ -1,13 +1,13 @@ /********************* */ /*! \file antlr_input.cpp ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters, Kshitij Bansal - ** Minor contributors (to current version): Francois Bobot + ** Top contributors (to current version): + ** Christopher L. Conway, Kshitij Bansal, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief A super-class for ANTLR-generated input language parsers. ** diff --git a/src/parser/antlr_input.h b/src/parser/antlr_input.h index 241d1bc83..8e5e82811 100644 --- a/src/parser/antlr_input.h +++ b/src/parser/antlr_input.h @@ -1,13 +1,13 @@ /********************* */ /*! \file antlr_input.h ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): Tim King, Francois Bobot, Dejan Jovanovic + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief Base for ANTLR parser classes. ** diff --git a/src/parser/antlr_line_buffered_input.cpp b/src/parser/antlr_line_buffered_input.cpp index 99b4a3068..22bbaf1db 100644 --- a/src/parser/antlr_line_buffered_input.cpp +++ b/src/parser/antlr_line_buffered_input.cpp @@ -1,13 +1,13 @@ /********************* */ /*! \file antlr_line_buffered_input.cpp ** \verbatim - ** Original author: Morgan Deters - ** Major contributors: none - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief [[ Add one-line brief description here ]] ** diff --git a/src/parser/antlr_line_buffered_input.h b/src/parser/antlr_line_buffered_input.h index c47ab324f..2c01a9bde 100644 --- a/src/parser/antlr_line_buffered_input.h +++ b/src/parser/antlr_line_buffered_input.h @@ -1,13 +1,13 @@ /********************* */ /*! \file antlr_line_buffered_input.h ** \verbatim - ** Original author: Morgan Deters - ** Major contributors: none - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief [[ Add one-line brief description here ]] ** diff --git a/src/parser/antlr_tracing.h b/src/parser/antlr_tracing.h index 1709e99a2..93a781796 100644 --- a/src/parser/antlr_tracing.h +++ b/src/parser/antlr_tracing.h @@ -1,13 +1,13 @@ /********************* */ /*! \file antlr_tracing.h ** \verbatim - ** Original author: Morgan Deters - ** Major contributors: none - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief [[ Add one-line brief description here ]] ** diff --git a/src/parser/antlr_undefines.h b/src/parser/antlr_undefines.h index 35a6c7e12..edf64c8a6 100644 --- a/src/parser/antlr_undefines.h +++ b/src/parser/antlr_undefines.h @@ -1,13 +1,13 @@ /********************* */ /*! \file antlr_undefines.h ** \verbatim - ** Original author: Tim King - ** Major contributors: none - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2016 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief Every usage undefines standard autotools macro names. ** diff --git a/src/parser/bounded_token_buffer.cpp b/src/parser/bounded_token_buffer.cpp index 716639665..c89005941 100644 --- a/src/parser/bounded_token_buffer.cpp +++ b/src/parser/bounded_token_buffer.cpp @@ -1,13 +1,13 @@ /********************* */ /*! \file bounded_token_buffer.cpp ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: none - ** Minor contributors (to current version): Morgan Deters + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief An ANTLR3 bounded token stream implementation. ** diff --git a/src/parser/bounded_token_buffer.h b/src/parser/bounded_token_buffer.h index d11986754..947b33f69 100644 --- a/src/parser/bounded_token_buffer.h +++ b/src/parser/bounded_token_buffer.h @@ -1,13 +1,13 @@ /********************* */ /*! \file bounded_token_buffer.h ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief An ANTLR3 bounded token stream. ** diff --git a/src/parser/bounded_token_factory.cpp b/src/parser/bounded_token_factory.cpp index 7d130146f..1c5a00958 100644 --- a/src/parser/bounded_token_factory.cpp +++ b/src/parser/bounded_token_factory.cpp @@ -1,13 +1,13 @@ /********************* */ /*! \file bounded_token_factory.cpp ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: none - ** Minor contributors (to current version): Morgan Deters + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief An ANTLR3 bounded token factory implementation. ** diff --git a/src/parser/bounded_token_factory.h b/src/parser/bounded_token_factory.h index 5e5e48fab..8535d49cf 100644 --- a/src/parser/bounded_token_factory.h +++ b/src/parser/bounded_token_factory.h @@ -1,13 +1,13 @@ /********************* */ /*! \file bounded_token_factory.h ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief An ANTLR3 bounded token factory. ** diff --git a/src/parser/cvc/Cvc.g b/src/parser/cvc/Cvc.g index 967503074..c497fcd0d 100644 --- a/src/parser/cvc/Cvc.g +++ b/src/parser/cvc/Cvc.g @@ -1,13 +1,13 @@ /* ******************* */ /*! \file Cvc.g ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): Tim King, Dejan Jovanovic, Tianyi Liang, Andrew Reynolds + ** Top contributors (to current version): + ** Morgan Deters, Christopher L. Conway, Andrew Reynolds ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief Parser for CVC presentation input language ** @@ -213,16 +213,35 @@ tokens { // Strings STRING_TOK = 'STRING'; - SCONCAT_TOK = 'SCONCAT'; - SCONTAINS_TOK = 'CONTAINS'; - SSUBSTR_TOK = 'SUBSTR'; - SINDEXOF_TOK = 'INDEXOF'; - SREPLACE_TOK = 'REPLACE'; - SPREFIXOF_TOK = 'PREFIXOF'; - SSUFFIXOF_TOK = 'SUFFIXOF'; - STOINTEGER_TOK = 'TO_INTEGER'; - STOSTRING_TOK = 'TO_STRING'; - STORE_TOK = 'TO_RE'; + STRING_CONCAT_TOK = 'CONCAT'; + STRING_LENGTH_TOK = 'LENGTH'; + STRING_CONTAINS_TOK = 'CONTAINS'; + STRING_SUBSTR_TOK = 'SUBSTR'; + STRING_CHARAT_TOK = 'CHARAT'; + STRING_INDEXOF_TOK = 'INDEXOF'; + STRING_REPLACE_TOK = 'REPLACE'; + STRING_PREFIXOF_TOK = 'PREFIXOF'; + STRING_SUFFIXOF_TOK = 'SUFFIXOF'; + STRING_STOI_TOK = 'STRING_TO_INTEGER'; + STRING_ITOS_TOK = 'INTEGER_TO_STRING'; + STRING_U16TOS_TOK = 'UINT16_TO_STRING'; + STRING_STOU16_TOK = 'STRING_TO_UINT16'; + STRING_U32TOS_TOK = 'UINT32_TO_STRING'; + STRING_STOU32_TOK = 'STRING_TO_UINT32'; + //Regular expressions (TODO) + //STRING_IN_REGEXP_TOK + //STRING_TO_REGEXP_TOK + //REGEXP_CONCAT_TOK + //REGEXP_UNION_TOK + //REGEXP_INTER_TOK + //REGEXP_STAR_TOK + //REGEXP_PLUS_TOK + //REGEXP_OPT_TOK + //REGEXP_RANGE_TOK + //REGEXP_LOOP_TOK + //REGEXP_EMPTY_TOK + //REGEXP_SIGMA_TOK + FMF_CARD_TOK = 'HAS_CARD'; @@ -367,6 +386,7 @@ Kind getOperatorKind(int type, bool& negate) { case CONCAT_TOK: return kind::BITVECTOR_CONCAT; case BAR: return kind::BITVECTOR_OR; case BVAND_TOK: return kind::BITVECTOR_AND; + } std::stringstream ss; @@ -1694,7 +1714,6 @@ postfixTerm[CVC4::Expr& f] f = MK_EXPR(CVC4::kind::SELECT, f, f2); } } - /* left- or right-shift */ | ( LEFTSHIFT_TOK { left = true; } | RIGHTSHIFT_TOK { left = false; } ) k=numeral @@ -1920,7 +1939,6 @@ bvTerm[CVC4::Expr& f] { f = MK_EXPR(CVC4::kind::BITVECTOR_SGT, f, f2); } | BVSGE_TOK LPAREN formula[f] COMMA formula[f2] RPAREN { f = MK_EXPR(CVC4::kind::BITVECTOR_SGE, f, f2); } - | stringTerm[f] ; @@ -1932,27 +1950,35 @@ stringTerm[CVC4::Expr& f] std::vector<Expr> args; } /* String prefix operators */ - : SCONCAT_TOK LPAREN formula[f] { args.push_back(f); } + : STRING_CONCAT_TOK LPAREN formula[f] { args.push_back(f); } ( COMMA formula[f2] { args.push_back(f2); } )+ RPAREN { f = MK_EXPR(CVC4::kind::STRING_CONCAT, args); } - | SCONTAINS_TOK LPAREN formula[f] COMMA formula[f2] RPAREN + | STRING_LENGTH_TOK LPAREN formula[f] RPAREN + { f = MK_EXPR(CVC4::kind::STRING_LENGTH, f); } + | STRING_CONTAINS_TOK LPAREN formula[f] COMMA formula[f2] RPAREN { f = MK_EXPR(CVC4::kind::STRING_STRCTN, f, f2); } - | SSUBSTR_TOK LPAREN formula[f] COMMA formula[f2] COMMA formula[f3] RPAREN + | STRING_SUBSTR_TOK LPAREN formula[f] COMMA formula[f2] COMMA formula[f3] RPAREN { f = MK_EXPR(CVC4::kind::STRING_SUBSTR, f, f2, f3); } - | SINDEXOF_TOK LPAREN formula[f] COMMA formula[f2] COMMA formula[f3] RPAREN + | STRING_INDEXOF_TOK LPAREN formula[f] COMMA formula[f2] COMMA formula[f3] RPAREN { f = MK_EXPR(CVC4::kind::STRING_STRIDOF, f, f2, f3); } - | SREPLACE_TOK LPAREN formula[f] COMMA formula[f2] COMMA formula[f3] RPAREN + | STRING_REPLACE_TOK LPAREN formula[f] COMMA formula[f2] COMMA formula[f3] RPAREN { f = MK_EXPR(CVC4::kind::STRING_STRREPL, f, f2, f3); } - | SPREFIXOF_TOK LPAREN formula[f] COMMA formula[f2] RPAREN + | STRING_PREFIXOF_TOK LPAREN formula[f] COMMA formula[f2] RPAREN { f = MK_EXPR(CVC4::kind::STRING_PREFIX, f, f2); } - | SSUFFIXOF_TOK LPAREN formula[f] COMMA formula[f2] RPAREN + | STRING_SUFFIXOF_TOK LPAREN formula[f] COMMA formula[f2] RPAREN { f = MK_EXPR(CVC4::kind::STRING_SUFFIX, f, f2); } - | STOINTEGER_TOK LPAREN formula[f] RPAREN + | STRING_STOI_TOK LPAREN formula[f] RPAREN { f = MK_EXPR(CVC4::kind::STRING_STOI, f); } - | STOSTRING_TOK LPAREN formula[f] RPAREN + | STRING_ITOS_TOK LPAREN formula[f] RPAREN { f = MK_EXPR(CVC4::kind::STRING_ITOS, f); } - | STORE_TOK LPAREN formula[f] RPAREN - { f = MK_EXPR(CVC4::kind::STRING_TO_REGEXP, f); } + | STRING_U16TOS_TOK LPAREN formula[f] RPAREN + { f = MK_EXPR(CVC4::kind::STRING_U16TOS, f); } + | STRING_STOU16_TOK LPAREN formula[f] RPAREN + { f = MK_EXPR(CVC4::kind::STRING_STOU16, f); } + | STRING_U32TOS_TOK LPAREN formula[f] RPAREN + { f = MK_EXPR(CVC4::kind::STRING_U32TOS, f); } + | STRING_STOU32_TOK LPAREN formula[f] RPAREN + { f = MK_EXPR(CVC4::kind::STRING_STOU32, f); } /* string literal */ | str[s] @@ -2018,6 +2044,11 @@ simpleTerm[CVC4::Expr& f] } } + /* set cardinality literal */ + | BAR BAR formula[f] { args.push_back(f); } BAR BAR + { f = MK_EXPR(kind::CARD, args[0]); + } + /* array literals */ | ARRAY_TOK /* { PARSER_STATE->pushScope(); } */ LPAREN restrictedType[t, CHECK_DECLARED] OF_TOK restrictedType[t2, CHECK_DECLARED] diff --git a/src/parser/cvc/cvc_input.cpp b/src/parser/cvc/cvc_input.cpp index 2370109ef..9e00567fe 100644 --- a/src/parser/cvc/cvc_input.cpp +++ b/src/parser/cvc/cvc_input.cpp @@ -1,13 +1,13 @@ /********************* */ /*! \file cvc_input.cpp ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief [[ Add file-specific comments here ]]. ** diff --git a/src/parser/cvc/cvc_input.h b/src/parser/cvc/cvc_input.h index a88fd7223..aff3698fc 100644 --- a/src/parser/cvc/cvc_input.h +++ b/src/parser/cvc/cvc_input.h @@ -1,13 +1,13 @@ /********************* */ /*! \file cvc_input.h ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): Dejan Jovanovic + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief [[ Add file-specific comments here ]]. ** diff --git a/src/parser/input.cpp b/src/parser/input.cpp index 896e8bc74..5fadbcc54 100644 --- a/src/parser/input.cpp +++ b/src/parser/input.cpp @@ -1,13 +1,13 @@ /********************* */ /*! \file input.cpp ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): Dejan Jovanovic + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief A super-class for input language parsers. ** diff --git a/src/parser/input.h b/src/parser/input.h index 4ff37409c..7dce369c5 100644 --- a/src/parser/input.h +++ b/src/parser/input.h @@ -1,13 +1,13 @@ /********************* */ /*! \file input.h ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): Francois Bobot + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief Base for parser inputs. ** diff --git a/src/parser/memory_mapped_input_buffer.cpp b/src/parser/memory_mapped_input_buffer.cpp index 7be1c9aba..c9515aa92 100644 --- a/src/parser/memory_mapped_input_buffer.cpp +++ b/src/parser/memory_mapped_input_buffer.cpp @@ -1,13 +1,13 @@ /********************* */ /*! \file memory_mapped_input_buffer.cpp ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): Tim King + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief [[ Add file-specific comments here ]]. ** diff --git a/src/parser/memory_mapped_input_buffer.h b/src/parser/memory_mapped_input_buffer.h index bacd9cb0f..2a34d1197 100644 --- a/src/parser/memory_mapped_input_buffer.h +++ b/src/parser/memory_mapped_input_buffer.h @@ -1,13 +1,13 @@ /********************* */ /*! \file memory_mapped_input_buffer.h ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief ANTLR input buffer from a memory-mapped file. ** diff --git a/src/parser/parser.cpp b/src/parser/parser.cpp index b9531e8d9..712494805 100644 --- a/src/parser/parser.cpp +++ b/src/parser/parser.cpp @@ -1,13 +1,13 @@ /********************* */ /*! \file parser.cpp ** \verbatim - ** Original author: Morgan Deters - ** Major contributors: Christopher L. Conway - ** Minor contributors (to current version): Tim King, Dejan Jovanovic, Kshitij Bansal, Andrew Reynolds + ** Top contributors (to current version): + ** Morgan Deters, Christopher L. Conway, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief Parser state implementation. ** diff --git a/src/parser/parser.h b/src/parser/parser.h index 9c2c7f7be..54f25ae74 100644 --- a/src/parser/parser.h +++ b/src/parser/parser.h @@ -1,13 +1,13 @@ /********************* */ /*! \file parser.h ** \verbatim - ** Original author: Morgan Deters - ** Major contributors: Christopher L. Conway - ** Minor contributors (to current version): Dejan Jovanovic, Kshitij Bansal, Francois Bobot, Andrew Reynolds + ** Top contributors (to current version): + ** Morgan Deters, Christopher L. Conway, Andrew Reynolds ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief A collection of state for use by parser implementations. ** diff --git a/src/parser/parser_builder.cpp b/src/parser/parser_builder.cpp index e095d208b..8580d5672 100644 --- a/src/parser/parser_builder.cpp +++ b/src/parser/parser_builder.cpp @@ -1,13 +1,13 @@ /********************* */ /*! \file parser_builder.cpp ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): Dejan Jovanovic, Francois Bobot + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief A builder for parsers. ** diff --git a/src/parser/parser_builder.h b/src/parser/parser_builder.h index fe652286b..68dd684c1 100644 --- a/src/parser/parser_builder.h +++ b/src/parser/parser_builder.h @@ -1,13 +1,13 @@ /********************* */ /*! \file parser_builder.h ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief A builder for parsers. ** diff --git a/src/parser/parser_exception.h b/src/parser/parser_exception.h index de47767c9..d83aab299 100644 --- a/src/parser/parser_exception.h +++ b/src/parser/parser_exception.h @@ -1,13 +1,13 @@ /********************* */ /*! \file parser_exception.h ** \verbatim - ** Original author: Morgan Deters - ** Major contributors: Christopher L. Conway - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Morgan Deters, Christopher L. Conway, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief Exception class for parse errors. ** diff --git a/src/parser/smt1/Smt1.g b/src/parser/smt1/Smt1.g index a8e797470..824e6db8b 100644 --- a/src/parser/smt1/Smt1.g +++ b/src/parser/smt1/Smt1.g @@ -1,13 +1,13 @@ /* ******************* */ /*! \file Smt1.g ** \verbatim - ** Original author: Morgan Deters - ** Major contributors: Dejan Jovanovic, Christopher L. Conway - ** Minor contributors (to current version): Andrew Reynolds, Tim King + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Dejan Jovanovic ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief Parser for SMT-LIB input language. ** diff --git a/src/parser/smt1/smt1.cpp b/src/parser/smt1/smt1.cpp index a2abee2e7..50f62009a 100644 --- a/src/parser/smt1/smt1.cpp +++ b/src/parser/smt1/smt1.cpp @@ -1,13 +1,13 @@ /********************* */ /*! \file smt1.cpp ** \verbatim - ** Original author: Morgan Deters - ** Major contributors: Christopher L. Conway - ** Minor contributors (to current version): Tim King, Tianyi Liang, Dejan Jovanovic, Clark Barrett + ** Top contributors (to current version): + ** Morgan Deters, Christopher L. Conway, Clark Barrett ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** Definitions of SMT-LIB (v1) constants. **/ diff --git a/src/parser/smt1/smt1.h b/src/parser/smt1/smt1.h index 20ba0401c..45de222ac 100644 --- a/src/parser/smt1/smt1.h +++ b/src/parser/smt1/smt1.h @@ -1,13 +1,13 @@ /********************* */ /*! \file smt1.h ** \verbatim - ** Original author: Morgan Deters - ** Major contributors: Christopher L. Conway - ** Minor contributors (to current version): Andrew Reynolds, Clark Barrett, Tianyi Liang + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** Definitions of SMT constants. **/ diff --git a/src/parser/smt1/smt1_input.cpp b/src/parser/smt1/smt1_input.cpp index 8a8aa577e..69801e8b4 100644 --- a/src/parser/smt1/smt1_input.cpp +++ b/src/parser/smt1/smt1_input.cpp @@ -1,13 +1,13 @@ /********************* */ /*! \file smt1_input.cpp ** \verbatim - ** Original author: Morgan Deters - ** Major contributors: Christopher L. Conway - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief [[ Add file-specific comments here ]]. ** diff --git a/src/parser/smt1/smt1_input.h b/src/parser/smt1/smt1_input.h index de21036c0..0e719f519 100644 --- a/src/parser/smt1/smt1_input.h +++ b/src/parser/smt1/smt1_input.h @@ -1,13 +1,13 @@ /********************* */ /*! \file smt1_input.h ** \verbatim - ** Original author: Morgan Deters - ** Major contributors: Christopher L. Conway - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief [[ Add file-specific comments here ]]. ** diff --git a/src/parser/smt2/Smt2.g b/src/parser/smt2/Smt2.g index fb3b5ec5e..38163c579 100644 --- a/src/parser/smt2/Smt2.g +++ b/src/parser/smt2/Smt2.g @@ -1,13 +1,13 @@ /* ******************* */ /*! \file Smt2.g ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): Dejan Jovanovic, Kshitij Bansal, Tianyi Liang, Francois Bobot, Andrew Reynolds + ** Top contributors (to current version): + ** Morgan Deters, Andrew Reynolds, Christopher L. Conway ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief Parser for SMT-LIB v2 input language ** @@ -765,9 +765,7 @@ sygusCommand returns [CVC4::Command* cmd = NULL] Command* c = new SetUserAttributeCommand("sygus", sygusVar); c->setMuted(true); PARSER_STATE->preemptCommand(c); - c = new AssertCommand(body); - PARSER_STATE->preemptCommand(c); - $cmd = new CheckSatCommand(); + $cmd = new CheckSynthCommand(body); } | c = command { $cmd = c; } // /* error handling */ @@ -1302,6 +1300,12 @@ extendedCommand[CVC4::Command*& cmd] | SIMPLIFY_TOK { PARSER_STATE->checkThatLogicIsSet(); } term[e,e2] { cmd = new SimplifyCommand(e); } + | GET_QE_TOK { PARSER_STATE->checkThatLogicIsSet(); } + term[e,e2] + { cmd = new GetQuantifierEliminationCommand(e, true); } + | GET_QE_DISJUNCT_TOK { PARSER_STATE->checkThatLogicIsSet(); } + term[e,e2] + { cmd = new GetQuantifierEliminationCommand(e, false); } ; @@ -2562,6 +2566,8 @@ DECLARE_CONST_TOK : 'declare-const'; DEFINE_CONST_TOK : 'define-const'; SIMPLIFY_TOK : 'simplify'; INCLUDE_TOK : 'include'; +GET_QE_TOK : 'get-qe'; +GET_QE_DISJUNCT_TOK : 'get-qe-disjunct'; // SyGuS commands SYNTH_FUN_TOK : 'synth-fun'; diff --git a/src/parser/smt2/smt2.cpp b/src/parser/smt2/smt2.cpp index ff22dd9c7..463adcb54 100644 --- a/src/parser/smt2/smt2.cpp +++ b/src/parser/smt2/smt2.cpp @@ -1,13 +1,13 @@ /********************* */ /*! \file smt2.cpp ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Kshitij Bansal, Morgan Deters - ** Minor contributors (to current version): Andrew Reynolds, Clark Barrett, Tianyi Liang + ** Top contributors (to current version): + ** Andrew Reynolds, Kshitij Bansal, Morgan Deters ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief Definitions of SMT2 constants. ** @@ -230,6 +230,7 @@ void Smt2::addTheory(Theory theory) { addOperator(kind::PRODUCT, "product"); addOperator(kind::SINGLETON, "singleton"); addOperator(kind::INSERT, "insert"); + addOperator(kind::CARD, "card"); break; case THEORY_DATATYPES: diff --git a/src/parser/smt2/smt2.h b/src/parser/smt2/smt2.h index 7cf92f008..1ae2c9dd7 100644 --- a/src/parser/smt2/smt2.h +++ b/src/parser/smt2/smt2.h @@ -1,13 +1,13 @@ /********************* */ /*! \file smt2.h ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): Tianyi Liang, Kshitij Bansal + ** Top contributors (to current version): + ** Morgan Deters, Andrew Reynolds, Christopher L. Conway ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief Definitions of SMT2 constants. ** diff --git a/src/parser/smt2/smt2_input.cpp b/src/parser/smt2/smt2_input.cpp index cea6db278..7aa4c3441 100644 --- a/src/parser/smt2/smt2_input.cpp +++ b/src/parser/smt2/smt2_input.cpp @@ -1,13 +1,13 @@ /********************* */ /*! \file smt2_input.cpp ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief [[ Add file-specific comments here ]]. ** diff --git a/src/parser/smt2/smt2_input.h b/src/parser/smt2/smt2_input.h index 9a07ddc08..0ed88393f 100644 --- a/src/parser/smt2/smt2_input.h +++ b/src/parser/smt2/smt2_input.h @@ -1,13 +1,13 @@ /********************* */ /*! \file smt2_input.h ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Christopher L. Conway, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief [[ Add file-specific comments here ]]. ** diff --git a/src/parser/smt2/sygus_input.cpp b/src/parser/smt2/sygus_input.cpp index e4f36b3df..5b20e0a9a 100644 --- a/src/parser/smt2/sygus_input.cpp +++ b/src/parser/smt2/sygus_input.cpp @@ -1,13 +1,13 @@ /********************* */ /*! \file sygus_input.cpp ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief [[ Add file-specific comments here ]]. ** diff --git a/src/parser/smt2/sygus_input.h b/src/parser/smt2/sygus_input.h index 1f0078076..50bc973e9 100644 --- a/src/parser/smt2/sygus_input.h +++ b/src/parser/smt2/sygus_input.h @@ -1,13 +1,13 @@ /********************* */ /*! \file sygus_input.h ** \verbatim - ** Original author: Christopher L. Conway - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief [[ Add file-specific comments here ]]. ** diff --git a/src/parser/tptp/Tptp.g b/src/parser/tptp/Tptp.g index d57aea376..73dcfa6cb 100644 --- a/src/parser/tptp/Tptp.g +++ b/src/parser/tptp/Tptp.g @@ -1,13 +1,13 @@ /* ******************* */ /*! \file Tptp.g ** \verbatim - ** Original author: Francois Bobot - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Morgan Deters, Francois Bobot, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief Parser for TPTP input language. ** diff --git a/src/parser/tptp/tptp.cpp b/src/parser/tptp/tptp.cpp index 9d3bd4b1c..193c27e11 100644 --- a/src/parser/tptp/tptp.cpp +++ b/src/parser/tptp/tptp.cpp @@ -1,13 +1,13 @@ /********************* */ /*! \file tptp.cpp ** \verbatim - ** Original author: Francois Bobot - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): none + ** Top contributors (to current version): + ** Francois Bobot, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief Definitions of TPTP constants. ** diff --git a/src/parser/tptp/tptp.h b/src/parser/tptp/tptp.h index 0937a11bf..06b7fac3c 100644 --- a/src/parser/tptp/tptp.h +++ b/src/parser/tptp/tptp.h @@ -1,13 +1,13 @@ /********************* */ /*! \file tptp.h ** \verbatim - ** Original author: Francois Bobot - ** Major contributors: Morgan Deters - ** Minor contributors (to current version): Andrew Reynolds + ** Top contributors (to current version): + ** Francois Bobot, Morgan Deters, Tim King ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief Definitions of TPTP constants. ** diff --git a/src/parser/tptp/tptp_input.cpp b/src/parser/tptp/tptp_input.cpp index 5a393a58c..42337b42b 100644 --- a/src/parser/tptp/tptp_input.cpp +++ b/src/parser/tptp/tptp_input.cpp @@ -1,13 +1,13 @@ /********************* */ /*! \file tptp_input.cpp ** \verbatim - ** Original author: Francois Bobot - ** Major contributors: none - ** Minor contributors (to current version): Morgan Deters + ** Top contributors (to current version): + ** Francois Bobot, Tim King, Morgan Deters ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief [[ Add file-specific comments here ]]. ** diff --git a/src/parser/tptp/tptp_input.h b/src/parser/tptp/tptp_input.h index 6357beae1..28bf1828a 100644 --- a/src/parser/tptp/tptp_input.h +++ b/src/parser/tptp/tptp_input.h @@ -1,13 +1,13 @@ /********************* */ /*! \file tptp_input.h ** \verbatim - ** Original author: Francois Bobot - ** Major contributors: none - ** Minor contributors (to current version): Morgan Deters + ** Top contributors (to current version): + ** Francois Bobot, Tim King, Morgan Deters ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2014 New York University and The University of Iowa - ** See the file COPYING in the top-level source directory for licensing - ** information.\endverbatim + ** Copyright (c) 2009-2016 by the authors listed in the file AUTHORS + ** in the top-level source directory) and their institutional affiliations. + ** All rights reserved. See the file COPYING in the top-level source + ** directory for licensing information.\endverbatim ** ** \brief [[ Add file-specific comments here ]]. ** |