Loading...
Searching...
No Matches
facIrredTest.h
Go to the documentation of this file.
/*****************************************************************************\
* Computer Algebra System SINGULAR
\*****************************************************************************/
/** @file facIrredTest.h
*
* This file provides a probabilistic irreducibility test for polynomials over
* Z/p.
*
* ABSTRACT: irreducibility test based on "Quick and Dirty Irreducibility Test"
* by v. Bothmer and Schreyer
*
* @author Martin Lee
*
**/
/*****************************************************************************/
#ifndef FAC_IRRED_TEST_H
#define FAC_IRRED_TEST_H
// #include "config.h"
#include "canonicalform.h"
/// evaluate F at k random points in Z/p^n and count the number of zeros that
/// occur
///
/// @return numZeros returns #zeros/trials
double numZeros (const CanonicalForm& F, ///< [in] some poly over Z/p with n
///< variables
int k ///< [in] number of trials
);
/*BEGINPUBLIC*/
/// given some error probIrredTest detects irreducibility or reducibility of F
/// with confidence level 1-error
///
/// @return probIrredTest returns 1 for irreducibility, -1 for reducibility
/// or 0 if the test is not applicable
int FACTORY_PUBLIC probIrredTest (const CanonicalForm& F, ///< [in] some poly over Z/p
double error ///< [in] 0 < error < 1
);
/*ENDPUBLIC*/
#endif
canonicalform.h
Header for factory's main class CanonicalForm.
k
int k
Definition cfEzgcd.cc:99
CanonicalForm
factory's main class
Definition canonicalform.h:86
numZeros
double numZeros(const CanonicalForm &F, int k)
evaluate F at k random points in Z/p^n and count the number of zeros that occur
Definition facIrredTest.cc:24
probIrredTest
int FACTORY_PUBLIC probIrredTest(const CanonicalForm &F, double error)
given some error probIrredTest detects irreducibility or reducibility of F with confidence level 1-er...
Definition facIrredTest.cc:63
FACTORY_PUBLIC
#define FACTORY_PUBLIC
Definition globaldefs.h:25
error
#define error(a)
Definition mpr_numeric.cc:966