/* ----------------------------------------------------------
% (C)1992 Institute for New Generation Computer Technology
% (Read COPYRIGHT for detailed information.)
----------------------------------------------------------- */
/*=====================================================================
* cu-Prolog III (Constraint Unification Prolog)
* Copyright: Institute for New Generation Computer Technology,Japan
* 1989--91
==================================================================== */
/*--------------------------------------------------------------------
* <<< funclist.h >>>
* external function definitions
--------------------------------------------------------------------*/
/* extern function def */
/* main.c */
void prepare(),error_detail(), error(),systemcommand();
void oscommand(),set_inputfile(),readfile(),set_eof(),trans_routine();
void questionclause(),defclause(),push_status(),pop_status(),init_status();
void garbagecollect(),edit_predicate();
void open_title(), prolog_execution();
void defnewfunc(), rename_var_names(), truncate_varname();
void renum_pvars(), preprocess_constraints();
/* mainsub.c */
void traceswitch(),stepswitch(),spyswitch(),showdef(),loghandle();
void check_recursion();
void recalc_f_roles();
int not_vacuous();
void reduceswitch(),putcursor(),disp_func_def();
void allspy(),helpmenu(),filewrite();
void freeheap();
void printtime(),settimer(),quit_prolog();
void delete_tmp();
/* defsysp.c */
void init_syspred();
void init_atoms();
void init_operator();
void defsyspred();
int system_function();
int cut_pred();
int fail_pred();
int halt_pred();
int abomb_pred();
int true_pred();
int op_pred();
int isop_pred();
void index_op();
int not_pred();
int unbreak_pred();
int pnames_pred(), pvalue_pred(), type_pred();
int default_pred(), subsume(), subsume_pst();
int subsume_pstlist();
void pst_add_unify(), pst_add_unify_sub();
int reset_timer_pred(), timer_pred();
int stay_pred();
/* syspred1.c */
int memb_pred();
int apnd_pred();
int execute_pred();
int or_pred();
int read_pred();
int open_pred();
int see_pred();
int seen_pred();
int tell_pred();
int told_pred();
int close_pred();
int project_pred();
int pcon_pred();
int attach_pred();
int cunify_pred();
int write_pred();
int nl_pred();
int tab_pred();
int var_pred();
int equal_pred();
int nequal_pred();
int eq_pred();
int eq_pred_sub();
int equalpred();
int assertz_pred();
int assert_pred();
void general_assert();
struct clause *list_to_clause();
int retract_pred();
int retract_pred_sub();
void clear_predicate();
int abolish_pred();
int makelist_pred();
int Llevel();
void LtoP();
struct clause *PtoL();
int name_pred();
void LtoC();
struct term *CtoL();
int arg_pred();
int functor_pred();
int make_func();
int match_func();
int clause_pred();
struct term *Clause_to_List();
/* syspred2.c */
int sum_pred();
int multiply_pred();
int calc_pred();
int calc_1();
int calc_2();
int greater_pred();
int less_pred();
int geq_pred();
int leq_pred();
int numcomp_pred();
int compare_pred();
int concat_pred();
int app_str();
int diff_str();
int concat2_pred();
int divstr_pred();
int strlen_pred();
int strcmp_pred();
int atom_to_str_pred();
int count_pred();
int gensym_pred();
int default_pred();
int substr_pred();
/* jpsgsub.c */
void show_category();
void init_category();
void list_to_cat();
void set_category();
int tree_pred();
void Ptree();
void oldlink();
void treeprint();
int null_or_nil();
void PCat();
void Psubcat();
char *termname();
int pickname();
struct term *cnlistmake();
int cname_pred();
/* new.c */
int *salloc(),*alloc();
struct pair *ealloc();
char *nalloc();
int hash();
void print_hash_table();
/* name flag for nalloc() */
char *nalloc();
void index_func(), index_funclist();
struct itrace *index_newflist();
void reset_voccurrence(),recalc_voccurrence();
void recalc_pred_value();
struct operator *op_search();
struct term *Nvar(),*Nterm();
struct term *Nnum(), *Nnum_val(), *Nstr(), *Nfile();
struct pst *Npst();
struct term *Npst_item();
void initialize_psttable(), clear_psttable();
struct pst_item *find_pstitem();
struct pst_item *remove_pstitem(),*remove_pstitem_if_not_equal(),
*record_pstobjects();
struct eclause *record_pstlists();
struct clause *Nlist(), *Nclause();
struct func *Nfunc(),*funcsearch();
struct func *Predicate(),*exist_fname();
struct term *varsearch();
struct pair *Nenv();
struct node *Nnode();
struct cnode *Ncnode();
struct eclause *Neclause();
struct allvar *Nallvars();
void check_pred_defcount();
void upush(),undo(),add_set(),index_set();
struct term *literalcopy();
void show_heap_max(),init_heap_max();
/* print.c */
void Pterm(),Pterm_core(),Psequence(),Pallvar(),Pvar(), Pfunctor();
void writenewfunc(), Ppst();
void Pclause(),P_var(), P_dclause();
void Showhorn(),Showfunc(),Shownewfunc();
void Pgoal();
int quote_needed();
void Peclause();
/* read.c */
void adv();
int check(), skip(), keyread(), alldigit();
void period(), next(), read_hexa(), read_digits();
void read_comments(), read_spechar();
int Rtoken(), is_term_end(), prefix_is_atom();
struct term *Rlist(),*Rterm(), *Rterm_half(), *Rterm_leftover();
struct term *Rform(),*Rhead();
struct clause *Rclause();
struct clause *Rconstraint();
struct term *Rliteral(), *Rvar(), *Rpst();
void register_psttable();
struct eclause *insert_pstobj();
/* modular.c */
void modular();
int cu();
struct term *tolist(),*termset(), *up_pst();
struct eclause *termset_pstobj(), *termset_pstobj_sub();
void up_init();
void up_restore();
struct clause *up_eclause();
struct clause *up_list_to_clause();
struct clause *up_itrace_clause();
struct set *up_func_def();
struct eclause *onestep_reduce(), *eclause_append();
struct term *up_atomic(), *up_const(), *up_const_functor();
struct term *try_fold();
struct eclause *transform();
int match_term();
/* refute.c */
int refute();
struct node *Newnode();
struct node *backtrack_node();
struct set *init_set();
int Panswer();
/* unify.c */
int tunify();
int ocheck(),unify(),safe_unify();
int pst_unify();
int unify_pstlist_objects(), unify_merge_psts();
/* transform.c */
int check_INITDEF();
void clear_up_DEF();
void add_to_set();
struct clause *startmodular();
struct clause *modular_form();
struct compartment *Ncomp();
struct clause *copy_clause();
struct term *copy_term();
struct term *var_trans();
struct clause *new_constraint();
struct clause *new_pred_def();
void set_new_def();
int need_trans();
/* struct clause *restore_head(); */
struct term *restore_term();
struct term *var_reverse();
struct cset *target_clause();
struct cset *target_def();
void delete_csets();
int foldunfold();
int unfold();
int apply();
struct set *one_def_literal();
void register_newpred();
void Pvpair();
void Pcomp();
int stat();
void Pcset_def();
void Pcset_cstr();
void P_csnumber();
void P_status();
struct vpair *Nvpair();
struct cset *Ncset();
void add_clause();
void add_cs_to_set();
struct eclause *reduce_clause();
void reorder_clause();
int satisfiable();
struct clause *target_literal();
int energy();
struct clause *surface_copy_clause();
struct clause *ctail();
struct eclause *ectail();
int has_pred();
int is_vacuous();
int is_modular_clause();
int is_modular_literal();
int has_no_var();
/* struct clause *Nhornclause(); */
struct eclause *eclause_conc();
struct clause *sort_clause();
struct clause *insert_clause();
int greater_term();
int arg_type();
int greater_arg();
int cmp_var();
int cmp_cplxt();
int cmp_list();
int cmp_flt();
int cmp_int();
int cmp_str();
int cmp_fp();
int have_def();
void init_unfoldfold();
void end_unfoldfold();
int step_asking();
struct cset *nth_cset();
struct clause *nth_literal();
void abandon_transformation();
void quit_transformation();
void skip_cr();
void show_newdefs();
struct compartment *split();
void clear_vconstraint();
void delete_constraint();
int attach();
void attach_term();
void attach_arg();
void replace_terms();
syntax highlighted by Code2HTML, v. 0.9.1