|        |   | 
- GPS(G, vars_start, vars_end)
  
 - GPS_with_non_binary_proof_path(G, proof_path, deg_bound, over_deg_bound)
  
 - GPS_with_proof_path(G, proof_path, deg_bound, over_deg_bound)
  
 - GPS_with_suggestions(G, deg_bound, over_deg_bound, opt_lazy=True, opt_red_tail=True, initial_bb=True)
  
 - build_and_print_matrices(v, strat)
 - old solution using PIL, the currently used implementation is done in C++
 
and plots the same matrices, as being calculated  
 - build_and_print_matrices_deg_colored(v, strat)
 - old PIL solution using a different color for each degree
  
 - contained_vars(...)
 - contained_vars( (BooleSet)arg1) -> BooleSet :
 
  
    C++ signature : 
        polybori::BooleSet contained_vars(polybori::BooleSet)  
 - count_double(...)
 - count_double( (BooleSet)arg1) -> float :
 
  
    C++ signature : 
        double count_double(polybori::BooleSet)  
 - easy_linear_factors(...)
 - easy_linear_factors( (Polynomial)arg1) -> BoolePolynomialVector :
 
  
    C++ signature : 
        std::vector<polybori::BoolePolynomial, std::allocator<polybori::BoolePolynomial> > easy_linear_factors(polybori::BoolePolynomial)  
 - high_probability_polynomials_trick(p, strat)
  
 - if_then_else(...)
 - if_then_else( (object)arg1, (BooleSet)arg2, (BooleSet)arg3) -> BooleSet :
 
    if-then else operator 
  
    C++ signature : 
        polybori::BooleSet if_then_else(int,polybori::BooleSet,polybori::BooleSet) 
  
if_then_else( (Variable)arg1, (BooleSet)arg2, (BooleSet)arg3) -> BooleSet : 
    if-then else operator 
  
    C++ signature : 
        polybori::BooleSet if_then_else(polybori::BooleVariable,polybori::BooleSet,polybori::BooleSet)  
 - interpolate(...)
 - interpolate( (BooleSet)arg1, (BooleSet)arg2) -> Polynomial :
 
  
    C++ signature : 
        polybori::BoolePolynomial interpolate(polybori::BooleSet,polybori::BooleSet)  
 - interpolate_smallest_lex(...)
 - interpolate_smallest_lex( (BooleSet)arg1, (BooleSet)arg2) -> Polynomial :
 
  
    C++ signature : 
        polybori::BoolePolynomial interpolate_smallest_lex(polybori::BooleSet,polybori::BooleSet)  
 - ll_red_nf_noredsb(...)
 - ll_red_nf_noredsb( (Polynomial)arg1, (BooleSet)arg2) -> Polynomial :
 
  
    C++ signature : 
        polybori::BoolePolynomial ll_red_nf_noredsb(polybori::BoolePolynomial,polybori::BooleSet)  
 - ll_red_nf_noredsb_single_recursive_call(...)
 - ll_red_nf_noredsb_single_recursive_call( (Polynomial)arg1, (BooleSet)arg2) -> Polynomial :
 
  
    C++ signature : 
        polybori::BoolePolynomial ll_red_nf_noredsb_single_recursive_call(polybori::BoolePolynomial,polybori::BooleSet)  
 - ll_red_nf_redsb(...)
 - ll_red_nf_redsb( (Polynomial)arg1, (BooleSet)arg2) -> Polynomial :
 
  
    C++ signature : 
        polybori::BoolePolynomial ll_red_nf_redsb(polybori::BoolePolynomial,polybori::BooleSet)  
 - map_every_x_to_x_plus_one(...)
 - map_every_x_to_x_plus_one( (Polynomial)arg1) -> Polynomial :
 
  
    C++ signature : 
        polybori::BoolePolynomial map_every_x_to_x_plus_one(polybori::BoolePolynomial)  
 - mapping(...)
 - mapping( (Polynomial)arg1, (Monomial)arg2, (Monomial)arg3) -> Polynomial :
 
  
    C++ signature : 
        polybori::BoolePolynomial mapping(polybori::BoolePolynomial,polybori::BooleMonomial,polybori::BooleMonomial)  
 - mod_mon_set(...)
 - mod_mon_set( (BooleSet)arg1, (BooleSet)arg2) -> BooleSet :
 
  
    C++ signature : 
        polybori::BooleSet mod_mon_set(polybori::BooleSet,polybori::BooleSet) 
  
