com.cyc.cycjava.cycl.inference.harness
Class inference_worker_split
java.lang.Object
com.cyc.tool.subl.util.SubLTrampolineFile
com.cyc.tool.subl.util.SubLTranslatedFile
com.cyc.cycjava.cycl.inference.harness.inference_worker_split
- All Implemented Interfaces:
- CommonSymbols, SubLFile
public final class inference_worker_split
- extends SubLTranslatedFile
Fields inherited from interface com.cyc.tool.subl.jrtl.nativeCode.subLisp.CommonSymbols |
ANSWER_TAG, APPEND_KEYWORD, APPEND_STACK_TRACES_TO_ERROR_MESSAGES, AREF, ASSEMBLE_FIXNUMS_TO_INTEGER, ATOM, BIGNUMP, BINARY_KEYWORD, BINDING_TYPE, BOOLEANP, CAAR, CADR, CAND, CAR, CCATCH, CDEC, CDESTRUCTURING_BIND, CDO, CDO_ALL_SYMBOLS, CDO_EXTERNAL_SYMBOLS, CDO_SYMBOLS, CDOHASH, CDOLIST, CDOTIMES, CDR, CHAR, CHAR_E_SYMBOL, CHAR_EQUAL_SYMBOL, CHAR_GREATER_THAN_OR_EQUAL_SYMBOL, CHAR_GREATER_THAN_SYMBOL, CHAR_GT_SYMBOL, CHAR_GTE_SYMBOL, CHAR_LESS_THAN_OR_EQUAL_SYMBOL, CHAR_LESS_THAN_SYMBOL, CHAR_LT_SYMBOL, CHAR_LTE_SYMBOL, CHAR_NE_SYMBOL, CHAR_NOT_EQUAL_SYMBOL, CHARACTERP, CHECK_TYPE, CINC, CLET, CMULTIPLE_VALUE_BIND, CNOT, CONS, CONSP, CONSTANT, COR, CPOP, CPROGV, CPUSH, CPUSHNEW, CREATE_KEYWORD, CSETF, CSETQ, CSOME, CTIME, CUNWIND_PROTECT, CVS_ID, DEBUG_IO, DECLAIM, DECLARE, DEFCONSTANT, DEFINE, DEFLEXICAL, DEFMACRO, DEFPARAMETER, DEFVAR, DIRECTION_KEYWORD, DYNAMIC, EIGHT_INTEGER, EIGHTEEN_INTEGER, ELEMENT_TYPE_KEYWORD, ELEVEN_INTEGER, END_KEYWORD, ENFORCE_MUST, ENFORCE_TYPE, EQ, EQL, EQUAL, EQUALP, ERROR, ERROR_KEYWORD, ERROR_OUTPUT, EVAL, EXTERNAL_FORMAT_KEYWORD, EXTERNAL_KEYWORD, FIF, FIFTEEN_INTEGER, FIRST, FIVE_INTEGER, FIXNUMP, FLOATP, FOUR_INTEGER, FOURTEEN_INTEGER, FUNCTION, FUNCTION_SPEC_P, FUNCTIONP, FUNLESS, FWHEN, GET, GETHASH, GETHASH_WITHOUT_VALUES, GUID_P, HASH_TABLE_ITERATOR_P, HASH_TABLE_P, IDENTITY, IF_DOES_NOT_EXIST_KEYWORD, IF_EXISTS_KEYWORD, IGNORE, INITIALIZATION_TYPE, INITIALIZER, INPUT_KEYWORD, INPUT_STREAM_P, INTEGERP, INTERNAL_KEYWORD, IO_KEYWORD, KEYWORDP, KILL_KEYWORD, LAMBDA_SYMBOL, LEXICAL, LIST, LISTP, LISTS, LOCK_P, LONG_BIGNUM_P, MACRO_ENV, MACRO_FORM, MEDIUM_BIGNUM_P, MEMBER, MINUS_ONE_INTEGER, MULTIPLE_VALUE_LIST, MUST, NCONC, NEW_VERSION_KEYWORD, NIL, NINE_INTEGER, NINETEEN_INTEGER, NREVERSE, NTH, NTH_VALUE, NULL, NULL_INPUT, NULL_OUTPUT, NUM_E_SYMBOL, NUM_GT_SYMBOL, NUM_GTE_SYMBOL, NUM_LT_SYMBOL, NUM_LTE_SYMBOL, NUM_NE_SYMBOL, NUMBERP, ONE_HUNDRED_THIRTY_SEVEN_INTEGER, ONE_HUNDRED_TWENTY_SEVEN_INTEGER, ONE_INTEGER, ONE_THOUSAND_INTEGER, OPTIONAL_SYMBOL, OTHERWISE, OUTPUT_KEYWORD, OUTPUT_STREAM_P, OVERWRITE_KEYWORD, PACKAGEP, PCASE, PCOND, PIF, PROBE_KEYWORD, PROCESS_TO_END, PROCESSP, PROCLAIM, PROGN, PUNLESS, PWHEN, QUERY_IO, QUIT, QUOTE, RENAME_AND_DELETE_KEYWORD, REST_SYMBOL, RET, RET_NIL, RET_T, RETURN_TAG, REVERSE, RW_LOCK_P, SECOND, SEQUENCEP, SEVEN_INTEGER, SEVENTEEN_INTEGER, SHORT_BIGNUM_P, SHOW_STACK_TRACES, SIX_INTEGER, SIXTEEN_INTEGER, SIXTY_FOUR_INTEGER, SORT, SSS, STANDARD_INPUT, STANDARD_OUTPUT, START_KEYWORD, STREAMP, STRING_E_SYMBOL, STRING_EQUAL_SYMBOL, STRING_GREATER_THAN_OR_EQUAL_SYMBOL, STRING_GREATER_THAN_SYMBOL, STRING_GT_SYMBOL, STRING_GTE_SYMBOL, STRING_LESS_THAN_OR_EQUAL_SYMBOL, STRING_LESS_THAN_SYMBOL, STRING_LT_SYMBOL, STRING_LTE_SYMBOL, STRING_NE_SYMBOL, STRING_NOT_EQUAL_SYMBOL, STRINGP, STRUCTURE_P, SUPERSEDE_KEYWORD, SUSPEND_TYPE_CHECKING, SYMBOL_FUNCTION, SYMBOL_VALUE, SYMBOLP, T, TEN_INTEGER, TERMINAL_IO, TEXT_KEYWORD, THIRTEEN_INTEGER, THIRTY_FOUR_INTEGER, THIRTY_THREE_INTEGER, THIRTY_TWO_INTEGER, THREE_INTEGER, TRACE_OUTPUT, TRUE, TWELVE_INTEGER, TWENTY_INTEGER, TWO_HUNDRED_FIFTY_FOUR_INTEGER, TWO_HUNDRED_FORTY_FOUR_INTEGER, TWO_INTEGER, UNDECLARED, UNPROVIDED, VALUES, VECTOR, VECTORP, WITH_ERROR_HANDLER, WITH_STATIC_AREA, WITH_THREAD_PRIVATE_AREA, WITH_WORKING_AREA, WORLD, ZERO_DOUBLE, ZERO_INTEGER |
Method Summary |
static SubLObject |
all_literals_connected_by_shared_varsP(SubLObject dnf_clause)
|
static SubLObject |
bubble_up_proof_to_split_link(SubLObject supporting_proof,
SubLObject my_variable_map,
SubLObject split_link)
First we translate the subproofs' bindings into terms of SPLIT-LINK's
supported problem, then we cartesian-product them and make new proofs. |
static SubLObject |
categorize_clause_variables_via_literals(SubLObject clause)
|
static SubLObject |
categorize_sensified_clause_variables_via_literals(SubLObject sensified_clause)
|
static SubLObject |
categorized_group_to_problem_query(SubLObject group)
Takes the return value of @xref categorize-variables-via-literals and turns it
into a problem query. |
static SubLObject |
close_split_link(SubLObject split_link)
Closes all open supporting mapped problems of SPLIT-LINK and considers that they could be irrelevant. |
static SubLObject |
compute_split_tactic_preference_level(SubLObject supported_problem,
SubLObject supporting_problem,
SubLObject strategic_context)
|
static SubLObject |
compute_split_tactic_productivity(SubLObject supported_problem,
SubLObject supporting_problem,
SubLObject strategy)
|
static SubLObject |
compute_strategic_properties_of_meta_split_tactic(SubLObject tactic,
SubLObject strategy)
|
static SubLObject |
compute_strategic_properties_of_split_tactic(SubLObject tactic,
SubLObject supporting_problem,
SubLObject strategy)
|
static SubLObject |
declare_inference_worker_split_file()
|
void |
declareFunctions()
Declares the mapping between functions and symbols for all named
functions defined in the file. |
static SubLObject |
determine_new_meta_split_tactics(SubLObject supported_problem,
SubLObject dnf_clause)
|
static SubLObject |
determine_shared_variable_islands(SubLObject dnf_clause)
|
static SubLObject |
execute_meta_split_tactic(SubLObject tactic)
|
static SubLObject |
execute_split_tactic(SubLObject tactic)
|
static SubLObject |
find_or_create_split_link_supporting_problems(SubLObject store,
SubLObject dnf_clause)
|
static SubLObject |
find_split_tactic_supporting_mapped_problem(SubLObject tactic)
|
static SubLObject |
find_split_tactic_supporting_problem(SubLObject tactic)
|
static SubLObject |
ground_sensified_literal_to_categorized_group(SubLObject sensified_literal)
|
static SubLObject |
init_inference_worker_split_file()
|
void |
initializeVariables()
Initializes all global variables and private internal variables
for constants defined in the file. |
static SubLObject |
maybe_new_split_link(SubLObject supported_problem,
SubLObject dnf_clause)
|
static SubLObject |
meta_split_criteria()
|
static SubLObject |
meta_split_criterion_applicableP(SubLObject meta_split_criterion,
SubLObject conjunct_problem)
|
static SubLObject |
meta_split_progress_iterator_doneP(SubLObject tactic)
|
static SubLObject |
meta_split_tactic_create_and_activate_split_tactics(SubLObject meta_split_tactic,
SubLObject supported_problem,
SubLObject problem_index_pairs)
|
static SubLObject |
meta_split_tactic_create_one_split_tactic(SubLObject meta_split_tactic,
SubLObject supported_problem,
SubLObject index)
|
static SubLObject |
meta_split_tactic_index_doneP(SubLObject meta_split_tactic,
SubLObject index)
|
static SubLObject |
meta_split_tactic_link(SubLObject meta_split_tactic)
|
static SubLObject |
meta_split_tactic_note_split_tactic_done(SubLObject tactic,
SubLObject index)
|
static SubLObject |
meta_split_tactic_p(SubLObject object)
|
static SubLObject |
meta_split_tactic_todo_indices(SubLObject meta_split_tactic)
|
static SubLObject |
meta_split_tactics_enabledP()
|
static SubLObject |
meta_structural_progress_iterator_doneP(SubLObject tactic)
|
static SubLObject |
new_meta_split_progress_iterator(SubLObject tactic)
|
static SubLObject |
new_meta_split_tactic(SubLObject problem)
|
static SubLObject |
new_split_link(SubLObject supported_problem,
SubLObject supporting_mapped_problems)
|
static SubLObject |
new_split_proof(SubLObject link,
SubLObject subproofs_with_sub_bindings)
|
static SubLObject |
new_split_tactic(SubLObject supported_problem,
SubLObject index)
|
static SubLObject |
note_split_tactics_strategically_possible(SubLObject split_tactics)
|
static SubLObject |
problem_first_split_argument_link(SubLObject problem)
|
static SubLObject |
problem_sole_split_argument_link(SubLObject problem)
PROBLEM should have exactly one argument link which is a split link. |
void |
runTopLevelForms()
Runs all top-level forms in order. |
static SubLObject |
sensify_contextualized_clause(SubLObject clause)
|
static SubLObject |
setup_inference_worker_split_file()
|
static SubLObject |
split_link_p(SubLObject object)
|
static SubLObject |
split_proof_p(SubLObject object)
|
static SubLObject |
split_tactic_link(SubLObject split_tactic)
|
static SubLObject |
split_tactic_lookahead_problem(SubLObject split_tactic)
|
static SubLObject |
split_tactic_p(SubLObject object)
|
static SubLObject |
split_tactic_supporting_mapped_problem_index(SubLObject tactic)
|
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
me
public static final SubLFile me
myName
public static final java.lang.String myName
- See Also:
- Constant Field Values
$split_tactic_default_preference_level$
public static SubLSymbol $split_tactic_default_preference_level$
- The default preference level used for split tactics.
Splits are independent of each other, so no bindings from one half
could possibly make the other half any more solvable.
Hence, all splits should be preferred by default.
However, if any split is disallowed, the entire problem should be deemed no-good.
$split_tactic_default_preference_level_justification$
public static SubLSymbol $split_tactic_default_preference_level_justification$
$meta_split_tactics_enabledP$
public static SubLSymbol $meta_split_tactics_enabledP$
- Temporary control variable, @todo hard-code to T
$meta_split_tactic_default_preference_level$
public static SubLSymbol $meta_split_tactic_default_preference_level$
$meta_split_tactic_default_preference_level_justification$
public static SubLSymbol $meta_split_tactic_default_preference_level_justification$
$kw0$SPLIT
public static final SubLSymbol $kw0$SPLIT
$list1
public static final SubLList $list1
$sym2$SPLIT_LINK_VAR
public static final SubLSymbol $sym2$SPLIT_LINK_VAR
$sym3$CLET
public static final SubLSymbol $sym3$CLET
$sym4$DO_PROBLEM_LINK_SUPPORTING_MAPPED_PROBLEMS_NUMBERED
public static final SubLSymbol $sym4$DO_PROBLEM_LINK_SUPPORTING_MAPPED_PROBLEMS_NUMBERED
$sym5$PWHEN
public static final SubLSymbol $sym5$PWHEN
$sym6$PROBLEM_LINK_INDEX_OPEN_
public static final SubLSymbol $sym6$PROBLEM_LINK_INDEX_OPEN_
$str7$_s_is_not_a_supporting_mapped_pro
public static final SubLString $str7$_s_is_not_a_supporting_mapped_pro
$str8$couldn_t_find_any_split_tactics_f
public static final SubLString $str8$couldn_t_find_any_split_tactics_f
$kw9$SKIP
public static final SubLSymbol $kw9$SKIP
$str10$Could_not_find_the_link_for__a
public static final SubLString $str10$Could_not_find_the_link_for__a
$sym11$SPLIT_TACTIC_P
public static final SubLSymbol $sym11$SPLIT_TACTIC_P
$str12$Generalized_tactic__a_did_not_ind
public static final SubLString $str12$Generalized_tactic__a_did_not_ind
$str13$Tried_to_make_a_split_link_with_l
public static final SubLString $str13$Tried_to_make_a_split_link_with_l
$kw14$TACTICAL
public static final SubLSymbol $kw14$TACTICAL
$kw15$PREFERRED
public static final SubLSymbol $kw15$PREFERRED
$str16$the_default_for_split_tactics
public static final SubLString $str16$the_default_for_split_tactics
$kw17$DISALLOWED
public static final SubLSymbol $kw17$DISALLOWED
$kw18$PROVEN
public static final SubLSymbol $kw18$PROVEN
$kw19$NEG
public static final SubLSymbol $kw19$NEG
$kw20$POS
public static final SubLSymbol $kw20$POS
$sym21$HL_VARIABLE_P
public static final SubLSymbol $sym21$HL_VARIABLE_P
$sym22$_DETERMINE_NEW_SPLIT_TACTICS_MODULE_
public static final SubLSymbol $sym22$_DETERMINE_NEW_SPLIT_TACTICS_MODULE_
$kw23$DETERMINE_NEW_SPLIT_TACTICS
public static final SubLSymbol $kw23$DETERMINE_NEW_SPLIT_TACTICS
$str24$the_default_for_meta_split_tactic
public static final SubLString $str24$the_default_for_meta_split_tactic
$kw25$META_STRUCTURAL
public static final SubLSymbol $kw25$META_STRUCTURAL
$str26$unexpected_meta_structural_tactic
public static final SubLString $str26$unexpected_meta_structural_tactic
$list27
public static final SubLList $list27
$list28
public static final SubLList $list28
$list29
public static final SubLList $list29
$kw30$ONE_NO_GOOD
public static final SubLSymbol $kw30$ONE_NO_GOOD
$kw31$ALL_SINGLE_LITERAL
public static final SubLSymbol $kw31$ALL_SINGLE_LITERAL
$kw32$ALL_PROBLEM_REUSE
public static final SubLSymbol $kw32$ALL_PROBLEM_REUSE
$kw33$ONE_CLOSED
public static final SubLSymbol $kw33$ONE_CLOSED
$kw34$ONE_CLOSED_PROBLEM_REUSE
public static final SubLSymbol $kw34$ONE_CLOSED_PROBLEM_REUSE
$kw35$ALL_SINGLE_LITERAL_PROBLEM_REUSE
public static final SubLSymbol $kw35$ALL_SINGLE_LITERAL_PROBLEM_REUSE
$kw36$ALL_THE_REST
public static final SubLSymbol $kw36$ALL_THE_REST
$str37$Unknown_meta_split_criterion__s
public static final SubLString $str37$Unknown_meta_split_criterion__s
$list38
public static final SubLList $list38
split_link_p
public static final SubLObject split_link_p(SubLObject object)
maybe_new_split_link
public static final SubLObject maybe_new_split_link(SubLObject supported_problem,
SubLObject dnf_clause)
- Returns:
- split-link-p, either the already existing one or a new one.
new_split_link
public static final SubLObject new_split_link(SubLObject supported_problem,
SubLObject supporting_mapped_problems)
close_split_link
public static final SubLObject close_split_link(SubLObject split_link)
- Closes all open supporting mapped problems of SPLIT-LINK and considers that they could be irrelevant.
find_or_create_split_link_supporting_problems
public static final SubLObject find_or_create_split_link_supporting_problems(SubLObject store,
SubLObject dnf_clause)
split_tactic_p
public static final SubLObject split_tactic_p(SubLObject object)
new_split_tactic
public static final SubLObject new_split_tactic(SubLObject supported_problem,
SubLObject index)
split_tactic_supporting_mapped_problem_index
public static final SubLObject split_tactic_supporting_mapped_problem_index(SubLObject tactic)
split_tactic_link
public static final SubLObject split_tactic_link(SubLObject split_tactic)
find_split_tactic_supporting_mapped_problem
public static final SubLObject find_split_tactic_supporting_mapped_problem(SubLObject tactic)
find_split_tactic_supporting_problem
public static final SubLObject find_split_tactic_supporting_problem(SubLObject tactic)
compute_strategic_properties_of_split_tactic
public static final SubLObject compute_strategic_properties_of_split_tactic(SubLObject tactic,
SubLObject supporting_problem,
SubLObject strategy)
compute_split_tactic_productivity
public static final SubLObject compute_split_tactic_productivity(SubLObject supported_problem,
SubLObject supporting_problem,
SubLObject strategy)
compute_split_tactic_preference_level
public static final SubLObject compute_split_tactic_preference_level(SubLObject supported_problem,
SubLObject supporting_problem,
SubLObject strategic_context)
execute_split_tactic
public static final SubLObject execute_split_tactic(SubLObject tactic)
problem_sole_split_argument_link
public static final SubLObject problem_sole_split_argument_link(SubLObject problem)
- PROBLEM should have exactly one argument link which is a split link.
Signals an error if this is not the case.
problem_first_split_argument_link
public static final SubLObject problem_first_split_argument_link(SubLObject problem)
- Returns:
- nil or split-link-p
split_tactic_lookahead_problem
public static final SubLObject split_tactic_lookahead_problem(SubLObject split_tactic)
new_split_proof
public static final SubLObject new_split_proof(SubLObject link,
SubLObject subproofs_with_sub_bindings)
- Returns:
- 0 proof-p
split_proof_p
public static final SubLObject split_proof_p(SubLObject object)
bubble_up_proof_to_split_link
public static final SubLObject bubble_up_proof_to_split_link(SubLObject supporting_proof,
SubLObject my_variable_map,
SubLObject split_link)
- First we translate the subproofs' bindings into terms of SPLIT-LINK's
supported problem, then we cartesian-product them and make new proofs.
all_literals_connected_by_shared_varsP
public static final SubLObject all_literals_connected_by_shared_varsP(SubLObject dnf_clause)
determine_shared_variable_islands
public static final SubLObject determine_shared_variable_islands(SubLObject dnf_clause)
- Returns:
- list of problem-query-p
categorize_clause_variables_via_literals
public static final SubLObject categorize_clause_variables_via_literals(SubLObject clause)
categorize_sensified_clause_variables_via_literals
public static final SubLObject categorize_sensified_clause_variables_via_literals(SubLObject sensified_clause)
sensify_contextualized_clause
public static final SubLObject sensify_contextualized_clause(SubLObject clause)
ground_sensified_literal_to_categorized_group
public static final SubLObject ground_sensified_literal_to_categorized_group(SubLObject sensified_literal)
categorized_group_to_problem_query
public static final SubLObject categorized_group_to_problem_query(SubLObject group)
- Takes the return value of @xref categorize-variables-via-literals and turns it
into a problem query.
- Returns:
- problem-query-p
meta_split_tactics_enabledP
public static final SubLObject meta_split_tactics_enabledP()
meta_split_tactic_p
public static final SubLObject meta_split_tactic_p(SubLObject object)
meta_split_tactic_link
public static final SubLObject meta_split_tactic_link(SubLObject meta_split_tactic)
meta_split_tactic_todo_indices
public static final SubLObject meta_split_tactic_todo_indices(SubLObject meta_split_tactic)
meta_split_tactic_index_doneP
public static final SubLObject meta_split_tactic_index_doneP(SubLObject meta_split_tactic,
SubLObject index)
determine_new_meta_split_tactics
public static final SubLObject determine_new_meta_split_tactics(SubLObject supported_problem,
SubLObject dnf_clause)
new_meta_split_tactic
public static final SubLObject new_meta_split_tactic(SubLObject problem)
compute_strategic_properties_of_meta_split_tactic
public static final SubLObject compute_strategic_properties_of_meta_split_tactic(SubLObject tactic,
SubLObject strategy)
new_meta_split_progress_iterator
public static final SubLObject new_meta_split_progress_iterator(SubLObject tactic)
meta_structural_progress_iterator_doneP
public static final SubLObject meta_structural_progress_iterator_doneP(SubLObject tactic)
meta_split_progress_iterator_doneP
public static final SubLObject meta_split_progress_iterator_doneP(SubLObject tactic)
meta_split_criteria
public static final SubLObject meta_split_criteria()
execute_meta_split_tactic
public static final SubLObject execute_meta_split_tactic(SubLObject tactic)
meta_split_criterion_applicableP
public static final SubLObject meta_split_criterion_applicableP(SubLObject meta_split_criterion,
SubLObject conjunct_problem)
- Returns:
- 0 booleanp; whether META-SPLIT-CRITERION applies to CONJUNCT-PROBLEM
meta_split_tactic_create_and_activate_split_tactics
public static final SubLObject meta_split_tactic_create_and_activate_split_tactics(SubLObject meta_split_tactic,
SubLObject supported_problem,
SubLObject problem_index_pairs)
meta_split_tactic_create_one_split_tactic
public static final SubLObject meta_split_tactic_create_one_split_tactic(SubLObject meta_split_tactic,
SubLObject supported_problem,
SubLObject index)
meta_split_tactic_note_split_tactic_done
public static final SubLObject meta_split_tactic_note_split_tactic_done(SubLObject tactic,
SubLObject index)
note_split_tactics_strategically_possible
public static final SubLObject note_split_tactics_strategically_possible(SubLObject split_tactics)
declare_inference_worker_split_file
public static final SubLObject declare_inference_worker_split_file()
init_inference_worker_split_file
public static final SubLObject init_inference_worker_split_file()
setup_inference_worker_split_file
public static final SubLObject setup_inference_worker_split_file()
declareFunctions
public void declareFunctions()
- Description copied from interface:
SubLFile
- Declares the mapping between functions and symbols for all named
functions defined in the file.
Like CRTL define.
initializeVariables
public void initializeVariables()
- Description copied from interface:
SubLFile
- Initializes all global variables and private internal variables
for constants defined in the file.
Like CRTL init.
runTopLevelForms
public void runTopLevelForms()
- Description copied from interface:
SubLFile
- Runs all top-level forms in order.
Like CRTL setup.