Did you know ... Search Documentation:
Pack logicmoo_utils -- prolog/logicmoo/misc_terms.pl
PublicShow source

This module includes random predicate utilities that manipulate terms for substitution, decomposes, recomposes, composes, etc. @author Douglas R. Miles @license free or GNU 2

 lastMember2(?E, :TermList) is semidet
Last Member Extended Helper.
 is_src_true(?B) is semidet
If Is A True.
 is_proof(?P) is semidet
If Is A Proof.
 maptree(:PRED2Pred, +I, -O) is semidet
Maptree.
 disjuncts_to_list(?Var, ?Var) is semidet
Disjuncts Converted To List.
 conjuncts_to_list(?Var, ?Var) is semidet
Conjuncts Converted To List.
 pred1_juncts_to_list(?F, ?AB, ?ABL) is semidet
Predicate Juncts Converted To List.
 list_to_conjuncts(?I, ?O) is semidet
List Converted To Conjuncts.
 list_to_conjuncts(?VALUE1, ?H, ?H) is semidet
List Converted To Conjuncts.
 conjoin(?A, ?B, ?C) is semidet
Conjoin.
 conjoin_op(?VALUE1, ?TRUE, ?X, ?X) is semidet
Conjoin Oper..
 read_each_term(?S, ?CMD, ?Vs) is semidet
Read Each Term.
 each_subterm(?B, ?A) is semidet
Each Subterm.
 each_subterm(?A, :PRED2Pred, ?B) is semidet
Each Subterm.
 flatten_dedupe(?Percepts0, ?Percepts) is semidet
Flatten Dedupe.
 proccess_status(?VALUE1, ?Det, ?Goal2) is semidet
Proccess Status.
 in_thread_and_join(:Goal) is semidet
In Thread And Join.
 in_thread_and_join(:Goal, +Status) is semidet
In Thread And Join.
 predsubst(?A, :PRED2Pred, ?D) is semidet
Predsubst.
 nd_predsubst(?Var, :PRED2Pred, ?SUB) is semidet
Nd Predsubst.
 nd_predsubst1(:PRED2Pred, ?P, ?N, ?P1) is semidet
Nd Predsubst Secondary Helper.
 nd_predsubst2(:PRED2Pred, ?L, ?L) is semidet
Nd Predsubst Extended Helper.
 append_term0(?T, ?I, ?HEAD) is semidet
Append Term.
 append_termlist(?Call, ?EList, ?CallE) is semidet
Append Termlist.
 pred_subst(:PRED2Pred, ?P, ?X, ?Sk, ?P1) is semidet
Predicate Subst.
 univ_safe(?P, ?L) is semidet
Univ Safely Paying Attention To Corner Cases.
 subst(?A, ?B, ?C, ?D) is semidet
Subst.

subst(A,B,C,D):- quietly((catchv(quietly(nd_subst(A,B,C,D)),E,(dumpST,dmsg(E:nd_subst(A,B,C,D)),fail)))),!.

 nd_subst(?Var, ?VarS, ?SUB, ?SUB) is semidet
Nd Subst.
 nd_subst1(?X, ?Sk, ?P, ?N, ?P1) is semidet
Nd Subst Secondary Helper.
 nd_subst2(?X, ?Sk, ?L, ?L) is semidet
Nd Subst Extended Helper.
 univ_term(?P1, :TermFS) is semidet
Univ Term.
 wsubst(?A, ?B, ?C, ?D) is semidet
Wsubst.
 weak_nd_subst(?Var, ?VarS, ?SUB, ?SUB) is semidet
Weak Nd Subst.
 weak_nd_subst1(?X, ?Sk, ?P, ?N, ?P1) is semidet
Weak Nd Subst Secondary Helper.
 weak_nd_subst2(?X, ?Sk, ?L, ?L) is semidet
Weak Nd Subst Extended Helper.
 make_list(?E, ?VALUE2, :TermE) is semidet
Make List.
 flatten_set(?L, ?S) is semidet
Flatten Set.
 remove_dupes(?In, ?Out) is semidet
Remove Dupes.
 remove_dupes(:TermI, :TermOut, ?Shown) is semidet
Remove Dupes.
 functor_h(?Obj, ?F) is nondet
Functor Head.
 get_functor(?Obj, ?FO) is det
Get Functor.
 get_functor(?Obj, ?FO, ?AO) is semidet
Get Functor.
 functor_h(?Obj, ?F, ?A) is semidet
Functor Head.
 call_n_times(+N, :Goal) is semidet
Call N Times.
 at_start(:Goal) is semidet
When Start.
 list_to_set_safe(:TermA, ?A) is semidet
List Converted To Set Safely Paying Attention To Corner Cases.
 term_parts(?A, :TermA) is semidet
Term Parts.
 term_parts_l(:TermVar, ?Var) is semidet
Term Parts (list Version).
 pred_term_parts(:PRED1Pred, ?Comp, ?TERMS) is semidet
Predicate Term Parts.
 pred_term_parts_l(:PRED1Pred, ?Term, ?TERMS) is semidet
Predicate Term Parts (list Version).
 throw_if_true_else_fail(:GoalT, ?E) is semidet
Throw If True Else Fail.
 list_retain(?PL, :PRED1Pred, ?Result) is semidet
List Retain.
 identical_memberchk(?X, :TermY) is semidet
Identical Member.
 delete_eq(?A, ?B, ?C) is semidet
Delete Using (==/2) (or =@=/2) ).
 pred_delete(:PRED2Pred, ?A, ?B, ?D) is semidet
Predicate Delete.
 doall(:GoalC) is semidet
Doall.
 dynamic_load_pl(?PLNAME) is semidet
Dynamic Load Pl.
 load_term(?E, ?Options) is semidet
Load Term.
 load_term2(:TermFact, ?Options) is semidet
Load Term Extended Helper.
 load_assert(?H, ?B, ?Options) is semidet
Load Assert.
 load_dirrective(:GoalCALL, ?Options) is semidet
Load Dirrective.
 atom_concat_safe(?L, ?R, ?A) is semidet
Atom Concat Safely Paying Attention To Corner Cases.
 call_no_cuts(:GoalCALL) is semidet
Call No Cuts.
 logicmoo_library_file_loaded is semidet
Logicmoo Library File Loaded.

Undocumented predicates

The following predicates are exported, but not or incorrectly documented.

 append_term(Arg1, Arg2, Arg3)
 remember_at_start(Arg1, Arg2)
 expire_tabled_list(Arg1)
 wom_functor(Arg1, Arg2, Arg3)
 is_true(Arg1)
 pred_subst(Arg1, Arg2, Arg3)
 pred_juncts_to_list2(Arg1, Arg2, Arg3)
 pred_juncts_to_list(Arg1, Arg2, Arg3)
 apply_term(Arg1, Arg2, Arg3)
 compound_name_args_safe(Arg1, Arg2, Arg3)
 compound_name_arity_safe(Arg1, Arg2, Arg3)
 structureless(Arg1)
 safe_functor(Arg1, Arg2, Arg3)
 subst_each(Arg1, Arg2, Arg3)