mod_mon_set( (BooleSet)arg1, (BooleSet)arg2) -> BooleSet : 
  
    C++ signature : 
        polybori::BooleSet mod_mon_set(polybori::BooleSet,polybori::BooleSet)  
 - mod_var_set(...)
 - mod_var_set( (BooleSet)arg1, (BooleSet)arg2) -> BooleSet :
 
  
    C++ signature : 
        polybori::BooleSet mod_var_set(polybori::BooleSet,polybori::BooleSet)  
 - mult_fast_sim_C(...)
 - mult_fast_sim_C( (BoolePolynomialVector)arg1, (Ring)arg2) -> Polynomial :
 
  
    C++ signature : 
        polybori::BoolePolynomial mult_fast_sim_C(std::vector<polybori::BoolePolynomial, std::allocator<polybori::BoolePolynomial> >,polybori::BoolePolyRing)  
 - multiply_polynomials(l, ring)
 - >>> r=Ring(1000)
 
>>> x=r.variable 
>>> multiply_polynomials([x(3), x(2)+x(5)*x(6), x(0), x(0)+1], r) 
0  
 - nf3(...)
 - nf3( (ReductionStrategy)arg1, (Polynomial)arg2, (Monomial)arg3) -> Polynomial :
 
  
    C++ signature : 
        polybori::BoolePolynomial nf3(polybori::groebner::ReductionStrategy,polybori::BoolePolynomial,polybori::BooleMonomial)  
 - normal_form(poly, ideal, reduced=True)
 - Simple normal form computation of a polynomial  against an ideal.
 
