synthesis_util

prob_prolog/src/synthesis/synthesis_util.pl

Modules

  • ProB_Preferences_maxx.pl
  • TestPrefs.pl
  • alloy2b
  • alloy2b_benchmarks
  • ample_sets
  • any.pl
  • assert_profiler
  • ast_cleanup_for_smt
  • ast_inspector
  • ast_optimizer_for_smt
  • ast_to_difference_logic
  • atelierb_provers_interface
  • atom.pl
  • avl_custom
  • avl_tools
  • avl_tree.pl
  • avl_ugraphs
  • avlp
  • b2sat
  • b2setlog
  • b_arithmetic_expressions.pl
  • b_ast_cleanup
  • b_ast_cleanup_rewrite_rules
  • b_cogen
  • b_compiler
  • b_enumerate
  • b_enumeration_order_analysis
  • b_expression_sharing
  • b_global_sets
  • b_intelligent_trace_replay
  • b_interpreter
  • b_interpreter_components
  • b_interpreter_eventb
  • b_machine_identifier_normalization
  • b_operation_cache
  • b_operation_guards
  • b_read_write_info
  • b_show_history
  • b_simplifier
  • b_state_model_check
  • b_synthesis
  • b_to_cnf
  • b_trace_checking
  • banditfuzz
  • basic_unit_tests
  • before_after_predicates
  • benchmark.pl
  • benchmark_analyser.pl
  • between.pl
  • bf_env
  • bliss_interface
  • block_checker.pl
  • bmachine
  • bmachine_construction
  • bmachine_static_checks
  • bmachine_structure
  • bmc
  • bool_pred
  • bool_pred_test.pl
  • boolean.pl
  • bsyntaxtree
  • bsyntaxtree_quantifiers
  • bvisual
  • bvisual_any_maxsolver
  • cbc_ba
  • cbc_path_solver
  • cbc_refinement_checks
  • cdclt_pred_to_sat
  • cdclt_preprocessing
  • cdclt_sat_solver
  • cdclt_settings
  • cdclt_solver
  • cdclt_stats
  • ce_replay
  • chr_set_membership
  • closures
  • clpfd_interface
  • clpfd_lists
  • clpfd_off_interface
  • clpfd_tables
  • code2vec
  • code2vec_tests
  • codespeed_versions
  • compile_time_flags
  • consistencycheck
  • constraints
  • counter
  • coverage_statistics
  • coverage_term_expander.pl
  • coverage_tools
  • coverage_tools_annotations
  • csp_basic
  • csp_sequences
  • csp_sets
  • csp_tuples
  • ctigar
  • ctl
  • custom_explicit_sets
  • cvc4interface
  • debug
  • debugging_calls
  • debugging_calls_te.pl
  • delay
  • dependence
  • dev.pl
  • difference_logic_solver
  • disprover
  • disprover_test_runner
  • disprover_test_runner_cli.pl
  • domain
  • domain_test.pl
  • dot_graphs_static_analysis
  • eclipse_interface
  • enable_graph
  • enabling_analysis
  • enabling_predicates
  • error_manager
  • eval_interface
  • eval_let_store
  • eval_strings
  • eventhandling
  • example.pl
  • experiment.pl
  • external_function_declarations
  • external_functions
  • external_functions_reals
  • external_functions_svg
  • fastio_inspector.pl
  • fd_utils_clpfd
  • fdr_csp_generator
  • fibonacci_heap
  • find_whens.pl
  • fixed_value.pl
  • float.pl
  • fuzzer
  • fuzzer_runner.pl
  • fuzzfile
  • fuzzing
  • gensym
  • grammar
  • graph_iso_nauty
  • graphical_state_viewer_images
  • graphiso
  • graphiso_test
  • ground_truth
  • gui_tcltk.pl
  • hashing
  • haskell_csp
  • haskell_csp_analyzer
  • heuristic_grouping.pl
  • hit_profiler
  • ic3
  • inf_arith
  • input_syntax_tree
  • integer.pl
  • interval_calc
  • json_parser
  • junit_tests
  • kernel_card_arithmetic
  • kernel_cardinality_attr
  • kernel_dif
  • kernel_equality
  • kernel_freetypes
  • kernel_frozen_info
  • kernel_lists
  • kernel_mappings
  • kernel_mappings_dispatch
  • kernel_non_empty_attr
  • kernel_objects
  • kernel_ordering
  • kernel_propagation
  • kernel_reals
  • kernel_records
  • kernel_strings
  • kernel_sym_break_order
  • kernel_tools
  • kernel_waitflags
  • kernel_z
  • kinduction
  • kodkod
  • kodkod2
  • kodkod_annotator
  • kodkod_integer_recalc
  • kodkod_printer
  • kodkod_process
  • kodkod_rewrite
  • kodkod_test
  • kodkod_tools
  • kodkod_translate
  • kodkod_typing
  • latex_processor
  • library_setup
  • list.pl
  • location_vars_to_program
  • logger
  • logging
  • ltl
  • ltl2ba
  • ltl_fairness
  • ltl_propositions
  • ltl_safety
  • ltl_tools
  • ltl_translate
  • ltl_verification
  • ltlc
  • ltsmin
  • ltsmin_c_interface
  • ltsmin_trace
  • master
  • maxsolver
  • mcdc_coverage
  • member_of.pl
  • memoization
  • meta_interface
  • mic_generation
  • model_checker
  • model_translation
  • module_information
  • msg_interop
  • mutate_expressions
  • mutation.pl
  • mutation_prob_ast_int_expr.pl
  • mutation_prob_ast_pred.pl
  • mutation_prob_ast_seq_expr.pl
  • mutation_prob_ast_set_expr.pl
  • mutations
  • myheap
  • number.pl
  • operation_data_generator
  • optimizing_solver
  • ordsetsp
  • parsercall
  • partition_detection
  • pathes
  • pathes_extensions_db
  • pathes_lib
  • performance_messages
  • pge_algo
  • plspec
  • plspec_core
  • plspec_logger
  • plspec_test
  • pltables
  • pltables_export
  • pltables_export_csv
  • pltables_export_html
  • pltables_export_latex
  • pltables_export_tools
  • pltables_export_xml
  • plunit_test_runner
  • pragmas
  • predicate_abstraction
  • predicate_analysis
  • predicate_data_generator
  • predicate_debugger
  • predicate_evaluator
  • predicate_handling
  • pref_definitions
  • preferences
  • preprofiler
  • preserve_behaviour_test.pl
  • prettyprinter
  • prob2_interface
  • prob_ast_any.pl
  • prob_ast_boolean.pl
  • prob_ast_couple.pl
  • prob_ast_eval_int_expr.pl
  • prob_ast_eval_pred.pl
  • prob_ast_eval_seq_expr.pl
  • prob_ast_eval_set_expr.pl
  • prob_ast_expr.pl
  • prob_ast_identifier.pl
  • prob_ast_int_expr.pl
  • prob_ast_integer.pl
  • prob_ast_minimize_int_expr.pl
  • prob_ast_minimize_pred.pl
  • prob_ast_minimize_seq_expr.pl
  • prob_ast_minimize_set_expr.pl
  • prob_ast_pred.pl
  • prob_ast_record.pl
  • prob_ast_sat.pl
  • prob_ast_seq.pl
  • prob_ast_seq_expr.pl
  • prob_ast_set.pl
  • prob_ast_set_expr.pl
  • prob_ast_string.pl
  • prob_cli
  • prob_cov.pl
  • prob_cov_runner.pl
  • prob_profiling_cli.pl
  • prob_rule_compiler
  • prob_socketserver
  • prob_startup
  • prob_state_predicates
  • prob_tcltk.pl
  • prob_type.pl
  • prob_value_any.pl
  • prob_value_boolean.pl
  • prob_value_integer.pl
  • prob_value_record.pl
  • prob_value_seq.pl
  • prob_value_set.pl
  • prob_value_string.pl
  • probhash
  • probsocket_proxy.pl
  • profiler
  • profiler_gui
  • profiler_te
  • prologTasks
  • prothon
  • proz
  • ptest.pl
  • quantifier_instantiation
  • random_permutations
  • rational.pl
  • record_detection
  • reduce_graph_state_space
  • refinement_checker
  • regexp
  • rewrite_rules_db
  • runtime_profiler
  • safety_mc
  • sap
  • sat_symmetry_breaking
  • satsolver
  • schemaexpansion
  • schemavars
  • self_check
  • self_check_off.pl
  • seq_rewriter
  • set_rewriter
  • smt_common_predicates
  • smt_solver_benchmarks
  • smt_solvers_interface
  • smt_symmetry_breaking
  • smtlib2_cli
  • smtlib2_environment
  • smtlib2_interpreter
  • smtlib2_parser
  • smtlib2_parser_tests
  • smtlib2_translation
  • snippets.pl
  • softfloat
  • solver_dispatcher
  • solver_handling
  • solver_interface
  • solvercalls
  • source_profiler
  • specfile
  • state_as_dot_graph
  • state_custom_dot_graph
  • state_graph_canon
  • state_packing
  • state_permuter
  • state_space
  • state_space_dijkstra
  • state_space_exploration_modes
  • state_space_explorer
  • state_space_open_nodes
  • state_space_open_nodes_c
  • state_space_reduction
  • static_analysis
  • static_enabling_analysis
  • static_ordering
  • store
  • subexpressions
  • succeed_max
  • symmetry_marker
  • symmetry_reduction
  • synthesis_tests
  • synthesis_util
  • system_call
  • table_tools
  • tcltk_interface
  • tcltk_tree_inspector
  • test
  • test2
  • test_fibonacci_heap
  • test_nodestore.pl
  • test_paths
  • test_regexp
  • test_regexp_unicode
  • test_runner
  • test_runner_cov.pl
  • test_typechecker
  • testcases
  • testdining
  • testltlc
  • tests.pl
  • testsignal.pl
  • timer
  • tools
  • tools_commands
  • tools_fastread
  • tools_files
  • tools_io
  • tools_lists
  • tools_matching
  • tools_meta
  • tools_portability
  • tools_positions
  • tools_printing
  • tools_strings
  • tools_timeout
  • trace_generator
  • translate
  • translate_keywords
  • tree.pl
  • typechecker
  • typing_tools
  • uml_generator
  • unbound_spec_test.pl
  • unsat_core_generalization
  • unsat_cores
  • user_interrupts
  • user_signal
  • validator
  • validator_test
  • value_persistance
  • variable.pl
  • version
  • visb_visualiser
  • visualize_graph
  • weakest_preconditions
  • well_def_analyser
  • well_def_hyps
  • well_def_prover
  • well_def_tools
  • welldef
  • whash_send
  • worker
  • xml2b
  • xml_prob
  • xtl_interface
  • z3interface
  • z_tools
  • z_typechecker
  • zenvironment
  • zmq
  • zmq_rpc
  • zparameters
  • ztransformations
  • Predicates of synthesis_util

  • accumulate_input_output_if_non_empty/3
  • adapt_machine_code_for_operations/2
  • adapt_machine_code_for_operations_aux/3
  • add_distinguishing_states_from_cache/6
  • add_invariant_to_machine_content/3
  • apply_solution_to_machine/5
  • apply_solution_to_machine_and_type_invariant/5
  • apply_solution_to_machine_aux/4
  • apply_solution_to_machine_aux/5
  • b_compute_expression_nowf_no_bindings/2
  • b_get_machine_enumerated_sets_with_names/1
  • b_get_machinevars_with_operation_params/1
  • b_get_machinevars_with_operation_params_aux/2
  • b_get_typed_invariant_from_machine/1
  • b_get_typing_predicate/1
  • b_get_typing_predicate_for_vars/2
  • b_test_boolean_expression_wf_no_bindings/2
  • check_invariant_on_state/3
  • check_negative_inputs_against_operation_precondition/2
  • check_negative_inputs_against_operation_precondition_aux/2
  • check_states_on_guard/2
  • check_states_on_guards/3
  • check_transition_against_machine_operations/4
  • check_transition_against_machine_operations/5
  • check_transition_against_machine_operations_aux/7
  • check_transitions_against_machine_operations/4
  • check_transitions_against_machine_operations_aux/2
  • conjunct_previous_invariant_or_guard_if_necessary/4
  • contains_equivalent_state/3
  • contains_equivalent_state/4
  • create_equality_nodes_from_example/2
  • create_equality_nodes_from_example/3
  • create_equality_nodes_from_examples/3
  • create_equality_nodes_from_examples/5
  • create_equality_predicate_from_example/2
  • delete_numbers_from_atom/2
  • delete_numbers_from_codelist/2
  • equality_to_assignment/2
  • example_bindings_to_ast_nodes/2
  • examples_already_reduced/1
  • exclude_accumulated_states/4
  • exclude_transition_constraint/4
  • exclude_variable_state/3
  • expand_state_cache_if_guard_and_solution/6
  • expand_transition_cache_if_solution/5
  • finalize_synthesized_action/3
  • find_typed_identifier_uses_with_info/2
  • find_typed_identifier_uses_with_info_aux/2
  • get_binding_for_name_or_value/3
  • get_constant_node_or_id/2
  • get_current_vars_from_example/2
  • get_distinct_independent_types_constraint_for_enums/1
  • get_distinct_independent_types_constraint_for_enums/3
  • get_distinct_states/5
  • get_distinct_states/3
  • get_distinguishing_state_or_trans/8
  • get_distinguishing_state_or_trans_aux/6
  • get_guard_list_from_operation/2
  • get_guard_list_from_operation_aux/3
  • get_guard_list_from_operation_aux2/3
  • get_input_nodes_from_bindings/2
  • get_input_output_nodes_from_bindings/3
  • get_invalid_state_equalities_for_operation/5
  • get_invalid_state_equalities_for_operation_aux/5
  • get_invalid_states/3
  • get_invariant_violating_example/4
  • get_invariant_violating_transition/6
  • get_invariant_violating_transition_aux/2
  • get_invariant_violating_vars_from_examples/3
  • get_invariants_for_current_vars/3
  • get_involved_variables/4
  • get_involved_variables_aux/4
  • get_location_var_node_by_info_term/3
  • get_location_var_node_by_name/3
  • get_machinevars_by_name/2
  • get_machinevars_by_name_aux/4
  • get_name_from_operation_ast/2
  • get_operation_params_from_ids/2
  • get_operation_params_from_ids/3
  • get_output_nodes_from_bindings/2
  • get_output_nodes_from_bindings_aux/2
  • get_precondition_from_operation_body/2
  • get_single_constant_or_set_operator_id/3
  • get_solution_or_none/2
  • get_states_aux/6
  • get_valid_and_invalid_equality_predicates_for_invariants/4
  • get_valid_and_invalid_equality_predicates_for_operation/6
  • get_valid_inputs_for_operation/3
  • get_valid_states/3
  • get_valid_transitions_for_operation/5
  • get_valid_transitions_for_operation_aux/7
  • get_var_node_by_info_term/3
  • get_varname_from_binding/2
  • get_varname_from_id_node/2
  • get_varname_from_node_info/2
  • get_violated_and_valid_machine_invariants/4
  • get_violated_and_valid_machine_invariants_aux/4
  • get_violated_and_valid_machine_invariants_aux2/3
  • is_ast/1
  • is_seq/1
  • keep_asserted_initial_examples/6
  • keep_asserted_initial_states/3
  • mark_examples_as_initial/4
  • mark_examples_as_initial_aux/2
  • mark_examples_as_initial_aux2/2
  • operation_match/2
  • parallel_to_conjunction/2
  • parse_and_typecheck_value/2
  • prepare_solution/6
  • prepare_synthesized_guards_for_action/2
  • prime_or_unprime_variables_in_ast/4
  • recreate_guards_for_operation_parameters/2
  • recreate_guards_for_operation_parameters/4
  • reduce_input_to_violating_vars/3
  • reduce_state_to_current_vars/3
  • remove_operations_from_list/4
  • remove_pre_condition_from_body/2
  • remove_prime/2
  • remove_set_of_couple_type/2
  • replace_precondition_if_operation_fits/4
  • replace_precondition_if_operation_fits_aux/3
  • replace_precondition_of_operation/3
  • replace_preds_by_subst_if_neccessary/3
  • sequence_well_definedness_constraint/2
  • set_explicit_type_if_necessary/3
  • set_nested_types_if_necessary/3
  • set_operation_params_domain/2
  • set_operation_params_domain/3
  • set_type_if_necessary/2
  • solve_distinguishing_constraint_with_fallback/2
  • split_input_output_tuples/3
  • split_input_output_tuples/5
  • split_typing_predicates_from_precondition/4
  • translate_example_ast/2
  • untyped/1
  • value_to_ast/2
  • variable_parsedvalue_tuple_to_ast/2
  • zip/3
  • zip_aux/4
  • Module Information

    Module Information


    1683 Lines

    139 Predicates

    Imported Modules:           bsyntaxtree          bmachine          lists          plspec/plspec/plspec_core

    59 Exports

    16 specified Imports

    Imports Exports

    Name:    add_error/3

    Module:    error_manager


    Name:    b_test_boolean_expression_cs/5

    Module:    b_interpreter


    Name:    b_compute_expression_nowf/6

    Module:    b_interpreter


    Name:    solve_predicate/3

    Module:    solver_interface


    Name:    solve_predicate/5

    Module:    solver_interface


    Name:     prime_identifier/2

    Module:     btypechecker


    Name:     is_primed_id/1

    Module:     btypechecker


    Name:     btype/7

    Module:     btypechecker


    Name:    parse/3

    Module:    parsercall


    Name:    translate_bexpression/2

    Module:    translate


    Name:    translate_bexpression_to_codes/2

    Module:    translate


    Name:    translate_subst_or_bexpr/2

    Module:    translate


    Name:    translate_machine/3

    Module:    translate


    Name:    generate_typing_predicates/2

    Module:    translate


    Name:     subtract/3

    Module:     sets


    Name:     intersection/3

    Module:     sets


    Name:    get_distinguishing_state_or_trans/8


    Name:    get_valid_transitions_for_operation/5


    Name:    get_invariant_violating_transition/6


    Name:    get_valid_and_invalid_equality_predicates_for_operation/6


    Name:    get_distinct_states/5


    Name:    get_valid_and_invalid_equality_predicates_for_invariants/4


    Name:    get_violated_and_valid_machine_invariants/4


    Name:    get_invariant_violating_example/4


    Name:    get_involved_variables/4


    Name:    get_invariant_violating_vars_from_examples/3


    Name:    get_single_constant_or_set_operator_id/3


    Name:    get_input_output_nodes_from_bindings/3


    Name:    get_output_nodes_from_bindings/2


    Name:    get_location_var_node_by_info_term/3


    Name:    get_location_var_node_by_name/3


    Name:    get_var_node_by_info_term/3


    Name:    get_operation_params_from_ids/2


    Name:    set_operation_params_domain/2


    Name:    get_guard_list_from_operation/2


    Name:    get_current_vars_from_example/2


    Name:    get_input_nodes_from_bindings/2


    Name:    get_varname_from_node_info/2


    Name:    get_varname_from_id_node/2


    Name:    get_valid_states/3


    Name:    get_machinevars_by_name/2


    Name:    get_precondition_from_operation_body/2


    Name:    get_binding_for_name_or_value/3


    Name:    get_valid_inputs_for_operation/3


    Name:    b_get_typing_predicate_for_vars/2


    Name:    b_get_typed_invariant_from_machine/1


    Name:    b_compute_expression_nowf_no_bindings/2


    Name:    expand_state_cache_if_guard_and_solution/6


    Name:    add_distinguishing_states_from_cache/6


    Name:    conjunct_previous_invariant_or_guard_if_necessary/4


    Name:    check_transitions_against_machine_operations/4


    Name:    check_transition_against_machine_operations/5


    Name:    check_negative_inputs_against_operation_precondition/2


    Name:    replace_preds_by_subst_if_neccessary/3


    Name:    replace_precondition_of_operation/3


    Name:    contains_equivalent_state/3


    Name:    find_typed_identifier_uses_with_info/2


    Name:    delete_numbers_from_atom/2


    Name:    create_equality_nodes_from_example/2


    Name:    adapt_machine_code_for_operations/2


    Name:    b_get_machinevars_with_operation_params/1


    Name:    remove_prime/2


    Name:    parallel_to_conjunction/2


    Name:    prime_or_unprime_variables_in_ast/4


    Name:    parse_and_typecheck_value/2


    Name:    keep_asserted_initial_examples/6


    Name:    prepare_solution/6


    Name:    finalize_synthesized_action/3


    Name:    split_input_output_tuples/3


    Name:    prepare_synthesized_guards_for_action/2


    Name:    mark_examples_as_initial/4


    Name:    reduce_input_to_violating_vars/3


    Name:    is_ast/1


    Name:    zip/3


    Name:    set_type_if_necessary/2



    Predicates

    Predicates:

  • accumulate_input_output_if_non_empty/3
  • adapt_machine_code_for_operations/2
  • adapt_machine_code_for_operations_aux/3
  • add_distinguishing_states_from_cache/6
  • add_invariant_to_machine_content/3
  • apply_solution_to_machine/5
  • apply_solution_to_machine_and_type_invariant/5
  • apply_solution_to_machine_aux/4
  • apply_solution_to_machine_aux/5
  • b_compute_expression_nowf_no_bindings/2
  • b_get_machine_enumerated_sets_with_names/1
  • b_get_machinevars_with_operation_params/1
  • b_get_machinevars_with_operation_params_aux/2
  • b_get_typed_invariant_from_machine/1
  • b_get_typing_predicate/1
  • b_get_typing_predicate_for_vars/2
  • b_test_boolean_expression_wf_no_bindings/2
  • check_invariant_on_state/3
  • check_negative_inputs_against_operation_precondition/2
  • check_negative_inputs_against_operation_precondition_aux/2
  • check_states_on_guard/2
  • check_states_on_guards/3
  • check_transition_against_machine_operations/4
  • check_transition_against_machine_operations/5
  • check_transition_against_machine_operations_aux/7
  • check_transitions_against_machine_operations/4
  • check_transitions_against_machine_operations_aux/2
  • conjunct_previous_invariant_or_guard_if_necessary/4
  • contains_equivalent_state/3
  • contains_equivalent_state/4
  • create_equality_nodes_from_example/2
  • create_equality_nodes_from_example/3
  • create_equality_nodes_from_examples/3
  • create_equality_nodes_from_examples/5
  • create_equality_predicate_from_example/2
  • delete_numbers_from_atom/2
  • delete_numbers_from_codelist/2
  • equality_to_assignment/2
  • example_bindings_to_ast_nodes/2
  • examples_already_reduced/1
  • exclude_accumulated_states/4
  • exclude_transition_constraint/4
  • exclude_variable_state/3
  • expand_state_cache_if_guard_and_solution/6
  • expand_transition_cache_if_solution/5
  • finalize_synthesized_action/3
  • find_typed_identifier_uses_with_info/2
  • find_typed_identifier_uses_with_info_aux/2
  • get_binding_for_name_or_value/3
  • get_constant_node_or_id/2
  • get_current_vars_from_example/2
  • get_distinct_independent_types_constraint_for_enums/1
  • get_distinct_independent_types_constraint_for_enums/3
  • get_distinct_states/5
  • get_distinct_states/3
  • get_distinguishing_state_or_trans/8
  • get_distinguishing_state_or_trans_aux/6
  • get_guard_list_from_operation/2
  • get_guard_list_from_operation_aux/3
  • get_guard_list_from_operation_aux2/3
  • get_input_nodes_from_bindings/2
  • get_input_output_nodes_from_bindings/3
  • get_invalid_state_equalities_for_operation/5
  • get_invalid_state_equalities_for_operation_aux/5
  • get_invalid_states/3
  • get_invariant_violating_example/4
  • get_invariant_violating_transition/6
  • get_invariant_violating_transition_aux/2
  • get_invariant_violating_vars_from_examples/3
  • get_invariants_for_current_vars/3
  • get_involved_variables/4
  • get_involved_variables_aux/4
  • get_location_var_node_by_info_term/3
  • get_location_var_node_by_name/3
  • get_machinevars_by_name/2
  • get_machinevars_by_name_aux/4
  • get_name_from_operation_ast/2
  • get_operation_params_from_ids/2
  • get_operation_params_from_ids/3
  • get_output_nodes_from_bindings/2
  • get_output_nodes_from_bindings_aux/2
  • get_precondition_from_operation_body/2
  • get_single_constant_or_set_operator_id/3
  • get_solution_or_none/2
  • get_states_aux/6
  • get_valid_and_invalid_equality_predicates_for_invariants/4
  • get_valid_and_invalid_equality_predicates_for_operation/6
  • get_valid_inputs_for_operation/3
  • get_valid_states/3
  • get_valid_transitions_for_operation/5
  • get_valid_transitions_for_operation_aux/7
  • get_var_node_by_info_term/3
  • get_varname_from_binding/2
  • get_varname_from_id_node/2
  • get_varname_from_node_info/2
  • get_violated_and_valid_machine_invariants/4
  • get_violated_and_valid_machine_invariants_aux/4
  • get_violated_and_valid_machine_invariants_aux2/3
  • is_ast/1
  • is_seq/1
  • keep_asserted_initial_examples/6
  • keep_asserted_initial_states/3
  • mark_examples_as_initial/4
  • mark_examples_as_initial_aux/2
  • mark_examples_as_initial_aux2/2
  • operation_match/2
  • parallel_to_conjunction/2
  • parse_and_typecheck_value/2
  • prepare_solution/6
  • prepare_synthesized_guards_for_action/2
  • prime_or_unprime_variables_in_ast/4
  • recreate_guards_for_operation_parameters/2
  • recreate_guards_for_operation_parameters/4
  • reduce_input_to_violating_vars/3
  • reduce_state_to_current_vars/3
  • remove_operations_from_list/4
  • remove_pre_condition_from_body/2
  • remove_prime/2
  • remove_set_of_couple_type/2
  • replace_precondition_if_operation_fits/4
  • replace_precondition_if_operation_fits_aux/3
  • replace_precondition_of_operation/3
  • replace_preds_by_subst_if_neccessary/3
  • sequence_well_definedness_constraint/2
  • set_explicit_type_if_necessary/3
  • set_nested_types_if_necessary/3
  • set_operation_params_domain/2
  • set_operation_params_domain/3
  • set_type_if_necessary/2
  • solve_distinguishing_constraint_with_fallback/2
  • split_input_output_tuples/3
  • split_input_output_tuples/5
  • split_typing_predicates_from_precondition/4
  • translate_example_ast/2
  • untyped/1
  • value_to_ast/2
  • variable_parsedvalue_tuple_to_ast/2
  • zip/3
  • zip_aux/4


  • accumulate_input_output_if_non_empty/3

    accumulate_input_output_if_non_empty/3



    adapt_machine_code_for_operations/2

    adapt_machine_code_for_operations/2



    adapt_machine_code_for_operations_aux/3

    adapt_machine_code_for_operations_aux/3



    add_distinguishing_states_from_cache/6

    add_distinguishing_states_from_cache/6



    add_invariant_to_machine_content/3

    add_invariant_to_machine_content/3



    apply_solution_to_machine/5

    apply_solution_to_machine/5



    apply_solution_to_machine_and_type_invariant/5

    apply_solution_to_machine_and_type_invariant/5



    apply_solution_to_machine_aux/4

    apply_solution_to_machine_aux/4



    apply_solution_to_machine_aux/5

    apply_solution_to_machine_aux/5



    b_compute_expression_nowf_no_bindings/2

    b_compute_expression_nowf_no_bindings/2



    b_get_machine_enumerated_sets_with_names/1

    b_get_machine_enumerated_sets_with_names/1



    b_get_machinevars_with_operation_params/1

    b_get_machinevars_with_operation_params/1



    b_get_machinevars_with_operation_params_aux/2

    b_get_machinevars_with_operation_params_aux/2



    b_get_typed_invariant_from_machine/1

    b_get_typed_invariant_from_machine/1



    b_get_typing_predicate/1

    b_get_typing_predicate/1



    b_get_typing_predicate_for_vars/2

    b_get_typing_predicate_for_vars/2



    b_test_boolean_expression_wf_no_bindings/2

    b_test_boolean_expression_wf_no_bindings/2



    check_invariant_on_state/3

    check_invariant_on_state/3



    check_negative_inputs_against_operation_precondition/2

    check_negative_inputs_against_operation_precondition/2



    check_negative_inputs_against_operation_precondition_aux/2

    check_negative_inputs_against_operation_precondition_aux/2



    check_states_on_guard/2

    check_states_on_guard/2



    check_states_on_guards/3

    check_states_on_guards/3



    check_transition_against_machine_operations/4

    check_transition_against_machine_operations/4



    check_transition_against_machine_operations/5

    check_transition_against_machine_operations/5



    check_transition_against_machine_operations_aux/7

    check_transition_against_machine_operations_aux/7



    check_transitions_against_machine_operations/4

    check_transitions_against_machine_operations/4

    Description:
    User adds a missing state transition.



    check_transitions_against_machine_operations_aux/2

    check_transitions_against_machine_operations_aux/2



    conjunct_previous_invariant_or_guard_if_necessary/4

    conjunct_previous_invariant_or_guard_if_necessary/4



    contains_equivalent_state/3

    contains_equivalent_state/3



    contains_equivalent_state/4

    contains_equivalent_state/4



    create_equality_nodes_from_example/2

    create_equality_nodes_from_example/2



    create_equality_nodes_from_example/3

    create_equality_nodes_from_example/3



    create_equality_nodes_from_examples/3

    create_equality_nodes_from_examples/3



    create_equality_nodes_from_examples/5

    create_equality_nodes_from_examples/5



    create_equality_predicate_from_example/2

    create_equality_predicate_from_example/2



    delete_numbers_from_atom/2

    delete_numbers_from_atom/2



    delete_numbers_from_codelist/2

    delete_numbers_from_codelist/2



    equality_to_assignment/2

    equality_to_assignment/2



    example_bindings_to_ast_nodes/2

    example_bindings_to_ast_nodes/2



    examples_already_reduced/1

    examples_already_reduced/1



    exclude_accumulated_states/4

    exclude_accumulated_states/4



    exclude_transition_constraint/4

    exclude_transition_constraint/4



    exclude_variable_state/3

    exclude_variable_state/3



    expand_state_cache_if_guard_and_solution/6

    expand_state_cache_if_guard_and_solution/6



    expand_transition_cache_if_solution/5

    expand_transition_cache_if_solution/5



    finalize_synthesized_action/3

    finalize_synthesized_action/3



    find_typed_identifier_uses_with_info/2

    find_typed_identifier_uses_with_info/2



    find_typed_identifier_uses_with_info_aux/2

    find_typed_identifier_uses_with_info_aux/2



    get_binding_for_name_or_value/3

    get_binding_for_name_or_value/3



    get_constant_node_or_id/2

    get_constant_node_or_id/2



    get_current_vars_from_example/2

    get_current_vars_from_example/2



    get_distinct_independent_types_constraint_for_enums/1

    get_distinct_independent_types_constraint_for_enums/1



    get_distinct_independent_types_constraint_for_enums/3

    get_distinct_independent_types_constraint_for_enums/3



    get_distinct_states/5

    get_distinct_states/5

    Description:
    Only for synthesis of guards or invariants:



    get_distinct_states/3

    get_distinct_states/3



    get_distinguishing_state_or_trans/8

    get_distinguishing_state_or_trans/8



    get_distinguishing_state_or_trans_aux/6

    get_distinguishing_state_or_trans_aux/6



    get_guard_list_from_operation/2

    get_guard_list_from_operation/2



    get_guard_list_from_operation_aux/3

    get_guard_list_from_operation_aux/3



    get_guard_list_from_operation_aux2/3

    get_guard_list_from_operation_aux2/3



    get_input_nodes_from_bindings/2

    get_input_nodes_from_bindings/2



    get_input_output_nodes_from_bindings/3

    get_input_output_nodes_from_bindings/3

    Description:
    Get the input and/or output nodes from a solution of the distinguishing constraint.



    get_invalid_state_equalities_for_operation/5

    get_invalid_state_equalities_for_operation/5



    get_invalid_state_equalities_for_operation_aux/5

    get_invalid_state_equalities_for_operation_aux/5



    get_invalid_states/3

    get_invalid_states/3



    get_invariant_violating_example/4

    get_invariant_violating_example/4



    get_invariant_violating_transition/6

    get_invariant_violating_transition/6



    get_invariant_violating_transition_aux/2

    get_invariant_violating_transition_aux/2



    get_invariant_violating_vars_from_examples/3

    get_invariant_violating_vars_from_examples/3



    get_invariants_for_current_vars/3

    get_invariants_for_current_vars/3



    get_involved_variables/4

    get_involved_variables/4



    get_involved_variables_aux/4

    get_involved_variables_aux/4



    get_location_var_node_by_info_term/3

    get_location_var_node_by_info_term/3



    get_location_var_node_by_name/3

    get_location_var_node_by_name/3



    get_machinevars_by_name/2

    get_machinevars_by_name/2



    get_machinevars_by_name_aux/4

    get_machinevars_by_name_aux/4



    get_name_from_operation_ast/2

    get_name_from_operation_ast/2



    get_operation_params_from_ids/2

    get_operation_params_from_ids/2



    get_operation_params_from_ids/3

    get_operation_params_from_ids/3



    get_output_nodes_from_bindings/2

    get_output_nodes_from_bindings/2



    get_output_nodes_from_bindings_aux/2

    get_output_nodes_from_bindings_aux/2



    get_precondition_from_operation_body/2

    get_precondition_from_operation_body/2



    get_single_constant_or_set_operator_id/3

    get_single_constant_or_set_operator_id/3



    get_solution_or_none/2

    get_solution_or_none/2

    Description:
    Maybe too much overhead to ask a third solver for the distinguishing constraint since two solvers were already not able to find a solution.



    get_states_aux/6

    get_states_aux/6



    get_valid_and_invalid_equality_predicates_for_invariants/4

    get_valid_and_invalid_equality_predicates_for_invariants/4



    get_valid_and_invalid_equality_predicates_for_operation/6

    get_valid_and_invalid_equality_predicates_for_operation/6



    get_valid_inputs_for_operation/3

    get_valid_inputs_for_operation/3



    get_valid_states/3

    get_valid_states/3



    get_valid_transitions_for_operation/5

    get_valid_transitions_for_operation/5



    get_valid_transitions_for_operation_aux/7

    get_valid_transitions_for_operation_aux/7



    get_var_node_by_info_term/3

    get_var_node_by_info_term/3



    get_varname_from_binding/2

    get_varname_from_binding/2



    get_varname_from_id_node/2

    get_varname_from_id_node/2



    get_varname_from_node_info/2

    get_varname_from_node_info/2



    get_violated_and_valid_machine_invariants/4

    get_violated_and_valid_machine_invariants/4



    get_violated_and_valid_machine_invariants_aux/4

    get_violated_and_valid_machine_invariants_aux/4



    get_violated_and_valid_machine_invariants_aux2/3

    get_violated_and_valid_machine_invariants_aux2/3



    is_ast/1

    is_ast/1



    is_seq/1

    is_seq/1



    keep_asserted_initial_examples/6

    keep_asserted_initial_examples/6



    keep_asserted_initial_states/3

    keep_asserted_initial_states/3



    mark_examples_as_initial/4

    mark_examples_as_initial/4



    mark_examples_as_initial_aux/2

    mark_examples_as_initial_aux/2



    mark_examples_as_initial_aux2/2

    mark_examples_as_initial_aux2/2



    operation_match/2

    operation_match/2



    parallel_to_conjunction/2

    parallel_to_conjunction/2



    parse_and_typecheck_value/2

    parse_and_typecheck_value/2



    prepare_solution/6

    prepare_solution/6



    prepare_synthesized_guards_for_action/2

    prepare_synthesized_guards_for_action/2



    prime_or_unprime_variables_in_ast/4

    prime_or_unprime_variables_in_ast/4



    recreate_guards_for_operation_parameters/2

    recreate_guards_for_operation_parameters/2



    recreate_guards_for_operation_parameters/4

    recreate_guards_for_operation_parameters/4



    reduce_input_to_violating_vars/3

    reduce_input_to_violating_vars/3



    reduce_state_to_current_vars/3

    reduce_state_to_current_vars/3



    remove_operations_from_list/4

    remove_operations_from_list/4



    remove_pre_condition_from_body/2

    remove_pre_condition_from_body/2



    remove_prime/2

    remove_prime/2



    remove_set_of_couple_type/2

    remove_set_of_couple_type/2



    replace_precondition_if_operation_fits/4

    replace_precondition_if_operation_fits/4



    replace_precondition_if_operation_fits_aux/3

    replace_precondition_if_operation_fits_aux/3



    replace_precondition_of_operation/3

    replace_precondition_of_operation/3



    replace_preds_by_subst_if_neccessary/3

    replace_preds_by_subst_if_neccessary/3



    sequence_well_definedness_constraint/2

    sequence_well_definedness_constraint/2



    set_explicit_type_if_necessary/3

    set_explicit_type_if_necessary/3



    set_nested_types_if_necessary/3

    set_nested_types_if_necessary/3



    set_operation_params_domain/2

    set_operation_params_domain/2



    set_operation_params_domain/3

    set_operation_params_domain/3



    set_type_if_necessary/2

    set_type_if_necessary/2



    solve_distinguishing_constraint_with_fallback/2

    solve_distinguishing_constraint_with_fallback/2



    split_input_output_tuples/3

    split_input_output_tuples/3



    split_input_output_tuples/5

    split_input_output_tuples/5



    split_typing_predicates_from_precondition/4

    split_typing_predicates_from_precondition/4



    translate_example_ast/2

    translate_example_ast/2



    untyped/1

    untyped/1



    value_to_ast/2

    value_to_ast/2



    variable_parsedvalue_tuple_to_ast/2

    variable_parsedvalue_tuple_to_ast/2

    Description:
    TO DO: use type_check_in_machine_context/2



    zip/3

    zip/3



    zip_aux/4

    zip_aux/4



    Determinacy Checker

    Determinacy Checker:

    ! Existence error in argument 1 of absolute_file_name/3
    ! file synthesis(logging) does not exist
    ! goal: absolute_file_name(synthesis(logging),_11535,[access(exist),file_type(source),relative_to('/builds/stups/prob/prolog_doc_gen/prolog-Doc/prob_prolog/src/synthesis/synthesis_util.pl')])
    ! Existence error in argument 1 of absolute_file_name/3
    ! file probsrc(bsyntaxtree) does not exist
    ! goal: absolute_file_name(probsrc(bsyntaxtree),_11897,[access(exist),file_type(source),relative_to('/builds/stups/prob/prolog_doc_gen/prolog-Doc/prob_prolog/src/synthesis/synthesis_util.pl')])
    ! Existence error in argument 1 of absolute_file_name/3
    ! file probsrc(error_manager) does not exist
    ! goal: absolute_file_name(probsrc(error_manager),_261,[access(exist),file_type(source),relative_to('/builds/stups/prob/prolog_doc_gen/prolog-Doc/prob_prolog/src/synthesis/synthesis_util.pl')])