Defines | Functions

search_fast.cpp File Reference

#include "search_fast.h"
#include "typecheck_exception.h"
#include "search_rules.h"
#include "command_line_flags.h"
#include "cdmap.h"
#include "decision_engine_dfs.h"
#include "expr_transform.h"
#include "assumptions.h"

Go to the source code of this file.



Detailed Description

Author: Mark Zavislak <> Undergraduate Stanford University

Created: Mon Jul 21 23:52:39 UTC 2003

License to use, copy, modify, sell and/or distribute this software and its documentation for any purpose is hereby granted without royalty, subject to the terms and conditions defined in the LICENSE file provided with this distribution.

Definition in file search_fast.cpp.

Define Documentation

#define followChaff   false

When set to true, match Chaff behavior as close as possible.

Definition at line 39 of file search_fast.cpp.

Referenced by CVC3::SearchEngineFast::updateLitScores().

Function Documentation

static bool compareLits ( const Literal l1,
const Literal l2 
) [inline, static]

Total order on literals for the initial sort.

Used for debugging, to match Chaff's behavior as close as possible and track any discrepancies or inefficiencies. Ordering on literals, used to sort them by score

Definition at line 323 of file search_fast.cpp.

References CVC3::Literal::score().

Referenced by CVC3::SearchEngineFast::addSplitter(), CVC3::SearchEngineFast::updateLitCounts(), and CVC3::SearchEngineFast::updateLitScores().

bool TheoremEq ( const Theorem t1,
const Theorem t2 
) [inline]
static void processNode ( const Theorem thm,
vector< Theorem > &  lits,
vector< Theorem > &  gamma,
vector< Theorem > &  fringe,
int &  pending 
) [static]

Auxiliary function used in analyzeUIPs()

It processes a node and populates the relevant sets used in the algorithm.

See also:
analyzeUIPs() for more detail).

Definition at line 1108 of file search_fast.cpp.

References DebugAssert, CVC3::Theorem::getCachedValue(), CVC3::Theorem::getExpandFlag(), CVC3::Theorem::getExpr(), CVC3::Theorem::getLitFlag(), CVC3::Theorem::isAbsLiteral(), CVC3::Theorem::isFlagged(), CVC3::Theorem::setCachedValue(), CVC3::Theorem::setFlag(), CVC3::Theorem::toString(), and TRACE.

Referenced by CVC3::SearchEngineFast::analyzeUIPs().