>>> from polybori import declare_ring, normal_form 
>>> r=declare_ring(['x','y'], globals()) 
>>> normal_form(x+y, [y],reduced=True) 
x 
>>> normal_form(x+y,[x,y]) 
0  
 - parallel_reduce(...)
 - parallel_reduce( (BoolePolynomialVector)arg1, (GroebnerStrategy)arg2, (object)arg3, (float)arg4) -> BoolePolynomialVector :
 
  
    C++ signature : 
        std::vector<polybori::BoolePolynomial, std::allocator<polybori::BoolePolynomial> > parallel_reduce(std::vector<polybori::BoolePolynomial, std::allocator<polybori::BoolePolynomial> >,polybori::groebner::GroebnerStrategy {lvalue},int,double)  
 - pkey(p)
  
 - random_set(...)
 - random_set( (Monomial)arg1, (int)arg2) -> BooleSet :
 
  
    C++ signature : 
        polybori::BooleSet random_set(polybori::BooleMonomial,unsigned int)  
 - recursively_insert(...)
 - recursively_insert( (CCuddNavigator)arg1, (object)arg2, (BooleSet)arg3) -> BooleSet :
 
  
    C++ signature : 
        polybori::BooleSet recursively_insert(polybori::CCuddNavigator,int,polybori::BooleSet)  
 - set_random_seed(...)
 - set_random_seed( (int)arg1) -> None :
 
  
    C++ signature : 
        void set_random_seed(unsigned int)  
 - spoly(...)
 - spoly( (Polynomial)arg1, (Polynomial)arg2) -> Polynomial :
 
    Compute s-Polynomial between two Polynomials 
  
    C++ signature : 
        polybori::BoolePolynomial spoly(polybori::BoolePolynomial,polybori::BoolePolynomial)  
 - substitute_variables(...)
 - substitute_variables( (Ring)arg1, (BoolePolynomialVector)arg2, (Polynomial)arg3) -> Polynomial :
 
  
    C++ signature : 
        polybori::BoolePolynomial substitute_variables(polybori::BoolePolyRing,std::vector<polybori::BoolePolynomial, std::allocator<polybori::BoolePolynomial> >,polybori::BoolePolynomial)  
 - symmGB_F2_C(G, opt_exchange=True, deg_bound=1000000000000, opt_lazy=False, over_deg_bound=0, opt_red_tail=True, max_growth=2.0, step_factor=1.0, implications=False, prot=False, full_prot=False, selection_size=1000, opt_allow_recursion=False, use_noro=False, use_faugere=False, ll=False, opt_linear_algebra_in_last_block=True, max_generators=None, red_tail_deg_growth=True, modified_linear_algebra=True, matrix_prefix='', draw_matrices=False)
  
 - symmGB_F2_python(G, deg_bound=1000000000000, over_deg_bound=0, use_faugere=False, use_noro=False, opt_lazy=True, opt_red_tail=True, max_growth=2.0, step_factor=1.0, implications=False, prot=False, full_prot=False, selection_size=1000, opt_exchange=True, opt_allow_recursion=False, ll=False, opt_linear_algebra_in_last_block=True, max_generators=None, red_tail_deg_growth=True, matrix_prefix='mat', modified_linear_algebra=True, draw_matrices=False, easy_linear_polynomials=True)
  
 - test_iterate_lex(...)
 - test_iterate_lex( (Polynomial)arg1) -> int :
 
  
    C++ signature : 
        unsigned long test_iterate_lex(polybori::BoolePolynomial {lvalue})  
 - test_iterate_lex_reversed(...)
 - test_iterate_lex_reversed( (Polynomial)arg1) -> int :
 
  
    C++ signature : 
        unsigned long test_iterate_lex_reversed(polybori::BoolePolynomial {lvalue})  
 - test_iterate_ordered(...)
 - test_iterate_ordered( (Polynomial)arg1) -> int :
 
  
    C++ signature : 
        unsigned long test_iterate_ordered(polybori::BoolePolynomial {lvalue})  
 - test_iterate_reference_ordered(...)
 - test_iterate_reference_ordered( (Polynomial)arg1) -> int :
 
  
    C++ signature : 
        unsigned long test_iterate_reference_ordered(polybori::BoolePolynomial {lvalue})  
 - testvalidstrat(...)
 - testvalidstrat( (GroebnerStrategy)arg1) -> None :
 
  
    C++ signature : 
        void testvalidstrat(polybori::groebner::GroebnerStrategy)  
 - top_index(...)
 - top_index( (BooleSet)arg1) -> int :
 
  
    C++ signature : 
        int top_index(polybori::BooleSet)  
 - translate_indices(...)
 - translate_indices( (Polynomial)arg1, (IntVector)arg2) -> Polynomial :
 
  
    C++ signature : 
        polybori::BoolePolynomial translate_indices(polybori::BoolePolynomial,std::vector<int, std::allocator<int> >)  
 - variety_lex_groebner_basis(...)
 - variety_lex_groebner_basis( (BooleSet)arg1, (Monomial)arg2) -> BoolePolynomialVector :
 
  
    C++ signature : 
        std::vector<polybori::BoolePolynomial, std::allocator<polybori::BoolePolynomial> > variety_lex_groebner_basis(polybori::BooleSet,polybori::BooleMonomial)  
 - variety_lex_leading_terms(...)
 - variety_lex_leading_terms( (BooleSet)arg1, (Monomial)arg2) -> BooleSet :
 
  
    C++ signature : 
        polybori::BooleSet variety_lex_leading_terms(polybori::BooleSet,polybori::BooleMonomial)  
 - warn(...)
 - Issue a warning, or maybe ignore it or raise an exception.
  
 |