GCC Code Coverage Report
Directory: . Exec Total Coverage
File: src/theory/quantifiers/ematching/inst_strategy.cpp Lines: 10 13 76.9 %
Date: 2021-09-29 Branches: 3 10 30.0 %

Line Exec Source
1
/******************************************************************************
2
 * Top contributors (to current version):
3
 *   Andrew Reynolds, Mathias Preiner
4
 *
5
 * This file is part of the cvc5 project.
6
 *
7
 * Copyright (c) 2009-2021 by the authors listed in the file AUTHORS
8
 * in the top-level source directory and their institutional affiliations.
9
 * All rights reserved.  See the file COPYING in the top-level source
10
 * directory for licensing information.
11
 * ****************************************************************************
12
 *
13
 * Instantiation engine strategy base class.
14
 */
15
16
#include "theory/quantifiers/ematching/inst_strategy.h"
17
18
#include "smt/env.h"
19
#include "theory/quantifiers/quantifiers_state.h"
20
21
namespace cvc5 {
22
namespace theory {
23
namespace quantifiers {
24
25
9156
InstStrategy::InstStrategy(Env& env,
26
                           inst::TriggerDatabase& td,
27
                           QuantifiersState& qs,
28
                           QuantifiersInferenceManager& qim,
29
                           QuantifiersRegistry& qr,
30
9156
                           TermRegistry& tr)
31
9156
    : EnvObj(env), d_td(td), d_qstate(qs), d_qim(qim), d_qreg(qr), d_treg(tr)
32
{
33
9156
}
34
9150
InstStrategy::~InstStrategy() {}
35
11002
void InstStrategy::presolve() {}
36
std::string InstStrategy::identify() const { return std::string("Unknown"); }
37
38
45395
options::UserPatMode InstStrategy::getInstUserPatMode() const
39
{
40
45395
  if (options::userPatternsQuant() == options::UserPatMode::INTERLEAVE)
41
  {
42
    return d_qstate.getInstRounds() % 2 == 0 ? options::UserPatMode::USE
43
                                             : options::UserPatMode::RESORT;
44
  }
45
45395
  return options::userPatternsQuant();
46
}
47
48
}  // namespace quantifiers
49
}  // namespace theory
50
22746
}  // namespace cvc5