[ The ECLiPSe Libraries | Reference Manual | Alphabetic Index ]

library(ic_kernel)

Low-level interface to the common kernel of the IC solver

Predicates

compare_ic_instances(?, ?, ?)
No description available
copy_ic_term(?, ?)
No description available
delta(?, ?)
No description available
excl(?Var, ++Excl)
Exclude the element Excl from the domain of Var.
excl_range(?Var, ++Lo, ++Hi)
Exclude the elements Lo..Hi from the domain of Var.
get_ic_attr(?X, -Attr)
Returns the IC attribute of a variable (creating a new attribute if necessary).
get_ic_bounds(?, ?, ?)
No description available
get_ic_domain_size(?, ?)
No description available
get_ic_integer_bounds(?, ?, ?)
No description available
get_threshold(?)
No description available
get_var_type(?, ?)
No description available
ic_constraints_number(?, ?)
No description available
ic_delayed_goals_number(?, ?)
No description available
ic_event(++Event)
Indicates that the specified event has occured.
ic_excl(+Attr, ++Excl)
Exclude the element Excl from the given attribute.
ic_excl_range(+Attr, ++Lo, ++Hi)
Exclude the elements Lo..Hi from the given attribute.
ic_lwb(+Attr, ++Bound)
Imposes a lowerbound on the given IC attribute.
ic_msg(?, ?, ?)
No description available
ic_new_bounds(+Attr, ++Lwb, ++Upb)
Imposes the bounds on the given IC attribute.
ic_stat(++Command)
Enables/disables/resets/prints stats gathering information
ic_stat_get(-StatsList)
Returns the list of stats events description=value pairs
ic_stat_register_event(++Event, ++Description)
Registers a new stats event to be collected
ic_suspensions(?, ?, ?)
No description available
ic_upb(+Attr, ++Bound)
Imposes an upperbound on the given IC attribute.
infinite_integer_bounds_handler(?, ?)
No description available
integers(?)
No description available
is_ic_var(?)
No description available
lwb(?Var, ++Bound)
Update (if required) the lower bound of Var.
median(?, ?)
No description available
print_ic(?, ?)
No description available
reals(?)
No description available
set_ic_bounds(?Var, ++Lo, ++Hi)
Update (if required) the bounds of Var.
set_threshold(?)
No description available
set_threshold(?, ?)
No description available
set_var_integer(+Attr)
Marks the IC attribute as being integral.
set_var_type(?Var, ++Type)
Sets the type of the given variable to the given type.
set_vars_type(?Vars, ++Type)
Sets the type of the given variables to the given type.
test_unify_ic(?, ?)
No description available
tr_ic_c_constant(?, ?)
No description available
tr_ic_unify_goal_out(?, ?)
No description available
tr_ria_binop(?, ?)
No description available
tr_ria_binop1(?, ?)
No description available
tr_ria_binop7(?, ?)
No description available
tr_ria_ternop(?, ?)
No description available
tr_ria_ternop1(?, ?)
No description available
tr_ria_ternop9(?, ?)
No description available
tr_ria_unop(?, ?)
No description available
tr_ria_unop1(?, ?)
No description available
tr_ria_unop5(?, ?)
No description available
unify_ic(?, ?)
No description available
upb(?Var, ++Bound)
Update (if required) the upper bound of Var.

Structures

struct ic(variable, type, lo, hi, bitmap, wake_lo, wake_hi, wake_hole, wake_type)
No description available

Reexports

reexport ria_unop / 5 from sepia_kernel
reexport ria_binop / 7 from sepia_kernel
reexport ria_ternop / 9 from sepia_kernel

Other Exports

export macro(ic_status_failed / 0, tr_ic_c_constant / 2, [])
export macro(ic_status_unknown / 0, tr_ic_c_constant / 2, [])
export macro(ic_status_entailed / 0, tr_ic_c_constant / 2, [])
export macro(ic_unify_bound_implied / 0, tr_ic_c_constant / 2, [])
export macro(ic_unify_bound_tight / 0, tr_ic_c_constant / 2, [])
export macro(ic_unify_bound_fuzzy / 0, tr_ic_c_constant / 2, [])
export macro(ria_unop / 1, tr_ria_unop1 / 2, [])
export macro(ria_unop / 5, tr_ria_unop5 / 2, [])
export macro(ria_binop / 1, tr_ria_binop1 / 2, [])
export macro(ria_binop / 7, tr_ria_binop7 / 2, [])
export macro(ria_ternop / 1, tr_ria_ternop1 / 2, [])
export macro(ria_ternop / 9, tr_ria_ternop9 / 2, [])
export portray(sync_ic_type / 2, tr_ic_unify_goal_out / 2, [goal])
export portray(sync_ic_bounds / 2, tr_ic_unify_goal_out / 2, [goal])
export portray(sync_ic_holes / 2, tr_ic_unify_goal_out / 2, [goal])
export portray(finalise_on_ground / 2, tr_ic_unify_goal_out / 2, [goal])

Description

This module provides a low-level interface to the core of the IC solver; that is, a set of predicates for accessing and manipulating IC variables. It is not intended for use by general user code (use the interface provided by the `ic' module for that), but rather for those wishing to implement their own constraints which use IC variables. This could either be to augment IC by providing new constraints or functionality, or to build a complete constraint solver capable of cooperating with any other solver which also uses the common variable format provided by IC.

Please note that this interface is not yet stable, and may be changed in the next release. As a result, we do not recommend that you use it at this time.

About


Generated from ic_kernel.eci on Wed May 15 03:41:41 2002