aboutsummaryrefslogtreecommitdiffhomepage
path: root/plugins/groebner/polynom.mli
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/groebner/polynom.mli')
-rw-r--r--plugins/groebner/polynom.mli111
1 files changed, 111 insertions, 0 deletions
diff --git a/plugins/groebner/polynom.mli b/plugins/groebner/polynom.mli
new file mode 100644
index 000000000..99c1701b8
--- /dev/null
+++ b/plugins/groebner/polynom.mli
@@ -0,0 +1,111 @@
+type coef (*= Entiers.entiers*)
+val coef_of_num : Num.num -> coef
+val num_of_coef : coef -> Num.num
+val eq_coef : coef -> coef -> bool
+val lt_coef : coef -> coef -> bool
+val le_coef : coef -> coef -> bool
+val abs_coef : coef -> coef
+val plus_coef : coef -> coef -> coef
+val mult_coef : coef -> coef -> coef
+val sub_coef : coef -> coef -> coef
+val opp_coef : coef -> coef
+val div_coef : coef -> coef -> coef
+val mod_coef : coef -> coef -> coef
+val coef0 : coef
+val coef1 : coef
+val string_of_coef : coef -> string
+val int_of_coef : coef -> int
+val hash_coef : coef -> int
+val puis_coef : coef -> int -> coef
+val pgcd : coef -> coef -> coef
+val pgcd2 : coef -> coef -> coef
+
+type variable = int
+type poly = Pint of coef | Prec of variable * poly array
+
+val cf : int -> poly
+val cf0 : poly
+val cf1 : poly
+val x : variable -> poly
+val max_var_pol : poly -> variable
+val max_var_pol2 : poly -> variable
+val max_var : poly array -> variable
+val eqP : poly -> poly -> bool
+val norm : poly -> poly
+val deg : variable -> poly -> int
+val deg_total : poly -> int
+val copyP : poly -> poly
+val coef : variable -> int -> poly -> poly
+val plusP : poly -> poly -> poly
+val content : poly -> coef
+val div_int : poly -> coef -> poly
+val vire_contenu : poly -> poly
+val vars : poly -> variable list
+val int_of_Pint : poly -> coef
+val multx : int -> variable -> poly -> poly
+val multP : poly -> poly -> poly
+val deriv : variable -> poly -> poly
+val oppP : poly -> poly
+val moinsP : poly -> poly -> poly
+val puisP : poly -> int -> poly
+val ( @@ ) : poly -> poly -> poly
+val ( -- ) : poly -> poly -> poly
+val ( ^^ ) : poly -> int -> poly
+val coefDom : variable -> poly -> poly
+val coefConst : variable -> poly -> poly
+val remP : variable -> poly -> poly
+val coef_int_tete : poly -> coef
+val normc : poly -> poly
+val is_constantP : poly -> bool
+val is_zero : poly -> bool
+val monome : variable -> int -> poly
+val coef_constant : poly -> coef
+val univ : bool ref
+val string_of_var : int -> string
+val nsP : int ref
+val string_of_Pcut : poly -> string
+val string_of_P : poly -> string
+val printP : poly -> unit
+val print_tpoly : poly array -> unit
+val print_lpoly : poly list -> unit
+val quo_rem_pol : poly -> poly -> variable -> poly * poly
+val div_pol : poly -> poly -> variable -> poly
+val divP : poly -> poly -> poly
+val div_pol_rat : poly -> poly -> bool
+val pseudo_div : poly -> poly -> variable -> poly * poly * int * poly
+val pgcdP : poly -> poly -> poly
+val pgcd_pol : poly -> poly -> variable -> poly
+val content_pol : poly -> variable -> poly
+val pgcd_coef_pol : poly -> poly -> variable -> poly
+val pgcd_pol_rec : poly -> poly -> variable -> poly
+val gcd_sub_res : poly -> poly -> variable -> poly
+val gcd_sub_res_rec : poly -> poly -> poly -> poly -> int -> variable -> poly
+val lazard_power : poly -> poly -> int -> variable -> poly
+val sans_carre : poly -> variable -> poly
+val facteurs : poly -> variable -> poly list
+val facteurs_impairs : poly -> variable -> poly list
+val hcontentP : (string, poly) Hashtbl.t
+val prcontentP : unit -> unit
+val contentP : poly * variable -> poly
+val hashP : poly -> int
+module Hashpol : Hashtbl.S with type key=poly
+val memoP :
+ string -> 'a Hashpol.t -> (poly -> 'a) -> poly -> 'a
+val hfactorise : poly list list Hashpol.t
+val prfactorise : unit -> unit
+val factorise : poly -> poly list list
+val facteurs2 : poly -> poly list
+val pol_de_factorisation : poly list list -> poly
+val set_of_array_facteurs : poly list array -> poly list
+val factorise_tableauP2 :
+ poly array ->
+ poly list array -> poly array * (poly * int list) array
+val factorise_tableauP :
+ poly array -> poly array * (poly * int list) array
+val is_positif : poly -> bool
+val is_negatif : poly -> bool
+val pseudo_euclide :
+ poly list -> poly -> poly -> variable ->
+ poly * poly * int * poly * poly * (poly * int) list * (poly * int) list
+val implique_non_nul : poly list -> poly -> bool
+val ajoute_non_nul : poly -> poly list -> poly list