#include <checkHashRecord.h>
Public メソッド | |
CheckHashRecord () | |
CheckHashRecord (PieceStand black, PieceStand white) | |
~CheckHashRecord () | |
void | setProofDisproof (const ProofDisproof &pdp) |
void | setProofDisproof (unsigned int proof, unsigned int disproof) |
const ProofDisproof & | proofDisproof () const |
unsigned int | proof () const |
unsigned int | disproof () const |
void | setProofByDominance (unsigned int disproof, const CheckHashRecord *final_by_dominance) |
void | setDisproofByDominance (unsigned int proof, const CheckHashRecord *final_by_dominance) |
void | setFinalByDominance (const CheckHashRecord *dominance) |
const PieceStand | stand (Player player) const |
const CheckHashRecord * | finalByDominance () const |
void | setProofPieces (PieceStand new_stand) |
void | setProofPiecesAttack (Player attacker) |
bestMove Ȥ˾ | |
void | setDisproofPieces (PieceStand new_stand) |
void | setDisproofPiecesDefense (Player defense) |
bestMove Ȥȿڶ | |
bool | hasProofPieces () const |
bool | hasDisproofPieces () const |
const PieceStand | proofPieces () const |
const PieceStand | disproofPieces () const |
bool | isConsistent () const |
bool | hasBestMove () const |
CheckMove * | getBestMove () |
const CheckMove * | getBestMove () const |
bool | needMoveGeneration () const |
unsigned int | add (unsigned int a, unsigned int b) |
template<Player Attacker> | |
void | propagateCheckmate (ProofDisproof pdp) |
ͤλ proofDisproof ꤷͥ۴ط̤ | |
template<Player Attacker> | |
void | propagateNoCheckmate (ProofDisproof pdp) |
Եͤλ proofDisproof ꤷͥ۴ط̤ | |
void | confirmParent (CheckHashRecord *parent) |
ƤȤǧ | |
unsigned int | selectBestAttackMove (const PathEncoding &path, const TwinTable &table, unsigned int ¤tBestProofNumber, unsigned int ¤tSecondBestProofNumber, unsigned int ¤tDisproofNumber, unsigned int ¤tBestDisproofNumber, ProofDisproof &bestResultInSolved, CheckMove *&bestChild) |
¦ moves ̤įᡤƼ(dis)proof number פμ bestChild ¸. | |
unsigned int | selectBestAttackMoveMain (const PathEncoding &path, const TwinTable &table, unsigned int ¤tBestProofNumber, unsigned int ¤tSecondBestProofNumber, unsigned int ¤tDisproofNumber, unsigned int ¤tBestDisproofNumber, ProofDisproof &bestResultInSolved, CheckMove *&bestChild) |
unsigned int | selectBestDefenseMove (const PathEncoding &path, const TwinTable &table, unsigned int ¤tBestDisproofNumber, unsigned int ¤tSecondBestDisproofNumber, unsigned int ¤tProofNumber, unsigned int ¤tBestProofNumber, ProofDisproof &bestResultInSolved, CheckMove *&bestChild) |
ɸ¦ moves ̤įᡤƼ(dis)proof number פμ bestChild ¸. | |
void | dump (std::ostream &os, int dumpDepth) const |
void | dump (int dumpDepth=1) const |
void | updateBestResultInSolvedAttack (const ProofDisproof &pdp) |
void | updateBestResultInSolvedDefense (const ProofDisproof &pdp) |
void | addToSolved (CheckMove &move, const ProofDisproof &pdp, bool isAttack) |
void | addToSolvedInAttack (CheckMove &move, const ProofDisproof &pdp) |
void | addToSolvedInDefense (CheckMove &move, const ProofDisproof &pdp) |
void | setLoopDetection (const PathEncoding &path, const CheckMove &move, const CheckHashRecord *loopTo) |
template<Player Attacker> | |
void | setLoopDetectionTryMerge (const PathEncoding &path, CheckMove &move, const CheckHashRecord *loopTo) |
void | setLoopDetection (const PathEncoding &path, const CheckHashRecord *loopTo) |
template<Player Attacker> | |
void | setLoopDetectionInAttack (const PathEncoding &path) |
const TwinEntry * | findLoop (const PathEncoding &path, const TwinTable &table) const |
Ƥtwin entry Ĵ٤ơloop뤫ɤȽꤹ. | |
const TwinEntry * | findLoopInList (const PathEncoding &path) const |
twin list Ĵ٤ơloop뤫ɤȽꤹ. | |
Static Public メソッド | |
static const ProofDisproof | initialProofDisproof () |
proofDisproof ν. | |
Public 変数 | |
ProofDisproof | bestResultInSolved |
֤*Ū*ʷ̤ȽؼǺǤԹ礬ɤ. | |
CheckMoveList | moves |
õΥꥹ | |
CheckMove * | bestMove |
ͤξεͤޤ finalByDominance ξ硢̤ΥΡɤ (solved)moves ؤ礬 | |
CheckHashRecord * | parent |
ƤΰġήθФ˻Ȥ | |
SameBoardList * | sameBoards |
Ʊ(𤬰㤦)Υꥹ | |
TwinList | twins |
LoopDetection ط(ߥ졼) | |
signed short | distance |
root κûѥεΥ | |
MoveFilter | filter |
оݤȤؼμ | |
bool | isConfluence |
Ȥǹήξ翿 | |
bool | useMaxInsteadOfSum |
ʤ sum max (loop/dag к) | |
bool | isVisited |
õ˽ | |
bool | false_branch_candidate |
2005 | |
bool | false_branch |
Private 型 | |
enum | ProofPiecesType { UNSET = 0, PROOF, DISPROOF } |
Private メソッド | |
template<Player Attacker> | |
void | propagateCheckmateRecursive () |
template<Player Attacker> | |
void | propagateNoCheckmateRecursive () |
Private 変数 | |
ProofDisproof | proof_disproof |
const CheckHashRecord * | final_by_dominance |
ͥ۴طǵ/Եͤʬä˵Ͽ | |
PieceStand | black_stand |
ߤζ̤λ | |
PieceStand | white_stand |
PieceStand | proof_disproof_pieces |
ޤȿڶ: (Ե)ξΤߥåȤ | |
char | proof_pieces_type |
proof (disproof) pieces åȤɤ. |
checkHashRecord.h の 53 行で定義されています。
enum osl::checkmate::CheckHashRecord::ProofPiecesType [private] |
osl::checkmate::CheckHashRecord::CheckHashRecord | ( | ) | [inline] |
checkHashRecord.h の 109 行で定義されています。
osl::checkmate::CheckHashRecord::CheckHashRecord | ( | PieceStand | black, | |
PieceStand | white | |||
) | [inline] |
checkHashRecord.h の 119 行で定義されています。
osl::checkmate::CheckHashRecord::~CheckHashRecord | ( | ) |
checkHashRecord.cc の 56 行で定義されています。
参照先 osl::stat::Histogram::add(), final_by_dominance, isConsistent(), osl::checkmate::TwinList::size(), と twins.
static const ProofDisproof osl::checkmate::CheckHashRecord::initialProofDisproof | ( | ) | [inline, static] |
proofDisproof ν.
ͥ۴طĤä
checkHashRecord.h の 105 行で定義されています。
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense().
void osl::checkmate::CheckHashRecord::setProofDisproof | ( | const ProofDisproof & | pdp | ) | [inline] |
checkHashRecord.h の 132 行で定義されています。
参照先 check_assert, osl::checkmate::ProofDisproof::isFinal(), と proof_disproof.
参照元 osl::checkmate::SameBoardList::allocate(), osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), setProofDisproof(), osl::checkmate::OracleProver< Table >::testFixedDepthAttack(), osl::checkmate::OracleProver< Table >::testFixedDepthDefense(), と osl::checkmate::SameBoardList::update().
void osl::checkmate::CheckHashRecord::setProofDisproof | ( | unsigned int | proof, | |
unsigned int | disproof | |||
) | [inline] |
const ProofDisproof& osl::checkmate::CheckHashRecord::proofDisproof | ( | ) | const [inline] |
checkHashRecord.h の 146 行で定義されています。
参照先 proof_disproof.
参照元 osl::checkmate::OraclePool::addDisproofOracle(), addToSolved(), osl::checkmate::SameBoardList::allocate(), osl::checkmate::analyzer::ProofTreeTraverser::andNode(), osl::checkmate::analyzer::ProofTreeDepth::andNode(), osl::checkmate::analyzer::DisproofTreeTraverser::andNode(), osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::ChildAttackHelper< P, CheckmateSearcher >::ChildAttackHelper(), osl::checkmate::ChildDefenseHelper< P, CheckmateSearcher >::ChildDefenseHelper(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::analyzer::ProofTreeDepth::depth(), osl::checkmate::DefenseSimulation< P >::disproofNoPromote(), osl::checkmate::DisproofOracleAttack< P >::DisproofOracleAttack(), osl::checkmate::DisproofOracleDefense< P >::DisproofOracleDefense(), osl::checkmate::CheckmateRecorder::enter(), osl::checkmate::examineDisproofTree(), osl::checkmate::examineProofTree(), osl::checkmate::examineTreeGuess(), osl::checkmate::ProofOracleAttack< Attacker >::expandOracle(), osl::checkmate::DisproofOracleAttack< P >::expandOracle(), osl::focus(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::DisproofOracleAttack< P >::invalidNextOracle(), isConsistent(), osl::brinkmate::BrinkmateState::isEffectiveDefense(), osl::checkmate::DualCheckmateSearcher< Table, HEstimator, CostEstimator >::isWinningState(), osl::checkmate::CheckmateRecorder::leave(), osl::checkmate::DisproofOracleAttack< P >::makeOracle(), osl::checkmate::analyzer::ProofTreeTraverser::orNode(), osl::checkmate::analyzer::ProofTreeDepth::orNode(), osl::checkmate::analyzer::DisproofTreeTraverser::orNode(), osl::checkmate::OracleDisprover< Table >::proofEscape(), osl::checkmate::OracleProver< Table >::proofLose(), osl::checkmate::OracleDisprover< Table >::proofNoCheckmate(), osl::checkmate::ProofOracleAttack< P >::ProofOracleAttack(), osl::checkmate::ProofOracleDefense< P >::ProofOracleDefense(), osl::checkmate::OracleProver< Table >::proofWin(), osl::checkmate::CheckTableUtil::registerImmediateCheckmateInDefense(), selectBestAttackMove(), setDisproofByDominance(), setLoopDetection(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpDefenseNode(), osl::checkmate::analyzer::ShowAllTree::show(), osl::checkmate::analyzer::TreeStreamWriter::showMove(), osl::checkmate::analyzer::TreeStreamWriter::showRecord(), osl::brinkmate::BrinkmateState::testThreatmateState(), osl::brinkmate::BrinkmateState::testWinningState(), と testWinOrLose().
unsigned int osl::checkmate::CheckHashRecord::proof | ( | ) | const [inline] |
checkHashRecord.h の 147 行で定義されています。
参照先 osl::checkmate::ProofDisproof::proof(), と proof_disproof.
参照元 osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::operator<<(), osl::checkmate::SameBoardList::setLessProvable(), osl::checkmate::SameBoardList::setMoreProvable(), osl::checkmate::OracleProver< Table >::testFixedDepthAttack(), osl::checkmate::OracleProver< Table >::testFixedDepthDefense(), と osl::checkmate::SameBoardList::update().
unsigned int osl::checkmate::CheckHashRecord::disproof | ( | ) | const [inline] |
checkHashRecord.h の 148 行で定義されています。
参照先 osl::checkmate::ProofDisproof::disproof(), と proof_disproof.
参照元 osl::checkmate::SameBoardList::allocate(), osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::operator<<(), osl::checkmate::SameBoardList::setLessProvable(), osl::checkmate::SameBoardList::setMoreProvable(), osl::checkmate::OracleProver< Table >::testFixedDepthAttack(), osl::checkmate::OracleProver< Table >::testFixedDepthDefense(), と osl::checkmate::SameBoardList::update().
void osl::checkmate::CheckHashRecord::setProofByDominance | ( | unsigned int | disproof, | |
const CheckHashRecord * | final_by_dominance | |||
) | [inline] |
checkHashRecord.h の 150 行で定義されています。
参照先 bestMove, check_assert, osl::checkmate::ProofDisproof::DISPROOF_LIMIT, finalByDominance(), hasProofPieces(), isConsistent(), proof_disproof, proofPieces(), setFinalByDominance(), と setProofPieces().
参照元 osl::checkmate::SameBoardList::allocate(), と osl::checkmate::SameBoardList::update().
void osl::checkmate::CheckHashRecord::setDisproofByDominance | ( | unsigned int | proof, | |
const CheckHashRecord * | final_by_dominance | |||
) | [inline] |
checkHashRecord.h の 164 行で定義されています。
参照先 bestMove, check_assert, disproofPieces(), dump(), finalByDominance(), hasDisproofPieces(), osl::checkmate::ProofDisproof::isCheckmateFail(), proof_disproof, osl::checkmate::ProofDisproof::PROOF_LIMIT, proofDisproof(), setDisproofPieces(), と setFinalByDominance().
参照元 osl::checkmate::SameBoardList::allocate(), と osl::checkmate::SameBoardList::update().
void osl::checkmate::CheckHashRecord::setFinalByDominance | ( | const CheckHashRecord * | dominance | ) | [inline] |
const PieceStand osl::checkmate::CheckHashRecord::stand | ( | Player | player | ) | const [inline] |
checkHashRecord.h の 188 行で定義されています。
参照先 osl::BLACK, black_stand, と white_stand.
参照元 osl::checkmate::SimpleCheckHashTable::allocate(), osl::checkmate::CheckTableUtil::allocate(), osl::checkmate::CheckTableUtil::allocateNext(), osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleDisprover< Table >::confirmNoEscape(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::CheckStack::findCover(), setDisproofPiecesDefense(), setProofPiecesAttack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpAttackNode(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpDefenseNode(), と osl::checkmate::SameBoardList::update().
const CheckHashRecord* osl::checkmate::CheckHashRecord::finalByDominance | ( | ) | const [inline] |
checkHashRecord.h の 192 行で定義されています。
参照先 final_by_dominance.
参照元 osl::checkmate::analyzer::ProofTreeTraverser::andNode(), osl::checkmate::analyzer::ProofTreeDepth::andNode(), osl::checkmate::analyzer::DisproofTreeTraverser::andNode(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::ProofOracleDefense< P >::expandOracle(), osl::checkmate::DisproofOracleAttack< P >::expandOracle(), osl::checkmate::operator<<(), osl::checkmate::analyzer::ProofTreeTraverser::orNode(), osl::checkmate::analyzer::ProofTreeDepth::orNode(), osl::checkmate::analyzer::DisproofTreeTraverser::orNode(), setDisproofByDominance(), setProofByDominance(), と osl::checkmate::SameBoardList::update().
void osl::checkmate::CheckHashRecord::setProofPieces | ( | PieceStand | new_stand | ) | [inline] |
checkHashRecord.h の 196 行で定義されています。
参照先 check_assert, PROOF, proof_disproof_pieces, proof_pieces_type, と UNSET.
参照元 osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleDisprover< Table >::confirmNoEscape(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::CheckTableUtil::registerImmediateCheckmateInDefense(), setProofByDominance(), setProofPiecesAttack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpAttackNode(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpDefenseNode(), と osl::checkmate::OracleProver< Table >::testFixedDepthAttack().
void osl::checkmate::CheckHashRecord::setProofPiecesAttack | ( | Player | attacker | ) | [inline] |
bestMove Ȥ˾
checkHashRecord.h の 203 行で定義されています。
参照先 osl::checkmate::ProofPieces::attack(), bestMove, check_assert, hasProofPieces(), osl::checkmate::CheckMoveCore::move, proofPieces(), osl::checkmate::CheckMoveCore::record, setProofPieces(), と stand().
参照元 osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::attack(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack().
void osl::checkmate::CheckHashRecord::setDisproofPieces | ( | PieceStand | new_stand | ) | [inline] |
checkHashRecord.h の 212 行で定義されています。
参照先 check_assert, DISPROOF, proof_disproof_pieces, proof_pieces_type, と UNSET.
参照元 osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), setDisproofByDominance(), setDisproofPiecesDefense(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpAttackNode().
void osl::checkmate::CheckHashRecord::setDisproofPiecesDefense | ( | Player | defense | ) | [inline] |
bestMove Ȥȿڶ
checkHashRecord.h の 219 行で定義されています。
参照先 bestMove, check_assert, osl::checkmate::DisproofPieces::defense(), disproofPieces(), hasDisproofPieces(), osl::checkmate::CheckMoveCore::move, osl::checkmate::CheckMoveCore::record, setDisproofPieces(), と stand().
参照元 osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), と osl::checkmate::DisproofOracleDefense< P >::DisproofOracleDefense().
bool osl::checkmate::CheckHashRecord::hasProofPieces | ( | ) | const [inline] |
checkHashRecord.h の 228 行で定義されています。
参照先 PROOF, と proof_pieces_type.
参照元 osl::checkmate::OraclePoolLastMove::addOracle(), osl::checkmate::OraclePool::addProofOracle(), osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), setProofByDominance(), と setProofPiecesAttack().
bool osl::checkmate::CheckHashRecord::hasDisproofPieces | ( | ) | const [inline] |
checkHashRecord.h の 229 行で定義されています。
参照先 DISPROOF, と proof_pieces_type.
参照元 osl::checkmate::OraclePool::addDisproofOracle(), setDisproofByDominance(), と setDisproofPiecesDefense().
const PieceStand osl::checkmate::CheckHashRecord::proofPieces | ( | ) | const [inline] |
const PieceStand osl::checkmate::CheckHashRecord::disproofPieces | ( | ) | const [inline] |
checkHashRecord.h の 235 行で定義されています。
参照先 check_assert, DISPROOF, proof_disproof_pieces, と proof_pieces_type.
bool osl::checkmate::CheckHashRecord::isConsistent | ( | ) | const |
checkHashRecord.cc の 38 行で定義されています。
参照先 check_assert, osl::checkmate::ProofDisproof::isFinal(), proof_disproof, proof_pieces_type, proofDisproof(), と UNSET.
参照元 osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleDisprover< Table >::confirmNoEscape(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), setProofByDominance(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpDefenseNode(), と ~CheckHashRecord().
bool osl::checkmate::CheckHashRecord::hasBestMove | ( | ) | const [inline] |
checkHashRecord.h の 242 行で定義されています。
参照先 bestMove.
参照元 osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::DisproofOracleDefense< P >::DisproofOracleDefense(), osl::checkmate::ProofOracleAttack< Attacker >::expandOracle(), getBestMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::DisproofOracleAttack< P >::makeOracle(), osl::checkmate::ProofOracleAttack< P >::oracle(), osl::checkmate::OracleInfo::OracleInfo(), osl::checkmate::analyzer::ProofTreeTraverser::orNode(), osl::checkmate::OracleDisprover< Table >::proofEscape(), osl::checkmate::ProofOracleAttack< P >::ProofOracleAttack(), osl::checkmate::OracleProver< Table >::proofWin(), osl::checkmate::analyzer::TreeStreamWriter::showMove(), osl::checkmate::analyzer::TreeStreamWriter::showRecord(), と osl::checkmate::OracleInfo::suitableInProof().
CheckMove* osl::checkmate::CheckHashRecord::getBestMove | ( | ) | [inline] |
checkHashRecord.h の 243 行で定義されています。
参照先 bestMove, check_assert, と hasBestMove().
参照元 osl::checkmate::OraclePool::Table::addOracle(), osl::ntesuki::OracleProverLight::attack(), osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::DisproofOracleDefense< P >::DisproofOracleDefense(), osl::checkmate::ProofOracleAttack< Attacker >::expandOracle(), osl::checkmate::ProofOracleAttack< P >::oracle(), osl::checkmate::OracleInfo::OracleInfo(), osl::checkmate::OracleDisprover< Table >::proofEscape(), osl::checkmate::ProofOracleAttack< P >::ProofOracleAttack(), osl::checkmate::OracleProver< Table >::proofWin(), と osl::checkmate::OracleInfo::suitableInProof().
const CheckMove* osl::checkmate::CheckHashRecord::getBestMove | ( | ) | const [inline] |
bool osl::checkmate::CheckHashRecord::needMoveGeneration | ( | ) | const [inline] |
checkHashRecord.h の 253 行で定義されています。
参照先 osl::checkmate::CheckMoveListBase::empty(), と moves.
参照元 osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::analyzer::ShowAllTree::isTerminal(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpAttackNode(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpDefenseNode().
unsigned int osl::checkmate::CheckHashRecord::add | ( | unsigned int | a, | |
unsigned int | b | |||
) | [inline] |
template void osl::checkmate::CheckHashRecord::propagateCheckmateRecursive< WHITE > | ( | ) | [inline, private] |
template void osl::checkmate::CheckHashRecord::propagateNoCheckmateRecursive< WHITE > | ( | ) | [inline, private] |
void osl::checkmate::CheckHashRecord::propagateCheckmate | ( | ProofDisproof | pdp | ) | [inline] |
ͤλ proofDisproof ꤷͥ۴ط̤
checkHashRecord.h の 269 行で定義されています。
参照先 check_assert, osl::checkmate::ProofDisproof::proof(), proof_disproof, と sameBoards.
参照元 osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleDisprover< Table >::confirmNoEscape(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::CheckTableUtil::registerImmediateCheckmateInDefense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpAttackNode(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpDefenseNode(), と osl::checkmate::OracleProver< Table >::testFixedDepthAttack().
void osl::checkmate::CheckHashRecord::propagateNoCheckmate | ( | ProofDisproof | pdp | ) | [inline] |
Եͤλ proofDisproof ꤷͥ۴ط̤
checkHashRecord.h の 280 行で定義されています。
参照先 check_assert, osl::checkmate::ProofDisproof::disproof(), osl::checkmate::ProofDisproof::isLoopDetection(), proof_disproof, と sameBoards.
参照元 osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::DisproofOracleDefense< P >::DisproofOracleDefense(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpAttackNode().
void osl::checkmate::CheckHashRecord::confirmParent | ( | CheckHashRecord * | parent | ) | [inline] |
unsigned int osl::checkmate::CheckHashRecord::selectBestAttackMove | ( | const PathEncoding & | path, | |
const TwinTable & | table, | |||
unsigned int & | currentBestProofNumber, | |||
unsigned int & | currentSecondBestProofNumber, | |||
unsigned int & | currentDisproofNumber, | |||
unsigned int & | currentBestDisproofNumber, | |||
ProofDisproof & | bestResultInSolved, | |||
CheckMove *& | bestChild | |||
) |
¦ moves ̤įᡤƼ(dis)proof number פμ bestChild ¸.
bestResultInSolved | (bestChild==0) λˡäȤޤpdp. LoopDetection ޤ |
checkHashRecord.cc の 73 行で定義されています。
参照先 osl::checkmate::MoveFilter::addTarget(), check_assert, filter, osl::checkmate::CheckMove::findLoop(), osl::checkmate::MoveFilter::isTarget(), osl::checkmate::MoveFlags::NoPromote, osl::checkmate::ProofDisproof::PawnCheckmate(), proofDisproof(), osl::checkmate::CheckMoveCore::record, selectBestAttackMoveMain(), osl::checkmate::MoveFlags::Upward, と useMaxInsteadOfSum.
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack().
unsigned int osl::checkmate::CheckHashRecord::selectBestAttackMoveMain | ( | const PathEncoding & | path, | |
const TwinTable & | table, | |||
unsigned int & | currentBestProofNumber, | |||
unsigned int & | currentSecondBestProofNumber, | |||
unsigned int & | currentDisproofNumber, | |||
unsigned int & | currentBestDisproofNumber, | |||
ProofDisproof & | bestResultInSolved, | |||
CheckMove *& | bestChild | |||
) |
checkHashRecord.cc の 129 行で定義されています。
参照先 addToSolvedInAttack(), osl::checkmate::CheckMoveListBase::begin(), bestResultInSolved, osl::brinkmate::betterForAttack(), osl::checkmate::ProofDisproof::betterForAttack(), osl::checkmate::ProofDisproof::BigProofNumber, check_assert, osl::checkmate::ProofDisproof::disproof(), distance, osl::checkmate::CheckMoveListBase::end(), filter, osl::checkmate::ProofDisproof::isLoopDetection(), osl::checkmate::ProofDisproof::isPawnDropFoul(), osl::checkmate::MoveFilter::isTarget(), osl::checkmate::ProofDisproof::LoopDetection(), osl::checkmate::TwinEntry::loopTo, osl::checkmate::TwinEntry::move, moves, osl::checkmate::ProofDisproof::PawnCheckmate(), osl::checkmate::ProofDisproof::proof(), osl::checkmate::CheckMoveCore::record, osl::checkmate::MoveFlags::Solved, と osl::checkmate::MoveFlags::Upward.
unsigned int osl::checkmate::CheckHashRecord::selectBestDefenseMove | ( | const PathEncoding & | path, | |
const TwinTable & | table, | |||
unsigned int & | currentBestDisproofNumber, | |||
unsigned int & | currentSecondBestDisproofNumber, | |||
unsigned int & | currentProofNumber, | |||
unsigned int & | currentBestProofNumber, | |||
ProofDisproof & | bestResultInSolved, | |||
CheckMove *& | bestChild | |||
) |
ɸ¦ moves ̤įᡤƼ(dis)proof number פμ bestChild ¸.
finalǤʤproof number Ʊʤdisproof number
bestResultInSolved | (bestChild==0) λˡäȤޤpdp |
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense().
void osl::checkmate::CheckHashRecord::dump | ( | std::ostream & | os, | |
int | dumpDepth | |||
) | const |
dumpDepth | 1 ʾλ bestMove ƵŪdump. |
参照元 osl::checkmate::analyzer::ProofTreeTraverser::andNode(), osl::checkmate::analyzer::DisproofTreeTraverser::andNode(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::DisproofOracleAttack< P >::DisproofOracleAttack(), osl::checkmate::DisproofOracleDefense< P >::DisproofOracleDefense(), osl::checkmate::analyzer::CheckTableAnalyzer::disproofTreeSize(), osl::checkmate::CheckmateRecorder::dumpRecord(), osl::checkmate::CheckmateRecorder::enter(), osl::checkmate::ProofOracleDefense< P >::expandOracle(), osl::checkmate::DisproofOracleAttack< P >::makeOracle(), osl::checkmate::OracleDisprover< Table >::proofEscape(), osl::checkmate::ProofOracleAttack< P >::ProofOracleAttack(), osl::checkmate::analyzer::CheckTableAnalyzer::proofOrDisproofTreeSize(), osl::checkmate::analyzer::CheckTableAnalyzer::proofTreeSize(), と setDisproofByDominance().
void osl::checkmate::CheckHashRecord::dump | ( | int | dumpDepth = 1 |
) | const |
void osl::checkmate::CheckHashRecord::updateBestResultInSolvedAttack | ( | const ProofDisproof & | pdp | ) | [inline] |
checkHashRecord.h の 347 行で定義されています。
参照先 bestResultInSolved, osl::checkmate::ProofDisproof::betterForAttack(), check_assert, osl::checkmate::ProofDisproof::isCheckmateFail(), と osl::checkmate::ProofDisproof::isLoopDetection().
参照元 addToSolved(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpAttackNode().
void osl::checkmate::CheckHashRecord::updateBestResultInSolvedDefense | ( | const ProofDisproof & | pdp | ) | [inline] |
void osl::checkmate::CheckHashRecord::addToSolved | ( | CheckMove & | move, | |
const ProofDisproof & | pdp, | |||
bool | isAttack | |||
) | [inline] |
isAttack | ΥΡɤɤ |
checkHashRecord.h の 361 行で定義されています。
参照先 osl::checkmate::CheckMoveListBase::begin(), check_assert, osl::checkmate::CheckMoveListBase::end(), osl::find(), osl::checkmate::CheckMove::flags, osl::checkmate::ProofDisproof::isFinal(), osl::checkmate::ProofDisproof::isLoopDetection(), moves, proofDisproof(), osl::checkmate::CheckMoveCore::record, osl::checkmate::MoveFlags::Solved, updateBestResultInSolvedAttack(), と updateBestResultInSolvedDefense().
void osl::checkmate::CheckHashRecord::addToSolvedInAttack | ( | CheckMove & | move, | |
const ProofDisproof & | pdp | |||
) | [inline] |
checkHashRecord.h の 375 行で定義されています。
参照先 addToSolved(), check_assert, osl::checkmate::ProofDisproof::disproof(), と osl::checkmate::ProofDisproof::isLoopDetection().
参照元 osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::DefenseSimulation< P >::disproofDropSibling(), osl::checkmate::DefenseSimulation< P >::disproofNoPromote(), と selectBestAttackMoveMain().
void osl::checkmate::CheckHashRecord::addToSolvedInDefense | ( | CheckMove & | move, | |
const ProofDisproof & | pdp | |||
) | [inline] |
void osl::checkmate::CheckHashRecord::setLoopDetection | ( | const PathEncoding & | path, | |
const CheckMove & | move, | |||
const CheckHashRecord * | loopTo | |||
) | [inline] |
checkHashRecord.h の 386 行で定義されています。
参照先 osl::checkmate::TwinList::addLoopDetection(), check_assert, proof_disproof, proofDisproof(), twins, と osl::checkmate::ProofDisproof::Unknown().
参照元 osl::checkmate::SameBoardList::allocate(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), setLoopDetection(), setLoopDetectionInAttack(), setLoopDetectionTryMerge(), と osl::checkmate::SameBoardList::update().
void osl::checkmate::CheckHashRecord::setLoopDetectionTryMerge | ( | const PathEncoding & | path, | |
CheckMove & | move, | |||
const CheckHashRecord * | loopTo | |||
) | [inline] |
checkHashRecord.h の 394 行で定義されています。
参照先 osl::alt(), bestMove, bestResultInSolved, osl::checkmate::ProofDisproof::betterForAttack(), check_assert, osl::checkmate::TwinList::clear(), osl::checkmate::ProofDisproof::disproof(), osl::checkmate::CheckMoveCore::move, osl::checkmate::ProofDisproof::NoCheckmate(), osl::Move::player(), osl::checkmate::CheckMoveCore::record, setLoopDetection(), と twins.
参照元 osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense().
void osl::checkmate::CheckHashRecord::setLoopDetection | ( | const PathEncoding & | path, | |
const CheckHashRecord * | loopTo | |||
) | [inline] |
void osl::checkmate::CheckHashRecord::setLoopDetectionInAttack | ( | const PathEncoding & | path | ) | [inline] |
checkHashRecord.h の 421 行で定義されています。
参照先 osl::checkmate::CheckMoveListBase::begin(), bestResultInSolved, osl::checkmate::ProofDisproof::betterForAttack(), check_assert, osl::checkmate::TwinList::clear(), osl::checkmate::ProofDisproof::disproof(), osl::checkmate::CheckMoveListBase::end(), filter, findLoop(), osl::checkmate::MoveFilter::isTarget(), osl::checkmate::TwinEntry::loopTo, moves, osl::checkmate::ProofDisproof::NoCheckmate(), setLoopDetection(), osl::checkmate::MoveFlags::Solved, と twins.
参照元 osl::checkmate::OracleDisprover< Table >::attack(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack().
const TwinEntry* osl::checkmate::CheckHashRecord::findLoop | ( | const PathEncoding & | path, | |
const TwinTable & | table | |||
) | const [inline] |
Ƥtwin entry Ĵ٤ơloop뤫ɤȽꤹ.
path this ã LoopDetection ʤ TwinEntry֤ TODO: θۤȤɤʤΤǡΤΤ¸Τɤ?
checkHashRecord.h の 470 行で定義されています。
参照先 osl::checkmate::TwinList::find(), osl::checkmate::TwinTable::findTwin(), と twins.
参照元 osl::checkmate::analyzer::DisproofTreeTraverser::andNode(), osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::DefenseSimulation< P >::disproofNoPromote(), osl::checkmate::examineDisproofTree(), osl::checkmate::examineTreeGuess(), osl::checkmate::CheckMove::findLoop(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::analyzer::DisproofTreeTraverser::orNode(), osl::checkmate::OracleDisprover< Table >::proofEscape(), osl::checkmate::OracleProver< Table >::proofLose(), osl::checkmate::OracleDisprover< Table >::proofNoCheckmate(), osl::checkmate::OracleProver< Table >::proofWin(), setLoopDetectionInAttack(), と testWinOrLose().
const TwinEntry* osl::checkmate::CheckHashRecord::findLoopInList | ( | const PathEncoding & | path | ) | const [inline] |
twin list Ĵ٤ơloop뤫ɤȽꤹ.
simulation ξϡtwin list ˤ롼פоݤȤɤ
checkHashRecord.h の 485 行で定義されています。
参照先 osl::checkmate::TwinList::find(), と twins.
参照元 osl::checkmate::SameBoardList::allocate(), osl::checkmate::DisproofOracleAttack< P >::DisproofOracleAttack(), osl::checkmate::DisproofOracleDefense< P >::DisproofOracleDefense(), osl::checkmate::DisproofOracleAttack< P >::expandOracle(), と osl::checkmate::CheckMove::findLoopInList().
֤*Ū*ʷ̤ȽؼǺǤԹ礬ɤ.
â LoopDetection Ͻ TODO: : proof/disproof Τɤ餫Ͼά
checkHashRecord.h の 62 行で定義されています。
参照元 osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::DisproofOracleAttack< P >::invalidNextOracle(), selectBestAttackMoveMain(), setLoopDetectionInAttack(), setLoopDetectionTryMerge(), osl::checkmate::analyzer::TreeStreamWriter::showMove(), osl::checkmate::analyzer::TreeStreamWriter::showRecord(), updateBestResultInSolvedAttack(), と updateBestResultInSolvedDefense().
õΥꥹ
checkHashRecord.h の 64 行で定義されています。
参照元 addToSolved(), osl::checkmate::analyzer::ProofTreeTraverser::andNode(), osl::checkmate::analyzer::ProofTreeDepth::andNode(), osl::checkmate::analyzer::DisproofTreeTraverser::andNode(), osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleDisprover< Table >::confirmNoEscape(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::DefenseSimulation< P >::disproofDropSibling(), dumpTree(), osl::checkmate::CheckmateRecorder::enter(), osl::checkmate::ProofOracleDefense< P >::expandOracle(), osl::checkmate::DisproofOracleAttack< P >::expandOracle(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasEscapeMove(), needMoveGeneration(), osl::checkmate::operator<<(), osl::checkmate::analyzer::ProofTreeTraverser::orNode(), osl::checkmate::analyzer::ProofTreeDepth::orNode(), osl::checkmate::analyzer::DisproofTreeTraverser::orNode(), osl::checkmate::BlockingSimulation< P >::proof(), osl::checkmate::BlockingSimulation< P >::proofSibling(), osl::checkmate::CheckTableUtil::registerImmediateCheckmateInDefense(), selectBestAttackMoveMain(), setLoopDetectionInAttack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpAttackNode(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpDefenseNode(), osl::checkmate::analyzer::ShowAllTree::show(), osl::checkmate::OracleProver< Table >::testFixedDepthAttack(), と osl::checkmate::traverse().
ͤξεͤޤ finalByDominance ξ硢̤ΥΡɤ (solved)moves ؤ礬
checkHashRecord.h の 66 行で定義されています。
参照元 osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::DisproofOracleDefense< P >::DisproofOracleDefense(), getBestMove(), hasBestMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasEscapeMove(), osl::checkmate::DualCheckmateSearcher< Table, HEstimator, CostEstimator >::isWinningState(), osl::checkmate::analyzer::ProofTreeTraverser::orNode(), osl::checkmate::analyzer::ProofTreeDepth::orNode(), osl::checkmate::CheckTableUtil::registerImmediateCheckmateInDefense(), setDisproofByDominance(), setDisproofPiecesDefense(), setLoopDetectionTryMerge(), setProofByDominance(), setProofPiecesAttack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpAttackNode(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpDefenseNode(), osl::checkmate::analyzer::TreeStreamWriter::showMove(), osl::checkmate::analyzer::DotWriter::showMove(), osl::checkmate::analyzer::TreeStreamWriter::showRecord(), と osl::checkmate::OracleProver< Table >::testFixedDepthAttack().
ƤΰġήθФ˻Ȥ
checkHashRecord.h の 68 行で定義されています。
参照元 osl::checkmate::CheckTableUtil::allocate(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpDefenseNode(), と osl::checkmate::analyzer::TreeStreamWriter::showMove().
const CheckHashRecord* osl::checkmate::CheckHashRecord::final_by_dominance [private] |
ͥ۴طǵ/Եͤʬä˵Ͽ
checkHashRecord.h の 71 行で定義されています。
参照元 finalByDominance(), setFinalByDominance(), と ~CheckHashRecord().
Ʊ(𤬰㤦)Υꥹ
checkHashRecord.h の 74 行で定義されています。
参照元 osl::checkmate::SameBoardList::allocate(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::analyzer::ShowAllTree::isTerminal(), propagateCheckmate(), と propagateNoCheckmate().
LoopDetection ط(ߥ졼)
checkHashRecord.h の 76 行で定義されています。
参照元 osl::checkmate::OraclePool::addDisproofOracle(), osl::checkmate::analyzer::DisproofTreeTraverser::andNode(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::DisproofOracleAttack< P >::DisproofOracleAttack(), osl::checkmate::DisproofOracleDefense< P >::DisproofOracleDefense(), osl::checkmate::examineDisproofTree(), findLoop(), findLoopInList(), osl::focus(), osl::checkmate::DisproofOracleAttack< P >::invalidNextOracle(), osl::checkmate::analyzer::ShowAllTree::isTerminal(), osl::checkmate::DisproofOracleAttack< P >::makeOracle(), osl::checkmate::operator<<(), osl::checkmate::analyzer::DisproofTreeTraverser::orNode(), osl::checkmate::OracleDisprover< Table >::proofEscape(), setLoopDetection(), setLoopDetectionInAttack(), setLoopDetectionTryMerge(), osl::checkmate::DisproofOracleDefense< P >::setValidTwins(), osl::checkmate::analyzer::ShowAllTree::show(), osl::checkmate::analyzer::TreeStreamWriter::showMove(), osl::checkmate::analyzer::TreeStreamWriter::showRecord(), と ~CheckHashRecord().
ޤȿڶ: (Ե)ξΤߥåȤ
checkHashRecord.h の 81 行で定義されています。
参照元 disproofPieces(), proofPieces(), setDisproofPieces(), と setProofPieces().
signed short osl::checkmate::CheckHashRecord::distance |
root κûѥεΥ
checkHashRecord.h の 84 行で定義されています。
参照元 osl::checkmate::CheckTableUtil::allocate(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), confirmParent(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::CheckmateRecorder::enter(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasEscapeMove(), osl::checkmate::CheckmateRecorder::leave(), osl::checkmate::operator<<(), osl::checkmate::OracleDisprover< Table >::proofEscape(), osl::checkmate::OracleProver< Table >::proofLose(), osl::checkmate::OracleDisprover< Table >::proofNoCheckmate(), osl::checkmate::OracleProver< Table >::proofWin(), selectBestAttackMoveMain(), osl::checkmate::analyzer::ShowAllTree::show(), osl::checkmate::analyzer::TreeStreamWriter::showMove(), と osl::checkmate::SameBoardList::update().
оݤȤؼμ
checkHashRecord.h の 86 行で定義されています。
参照元 osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::DefenseSimulation< P >::disproofDropSibling(), osl::checkmate::operator<<(), osl::checkmate::BlockingSimulation< P >::proofSibling(), selectBestAttackMove(), selectBestAttackMoveMain(), setLoopDetectionInAttack(), osl::checkmate::analyzer::TreeStreamWriter::showMove(), と osl::checkmate::analyzer::TreeStreamWriter::showRecord().
Ȥǹήξ翿
checkHashRecord.h の 89 行で定義されています。
参照元 osl::checkmate::analyzer::ProofTreeTraverser::andNode(), osl::checkmate::analyzer::DisproofTreeTraverser::andNode(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), confirmParent(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::CheckmateRecorder::enter(), osl::checkmate::analyzer::ProofTreeTraverser::orNode(), osl::checkmate::analyzer::DisproofTreeTraverser::orNode(), osl::checkmate::analyzer::ShowAllTree::show(), と osl::checkmate::analyzer::TreeStreamWriter::showMove().
ʤ sum max (loop/dag к)
checkHashRecord.h の 91 行で定義されています。
参照元 add(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::CheckmateRecorder::enter(), selectBestAttackMove(), と osl::checkmate::analyzer::TreeStreamWriter::showMove().
õ˽
checkHashRecord.h の 93 行で定義されています。
参照元 osl::checkmate::analyzer::ProofTreeTraverser::andNode(), osl::checkmate::analyzer::DisproofTreeTraverser::andNode(), osl::checkmate::OracleProver< Table >::attack(), osl::checkmate::OracleDisprover< Table >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::OracleProver< Table >::defense(), osl::checkmate::OracleDisprover< Table >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::OracleDisproverAttack< P, Disprover >::operator()(), osl::checkmate::OracleDisproverDefense< P, Disprover >::operator()(), osl::checkmate::ChildAttackHelper< P, CheckmateSearcher >::operator()(), osl::checkmate::ChildDefenseHelper< P, CheckmateSearcher >::operator()(), osl::checkmate::analyzer::ProofTreeTraverser::orNode(), osl::checkmate::analyzer::DisproofTreeTraverser::orNode(), osl::checkmate::OracleDisprover< Table >::proofEscape(), osl::checkmate::OracleProver< Table >::proofLose(), osl::checkmate::OracleDisprover< Table >::proofNoCheckmate(), osl::checkmate::OracleProver< Table >::proofWin(), osl::checkmate::analyzer::TreeStreamWriter::showMove(), と osl::checkmate::CheckHistoryToTable::undoWrite().
checkHashRecord.h の 96 行で定義されています。
char osl::checkmate::CheckHashRecord::proof_pieces_type [private] |
proof (disproof) pieces åȤɤ.
checkHashRecord.h の 102 行で定義されています。
参照元 disproofPieces(), hasDisproofPieces(), hasProofPieces(), isConsistent(), proofPieces(), setDisproofPieces(), setFinalByDominance(), と setProofPieces().