Branch data Line data Source code
1 : : /****************************************************************************** 2 : : * This file is part of the cvc5 project. 3 : : * 4 : : * Copyright (c) 2009-2026 by the authors listed in the file AUTHORS 5 : : * in the top-level source directory and their institutional affiliations. 6 : : * All rights reserved. See the file COPYING in the top-level source 7 : : * directory for licensing information. 8 : : * **************************************************************************** 9 : : * 10 : : * Implementation of instantiator for counterexample-guided quantifier 11 : : * instantiation. 12 : : */ 13 : : 14 : : #include "theory/quantifiers/cegqi/instantiator.h" 15 : : 16 : : using namespace std; 17 : : using namespace cvc5::internal::kind; 18 : : 19 : : namespace cvc5::internal { 20 : : namespace theory { 21 : : namespace quantifiers { 22 : : 23 : 5105 : Instantiator::Instantiator(Env& env, TypeNode tn) : EnvObj(env), d_type(tn) 24 : : { 25 : 5105 : d_closed_enum_type = tn.isClosedEnumerable(); 26 : 5105 : } 27 : : 28 : 27 : bool Instantiator::processEqualTerm(CegInstantiator* ci, 29 : : SolvedForm& sf, 30 : : Node pv, 31 : : TermProperties& pv_prop, 32 : : Node n, 33 : : CVC5_UNUSED CegInstEffort effort) 34 : : { 35 : 27 : pv_prop.d_type = CEG_TT_EQUAL; 36 : 27 : return ci->constructInstantiationInc(pv, n, pv_prop, sf); 37 : : } 38 : : 39 : : } // namespace quantifiers 40 : : } // namespace theory 41 : : } // namespace cvc5::internal