cspsat.hooks module
新規関数と新規制約に対応するためのフック関数を提供.
注釈
本プログラムは学習用の目的で作成されている. 実用上の問題への適用は想定していない. Copyright (c) 2025-- Naoyuki Tamura Licensed under the MIT License
- cspsat.hooks.defaultFunctionHook(function, encoder)[ソース]
新規関数に対応するためのフックとしてデフォールトで設定されている関数. 以下に対応している.
["div", X, n]["mod", X, n]["abs", X]["min", X1, ..., Xn]["max", X1, ..., Xn]["if", A, X, Y]
- パラメータ:
function (list) -- 制約充足問題中の式.
encoder (Encoder) -- Encoderインスタンス.
- 戻り値:
引数の function そのまま,または function を変換した式.
- cspsat.hooks.defaultConstraintHook(constraint, encoder)[ソース]
新規制約に対応するためのフックとしてデフォールトで設定されている関数. 以下に対応している.
["alldifferent", X1, ..., Xn]["lexCmp", cmp, [X1,...Xn], [Y1,...,Yn]](cmpは"==", "!=", "<=", "<", ">=", ">")["mulCmp", cmp, X, Y, Z](cmpは"==", "!=", "<=", "<", ">=", ">")["powCmp", cmp, X, n, Z](cmpは"==", "!=", "<=", "<", ">=", ">")["bits", [X1,...Xn], X]["bit", X, i]
- パラメータ:
constraint (list) -- 制約充足問題中の制約.
encoder (Encoder) -- Encoderインスタンス.
- 戻り値:
引数の constraint そのまま,または constraint を変換した制約.