diff options
author | Aina Niemetz <aina.niemetz@gmail.com> | 2021-04-12 12:31:43 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-12 19:31:43 +0000 |
commit | 7ec30058750611786b1b597816c8a23e28bb5812 (patch) | |
tree | e59b1de0078dc04d3a9c212cf9e6ebfd70cbb7f4 /src/theory/uf | |
parent | 7361b587e9a1b717dfa906d02f66feb6896e80dd (diff) |
Refactor and update copyright headers. (#6316)
Diffstat (limited to 'src/theory/uf')
24 files changed, 402 insertions, 389 deletions
diff --git a/src/theory/uf/cardinality_extension.cpp b/src/theory/uf/cardinality_extension.cpp index 6ba459452..b45ccbac3 100644 --- a/src/theory/uf/cardinality_extension.cpp +++ b/src/theory/uf/cardinality_extension.cpp @@ -1,16 +1,17 @@ -/********************* */ -/*! \file cardinality_extension.cpp - ** \verbatim - ** Top contributors (to current version): - ** Andrew Reynolds, Morgan Deters, Tim King - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 Implementation of theory of UF with cardinality. - **/ +/****************************************************************************** + * Top contributors (to current version): + * Andrew Reynolds, Morgan Deters, Tim King + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * Implementation of theory of UF with cardinality. + */ #include "theory/uf/cardinality_extension.h" diff --git a/src/theory/uf/cardinality_extension.h b/src/theory/uf/cardinality_extension.h index c7a6e596f..d071264f2 100644 --- a/src/theory/uf/cardinality_extension.h +++ b/src/theory/uf/cardinality_extension.h @@ -1,16 +1,17 @@ -/********************* */ -/*! \file cardinality_extension.h - ** \verbatim - ** Top contributors (to current version): - ** Andrew Reynolds, Morgan Deters, Tim King - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 Theory of UF with cardinality. - **/ +/****************************************************************************** + * Top contributors (to current version): + * Andrew Reynolds, Morgan Deters, Tim King + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * Theory of UF with cardinality. + */ #include "cvc4_private.h" diff --git a/src/theory/uf/eq_proof.cpp b/src/theory/uf/eq_proof.cpp index 25f5a3faa..8e5e0f659 100644 --- a/src/theory/uf/eq_proof.cpp +++ b/src/theory/uf/eq_proof.cpp @@ -1,17 +1,17 @@ -/********************* */ -/*! \file eq_proof.cpp - ** \verbatim - ** Top contributors (to current version): - ** Haniel Barbosa, Andrew Reynolds - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 Implementation of a proof as produced by the equality engine. - ** - **/ +/****************************************************************************** + * Top contributors (to current version): + * Haniel Barbosa, Andrew Reynolds, Aina Niemetz + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * Implementation of a proof as produced by the equality engine. + */ #include "theory/uf/eq_proof.h" diff --git a/src/theory/uf/eq_proof.h b/src/theory/uf/eq_proof.h index 0578ce270..70be8e939 100644 --- a/src/theory/uf/eq_proof.h +++ b/src/theory/uf/eq_proof.h @@ -1,17 +1,17 @@ -/********************* */ -/*! \file eq_proof.h - ** \verbatim - ** Top contributors (to current version): - ** Haniel Barbosa, Dejan Jovanovic, Morgan Deters - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 proof as produced by the equality engine. - ** - **/ +/****************************************************************************** + * Top contributors (to current version): + * Haniel Barbosa + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * A proof as produced by the equality engine. + */ #include "cvc4_private.h" #include "expr/node.h" diff --git a/src/theory/uf/equality_engine.cpp b/src/theory/uf/equality_engine.cpp index 17c2d5a5c..fe7b0ab84 100644 --- a/src/theory/uf/equality_engine.cpp +++ b/src/theory/uf/equality_engine.cpp @@ -1,19 +1,20 @@ -/********************* */ -/*! \file equality_engine.cpp - ** \verbatim - ** Top contributors (to current version): - ** Dejan Jovanovic, Andrew Reynolds, Haniel Barbosa - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 ]] - ** - ** [[ Add lengthier description here ]] - ** \todo document this file - **/ +/****************************************************************************** + * Top contributors (to current version): + * Dejan Jovanovic, Andrew Reynolds, Haniel Barbosa + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * [[ Add one-line brief description here ]] + * + * + * [[ Add lengthier description here ]] + * \todo document this file + */ #include "theory/uf/equality_engine.h" diff --git a/src/theory/uf/equality_engine.h b/src/theory/uf/equality_engine.h index a0375a77d..7cc2918d0 100644 --- a/src/theory/uf/equality_engine.h +++ b/src/theory/uf/equality_engine.h @@ -1,19 +1,20 @@ -/********************* */ -/*! \file equality_engine.h - ** \verbatim - ** Top contributors (to current version): - ** Dejan Jovanovic, Andrew Reynolds, Morgan Deters - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 ]] - ** - ** [[ Add lengthier description here ]] - ** \todo document this file - **/ +/****************************************************************************** + * Top contributors (to current version): + * Dejan Jovanovic, Andrew Reynolds, Morgan Deters + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * [[ Add one-line brief description here ]] + * + * [[ Add lengthier description here ]] + * \todo document this file + */ #include "cvc4_private.h" diff --git a/src/theory/uf/equality_engine_iterator.cpp b/src/theory/uf/equality_engine_iterator.cpp index 4be4f5462..14cc00414 100644 --- a/src/theory/uf/equality_engine_iterator.cpp +++ b/src/theory/uf/equality_engine_iterator.cpp @@ -1,16 +1,17 @@ -/********************* */ -/*! \file equality_engine_iterator.cpp - ** \verbatim - ** Top contributors (to current version): - ** Andrew Reynolds, Dejan Jovanovic, Morgan Deters - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 Implementation of iterator class for equality engine - **/ +/****************************************************************************** + * Top contributors (to current version): + * Andrew Reynolds, Dejan Jovanovic, Morgan Deters + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * Implementation of iterator class for equality engine. + */ #include "theory/uf/equality_engine_iterator.h" diff --git a/src/theory/uf/equality_engine_iterator.h b/src/theory/uf/equality_engine_iterator.h index 8cd8bb686..a5e521ee4 100644 --- a/src/theory/uf/equality_engine_iterator.h +++ b/src/theory/uf/equality_engine_iterator.h @@ -1,16 +1,17 @@ -/********************* */ -/*! \file equality_engine_iterator.h - ** \verbatim - ** Top contributors (to current version): - ** Andrew Reynolds, Dejan Jovanovic, Tim King - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 Iterator class for equality engine - **/ +/****************************************************************************** + * Top contributors (to current version): + * Andrew Reynolds, Dejan Jovanovic, Tim King + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * Iterator class for equality engine. + */ #include "cvc4_private.h" diff --git a/src/theory/uf/equality_engine_notify.h b/src/theory/uf/equality_engine_notify.h index fff01402f..b634f3dcc 100644 --- a/src/theory/uf/equality_engine_notify.h +++ b/src/theory/uf/equality_engine_notify.h @@ -1,16 +1,17 @@ -/********************* */ -/*! \file equality_engine_notify.h - ** \verbatim - ** Top contributors (to current version): - ** Andrew Reynolds, Morgan Deters, Dejan Jovanovic - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 The virtual class for notifications from the equality engine. - **/ +/****************************************************************************** + * Top contributors (to current version): + * Morgan Deters, Dejan Jovanovic, Andrew Reynolds + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * The virtual class for notifications from the equality engine. + */ #include "cvc4_private.h" diff --git a/src/theory/uf/equality_engine_types.h b/src/theory/uf/equality_engine_types.h index e2a271ceb..8a5692bde 100644 --- a/src/theory/uf/equality_engine_types.h +++ b/src/theory/uf/equality_engine_types.h @@ -1,19 +1,20 @@ -/********************* */ -/*! \file equality_engine_types.h - ** \verbatim - ** Top contributors (to current version): - ** Dejan Jovanovic, Andrew Reynolds, Haniel Barbosa - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 ]] - ** - ** [[ Add lengthier description here ]] - ** \todo document this file - **/ +/****************************************************************************** + * Top contributors (to current version): + * Dejan Jovanovic, Andrew Reynolds, Haniel Barbosa + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * [[ Add one-line brief description here ]] + * + * [[ Add lengthier description here ]] + * \todo document this file + */ #include "cvc4_private.h" diff --git a/src/theory/uf/ho_extension.cpp b/src/theory/uf/ho_extension.cpp index 78171349d..edd61fd2a 100644 --- a/src/theory/uf/ho_extension.cpp +++ b/src/theory/uf/ho_extension.cpp @@ -1,17 +1,17 @@ -/********************* */ -/*! \file ho_extension.cpp - ** \verbatim - ** Top contributors (to current version): - ** Andrew Reynolds, Gereon Kremer, Mathias Preiner - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 Implementation of the higher-order extension of TheoryUF. - ** - **/ +/****************************************************************************** + * Top contributors (to current version): + * Andrew Reynolds, Gereon Kremer, Mathias Preiner + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * Implementation of the higher-order extension of TheoryUF. + */ #include "theory/uf/ho_extension.h" diff --git a/src/theory/uf/ho_extension.h b/src/theory/uf/ho_extension.h index 184be6522..715afbe52 100644 --- a/src/theory/uf/ho_extension.h +++ b/src/theory/uf/ho_extension.h @@ -1,16 +1,17 @@ -/********************* */ -/*! \file ho_extension.h - ** \verbatim - ** Top contributors (to current version): - ** Andrew Reynolds - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 The higher-order extension of TheoryUF. - **/ +/****************************************************************************** + * Top contributors (to current version): + * Andrew Reynolds + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * The higher-order extension of TheoryUF. + */ #include "cvc4_private.h" diff --git a/src/theory/uf/proof_checker.cpp b/src/theory/uf/proof_checker.cpp index cc1630b98..eb43341a0 100644 --- a/src/theory/uf/proof_checker.cpp +++ b/src/theory/uf/proof_checker.cpp @@ -1,16 +1,17 @@ -/********************* */ -/*! \file proof_checker.cpp - ** \verbatim - ** Top contributors (to current version): - ** Haniel Barbosa, Andrew Reynolds - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 Implementation of equality proof checker - **/ +/****************************************************************************** + * Top contributors (to current version): + * Haniel Barbosa, Andrew Reynolds, Aina Niemetz + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * Implementation of equality proof checker. + */ #include "theory/uf/proof_checker.h" diff --git a/src/theory/uf/proof_checker.h b/src/theory/uf/proof_checker.h index f3e20aea5..4ab6b0685 100644 --- a/src/theory/uf/proof_checker.h +++ b/src/theory/uf/proof_checker.h @@ -1,16 +1,17 @@ -/********************* */ -/*! \file proof_checker.h - ** \verbatim - ** Top contributors (to current version): - ** Haniel Barbosa - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 Equality proof checker utility - **/ +/****************************************************************************** + * Top contributors (to current version): + * Haniel Barbosa + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * Equality proof checker utility. + */ #include "cvc4_private.h" diff --git a/src/theory/uf/proof_equality_engine.cpp b/src/theory/uf/proof_equality_engine.cpp index 3d6176840..ab36cd9df 100644 --- a/src/theory/uf/proof_equality_engine.cpp +++ b/src/theory/uf/proof_equality_engine.cpp @@ -1,16 +1,17 @@ -/********************* */ -/*! \file proof_equality_engine.cpp - ** \verbatim - ** Top contributors (to current version): - ** Andrew Reynolds, Gereon Kremer - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 Implementation of the proof-producing equality engine - **/ +/****************************************************************************** + * Top contributors (to current version): + * Andrew Reynolds, Gereon Kremer, Aina Niemetz + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * Implementation of the proof-producing equality engine. + */ #include "theory/uf/proof_equality_engine.h" diff --git a/src/theory/uf/proof_equality_engine.h b/src/theory/uf/proof_equality_engine.h index a1545be8f..bf96dafc8 100644 --- a/src/theory/uf/proof_equality_engine.h +++ b/src/theory/uf/proof_equality_engine.h @@ -1,16 +1,17 @@ -/********************* */ -/*! \file proof_equality_engine.h - ** \verbatim - ** Top contributors (to current version): - ** Andrew Reynolds, Haniel Barbosa - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 The proof-producing equality engine - **/ +/****************************************************************************** + * Top contributors (to current version): + * Andrew Reynolds, Gereon Kremer, Haniel Barbosa + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * The proof-producing equality engine. + */ #include "cvc4_private.h" diff --git a/src/theory/uf/symmetry_breaker.cpp b/src/theory/uf/symmetry_breaker.cpp index b52e39ebc..49b056f5a 100644 --- a/src/theory/uf/symmetry_breaker.cpp +++ b/src/theory/uf/symmetry_breaker.cpp @@ -1,43 +1,41 @@ -/********************* */ -/*! \file symmetry_breaker.cpp - ** \verbatim - ** Top contributors (to current version): - ** Morgan Deters, Mathias Preiner, Liana Hadarean - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 Implementation of algorithm suggested by Deharbe, Fontaine, - ** Merz, and Paleo, "Exploiting symmetry in SMT problems," CADE 2011 - ** - ** Implementation of algorithm suggested by Deharbe, Fontaine, Merz, - ** and Paleo, "Exploiting symmetry in SMT problems," CADE 2011. - ** - ** From the paper: - ** - ** <pre> - ** \f$ P := guess\_permutations(\phi) \f$ - ** foreach \f$ {c_0, ..., c_n} \in P \f$ do - ** if \f$ invariant\_by\_permutations(\phi, {c_0, ..., c_n}) \f$ then - ** T := \f$ select\_terms(\phi, {c_0, ..., c_n}) \f$ - ** cts := \f$ \emptyset \f$ - ** while T != \f$ \empty \wedge |cts| <= n \f$ do - ** \f$ t := select\_most\_promising\_term(T, \phi) \f$ - ** \f$ T := T \setminus {t} \f$ - ** cts := cts \f$ \cup used\_in(t, {c_0, ..., c_n}) \f$ - ** let \f$ c \in {c_0, ..., c_n} \setminus cts \f$ - ** cts := cts \f$ \cup {c} \f$ - ** if cts != \f$ {c_0, ..., c_n} \f$ then - ** \f$ \phi := \phi \wedge ( \vee_{c_i \in cts} t = c_i ) \f$ - ** end - ** end - ** end - ** end - ** return \f$ \phi \f$ - ** </pre> - **/ +/****************************************************************************** + * Top contributors (to current version): + * Morgan Deters, Mathias Preiner, Liana Hadarean + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * Implementation of algorithm suggested by Deharbe, Fontaine, Merz, + * and Paleo, "Exploiting symmetry in SMT problems," CADE 2011. + * + * From the paper: + * + * <pre> + * \f$ P := guess\_permutations(\phi) \f$ + * foreach \f$ {c_0, ..., c_n} \in P \f$ do + * if \f$ invariant\_by\_permutations(\phi, {c_0, ..., c_n}) \f$ then + * T := \f$ select\_terms(\phi, {c_0, ..., c_n}) \f$ + * cts := \f$ \emptyset \f$ + * while T != \f$ \empty \wedge |cts| <= n \f$ do + * \f$ t := select\_most\_promising\_term(T, \phi) \f$ + * \f$ T := T \setminus {t} \f$ + * cts := cts \f$ \cup used\_in(t, {c_0, ..., c_n}) \f$ + * let \f$ c \in {c_0, ..., c_n} \setminus cts \f$ + * cts := cts \f$ \cup {c} \f$ + * if cts != \f$ {c_0, ..., c_n} \f$ then + * \f$ \phi := \phi \wedge ( \vee_{c_i \in cts} t = c_i ) \f$ + * end + * end + * end + * end + * return \f$ \phi \f$ + * </pre> + */ #include "theory/uf/symmetry_breaker.h" #include "theory/rewriter.h" diff --git a/src/theory/uf/symmetry_breaker.h b/src/theory/uf/symmetry_breaker.h index 169794f3d..f2dd9c5f1 100644 --- a/src/theory/uf/symmetry_breaker.h +++ b/src/theory/uf/symmetry_breaker.h @@ -1,43 +1,41 @@ -/********************* */ -/*! \file symmetry_breaker.h - ** \verbatim - ** Top contributors (to current version): - ** Morgan Deters, Liana Hadarean, Tim King - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 Implementation of algorithm suggested by Deharbe, Fontaine, - ** Merz, and Paleo, "Exploiting symmetry in SMT problems," CADE 2011 - ** - ** Implementation of algorithm suggested by Deharbe, Fontaine, Merz, - ** and Paleo, "Exploiting symmetry in SMT problems," CADE 2011. - ** - ** From the paper: - ** - ** <pre> - ** \f$ P := guess\_permutations(\phi) \f$ - ** foreach \f$ {c_0, ..., c_n} \in P \f$ do - ** if \f$ invariant\_by\_permutations(\phi, {c_0, ..., c_n}) \f$ then - ** T := \f$ select\_terms(\phi, {c_0, ..., c_n}) \f$ - ** cts := \f$ \emptyset \f$ - ** while T != \f$ \empty \wedge |cts| <= n \f$ do - ** \f$ t := select\_most\_promising\_term(T, \phi) \f$ - ** \f$ T := T \setminus {t} \f$ - ** cts := cts \f$ \cup used\_in(t, {c_0, ..., c_n}) \f$ - ** let \f$ c \in {c_0, ..., c_n} \setminus cts \f$ - ** cts := cts \f$ \cup {c} \f$ - ** if cts != \f$ {c_0, ..., c_n} \f$ then - ** \f$ \phi := \phi \wedge ( \vee_{c_i \in cts} t = c_i ) \f$ - ** end - ** end - ** end - ** end - ** return \f$ \phi \f$ - ** </pre> - **/ +/****************************************************************************** + * Top contributors (to current version): + * Morgan Deters, Liana Hadarean, Tim King + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * Implementation of algorithm suggested by Deharbe, Fontaine, Merz, + * and Paleo, "Exploiting symmetry in SMT problems," CADE 2011. + * + * From the paper: + * + * <pre> + * \f$ P := guess\_permutations(\phi) \f$ + * foreach \f$ {c_0, ..., c_n} \in P \f$ do + * if \f$ invariant\_by\_permutations(\phi, {c_0, ..., c_n}) \f$ then + * T := \f$ select\_terms(\phi, {c_0, ..., c_n}) \f$ + * cts := \f$ \emptyset \f$ + * while T != \f$ \empty \wedge |cts| <= n \f$ do + * \f$ t := select\_most\_promising\_term(T, \phi) \f$ + * \f$ T := T \setminus {t} \f$ + * cts := cts \f$ \cup used\_in(t, {c_0, ..., c_n}) \f$ + * let \f$ c \in {c_0, ..., c_n} \setminus cts \f$ + * cts := cts \f$ \cup {c} \f$ + * if cts != \f$ {c_0, ..., c_n} \f$ then + * \f$ \phi := \phi \wedge ( \vee_{c_i \in cts} t = c_i ) \f$ + * end + * end + * end + * end + * return \f$ \phi \f$ + * </pre> + */ #include "cvc4_private.h" diff --git a/src/theory/uf/theory_uf.cpp b/src/theory/uf/theory_uf.cpp index e23bc0c45..9fa86f402 100644 --- a/src/theory/uf/theory_uf.cpp +++ b/src/theory/uf/theory_uf.cpp @@ -1,19 +1,19 @@ -/********************* */ -/*! \file theory_uf.cpp - ** \verbatim - ** Top contributors (to current version): - ** Andrew Reynolds, Morgan Deters, Dejan Jovanovic - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 This is the interface to TheoryUF implementations - ** - ** This is the interface to TheoryUF implementations. All - ** implementations of TheoryUF should inherit from this class. - **/ +/****************************************************************************** + * Top contributors (to current version): + * Andrew Reynolds, Morgan Deters, Dejan Jovanovic + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * This is the interface to TheoryUF implementations + * + * All implementations of TheoryUF should inherit from this class. + */ #include "theory/uf/theory_uf.h" diff --git a/src/theory/uf/theory_uf.h b/src/theory/uf/theory_uf.h index 314ffa63c..2f037fc88 100644 --- a/src/theory/uf/theory_uf.h +++ b/src/theory/uf/theory_uf.h @@ -1,19 +1,19 @@ -/********************* */ -/*! \file theory_uf.h - ** \verbatim - ** Top contributors (to current version): - ** Andrew Reynolds, Morgan Deters, Tim King - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 This is the interface to TheoryUF implementations - ** - ** This is the interface to TheoryUF implementations. All - ** implementations of TheoryUF should inherit from this class. - **/ +/****************************************************************************** + * Top contributors (to current version): + * Andrew Reynolds, Morgan Deters, Mathias Preiner + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * This is the interface to TheoryUF implementations + * + * All implementations of TheoryUF should inherit from this class. + */ #include "cvc4_private.h" diff --git a/src/theory/uf/theory_uf_model.cpp b/src/theory/uf/theory_uf_model.cpp index f43543fce..861f12d64 100644 --- a/src/theory/uf/theory_uf_model.cpp +++ b/src/theory/uf/theory_uf_model.cpp @@ -1,16 +1,17 @@ -/********************* */ -/*! \file theory_uf_model.cpp - ** \verbatim - ** Top contributors (to current version): - ** Andrew Reynolds, Morgan Deters, Mathias Preiner - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 Implementation of Theory UF Model - **/ +/****************************************************************************** + * Top contributors (to current version): + * Andrew Reynolds, Morgan Deters, Mathias Preiner + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * Implementation of Theory UF Model. + */ #include "theory/uf/theory_uf_model.h" diff --git a/src/theory/uf/theory_uf_model.h b/src/theory/uf/theory_uf_model.h index 74ce90650..6e634b61e 100644 --- a/src/theory/uf/theory_uf_model.h +++ b/src/theory/uf/theory_uf_model.h @@ -1,16 +1,17 @@ -/********************* */ -/*! \file theory_uf_model.h - ** \verbatim - ** Top contributors (to current version): - ** Andrew Reynolds, Morgan Deters, Mathias Preiner - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 Model for Theory UF - **/ +/****************************************************************************** + * Top contributors (to current version): + * Andrew Reynolds, Morgan Deters, Mathias Preiner + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * Model for Theory UF. + */ #include "cvc4_private.h" diff --git a/src/theory/uf/theory_uf_rewriter.h b/src/theory/uf/theory_uf_rewriter.h index 0681c3ece..8788bd732 100644 --- a/src/theory/uf/theory_uf_rewriter.h +++ b/src/theory/uf/theory_uf_rewriter.h @@ -1,19 +1,20 @@ -/********************* */ -/*! \file theory_uf_rewriter.h - ** \verbatim - ** Top contributors (to current version): - ** Andrew Reynolds, Haniel Barbosa, Dejan Jovanovic - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 ]] - ** - ** [[ Add lengthier description here ]] - ** \todo document this file - **/ +/****************************************************************************** + * Top contributors (to current version): + * Andrew Reynolds, Haniel Barbosa, Dejan Jovanovic + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * [[ Add one-line brief description here ]] + * + * [[ Add lengthier description here ]] + * \todo document this file + */ #include "cvc4_private.h" diff --git a/src/theory/uf/theory_uf_type_rules.h b/src/theory/uf/theory_uf_type_rules.h index dc8f3b462..473aafcc8 100644 --- a/src/theory/uf/theory_uf_type_rules.h +++ b/src/theory/uf/theory_uf_type_rules.h @@ -1,18 +1,19 @@ -/********************* */ -/*! \file theory_uf_type_rules.h - ** \verbatim - ** Top contributors (to current version): - ** Andrew Reynolds, Tim King, Morgan Deters - ** This file is part of the CVC4 project. - ** Copyright (c) 2009-2021 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 brief comments here ]] - ** - ** [[ Add file-specific comments here ]] - **/ +/****************************************************************************** + * Top contributors (to current version): + * Andrew Reynolds, Tim King, Morgan Deters + * + * This file is part of the cvc5 project. + * + * Copyright (c) 2009-2021 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. + * **************************************************************************** + * + * [[ Add brief comments here ]] + * + * [[ Add file-specific comments here ]] + */ #include "cvc4_private.h" |