YAP 7.1.0
opt.proto.h
1/************************************************************************
2** **
3** The YapTab/YapOr/OPTYap systems **
4** **
5** YapTab extends the Yap Prolog engine to support sequential tabling **
6** YapOr extends the Yap Prolog engine to support or-parallelism **
7** OPTYap extends the Yap Prolog engine to support or-parallel tabling **
8** **
9** **
10** Yap Prolog was developed at University of Porto, Portugal **
11** **
12************************************************************************/
13
14
15
16/*************************
17** opt.init.c **
18*************************/
19
20void Yap_init_global_optyap_data(int, int, int, int);
21void Yap_init_local_optyap_data(int);
22void Yap_init_root_frames(void);
23void itos(int, char *);
24
25
26
27/**************************
28** opt.preds.c **
29**************************/
30
31#ifdef YAPOR
32void finish_yapor(void);
33#endif /* YAPOR */
34
35
36
37/**************************
38** tab.tries.c **
39**************************/
40
41#ifdef TABLING
42sg_fr_ptr subgoal_search(yamop *, CELL **);
43ans_node_ptr answer_search(sg_fr_ptr, CELL *);
44#ifdef MODE_DIRECTED_TABLING
45ans_node_ptr mode_directed_answer_search(sg_fr_ptr, CELL *);
46#endif /* MODE_DIRECTED_TABLING */
47void load_answer(ans_node_ptr, CELL *);
48CELL *exec_substitution(gt_node_ptr, CELL *);
49void update_answer_trie(sg_fr_ptr);
50void free_subgoal_trie(sg_node_ptr, int, int);
51void free_answer_trie(ans_node_ptr, int, int);
52void free_answer_hash_chain(ans_hash_ptr);
53void abolish_table(tab_ent_ptr);
54void showTable(tab_ent_ptr, int, FILE *);
55void showGlobalTrie(int, FILE *);
56#endif /* TABLING */
57
58
59
60/*******************************
61** tab.completion.c **
62*******************************/
63
64#ifdef TABLING
65void private_completion(sg_fr_ptr);
66#ifdef YAPOR
67void public_completion(void);
68void complete_suspension_frames(or_fr_ptr);
69void suspend_branch(void);
70void resume_suspension_frame(susp_fr_ptr, or_fr_ptr);
71#endif /* YAPOR */
72#endif /* TABLING */
73
74
75
76/**************************
77** or.memory.c **
78**************************/
79
80#ifdef YAPOR
81void Yap_init_yapor_global_local_memory(void);
82void Yap_init_yapor_stacks_memory(UInt, UInt, UInt, int);
83void Yap_unmap_yapor_memory(void);
84void Yap_remap_yapor_memory(void);
85#endif /* YAPOR */
86
87
88
89/*******************************
90** or.copy_engine.c **
91*******************************/
92
93#ifdef YAPOR
94void make_root_choice_point(void);
95void free_root_choice_point(void);
96int q_share_work(int p);
97int p_share_work(void);
98#endif /* YAPOR */
99
100
101
102/*****************************
103** or.scheduler.c **
104*****************************/
105
106#ifdef YAPOR
107int get_work(void);
108#endif /* YAPOR */
109
110
111
112/***********************
113** or.cut.c **
114***********************/
115
116#ifdef YAPOR
117void prune_shared_branch(choiceptr, int*);
118#endif /* YAPOR */
Definition: tab.structs.h:22
Definition: amidefs.h:264