Maple Professional
Maple Academic
Maple Student Edition
Maple Personal Edition
Maple Player
Maple Player for iPad
MapleSim Professional
MapleSim Academic
Maple T.A. - Testing & Assessment
Maple T.A. MAA Placement Test Suite
Möbius - Online Courseware
Machine Design / Industrial Automation
Aerospace
Vehicle Engineering
Robotics
Power Industries
System Simulation and Analysis
Model development for HIL
Plant Modeling for Control Design
Robotics/Motion Control/Mechatronics
Other Application Areas
Mathematics Education
Engineering Education
High Schools & Two-Year Colleges
Testing & Assessment
Students
Financial Modeling
Operations Research
High Performance Computing
Physics
Live Webinars
Recorded Webinars
Upcoming Events
MaplePrimes
Maplesoft Blog
Maplesoft Membership
Maple Ambassador Program
MapleCloud
Technical Whitepapers
E-Mail Newsletters
Maple Books
Math Matters
Application Center
MapleSim Model Gallery
User Case Studies
Exploring Engineering Fundamentals
Teaching Concepts with Maple
Maplesoft Welcome Center
Teacher Resource Center
Student Help Center
modp2 - bivariate polynomial arithmetic modulo n
Calling Sequence
modp2(e, p)
Parameters
e
-
algebraic expression
p
prime integer
Description
The modp2 function offers fast arithmetic for bivariate polynomials over the integers modulo p, written .
To achieve its efficiency, modp2 uses a special representation. Explicit conversions are provided for converting the Maple ``sum of products'' representation to and from this representation. Knowledge of this representation is not required by the user in order to use modp2. Also, some of the Maple mod functions already take advantage of the modp2 routines.
The actual representation consists of a list of modp1 polynomials representing the coefficients of the main variable.
A typical use of modp2 would be modp2(Add(a, b), p), meaning add the modp2 polynomial a and the modp2 polynomial b together modulo p and return the result in the form of another modp2 polynomial. The modp2 function accepts the following functions, whose names are also protected global names.
Add
Coeff
Content
Constant
ConvertIn
ConvertOut
Degree
Diff
Divide
Eval
Factors
RingMultiply
Gcd
Lcm
Multiply
One
Prem
Pquo
Power
Primpart
Randpoly
Sqrfree
TotalDegree
Unit
VarSwap
Zero
The Add function is n-ary. The Zero and One nullary functions create the and 1 modp2 polynomials. The Constant function creates a modp2 polynomial for the given integer constant. The Multiply function is n-ary. Scalar multiplication can be done using RingMultiply(n, a).
The Degree function computes the degree. The TotalDegree function computes the total degree in both variables. The Coeff function computes any coefficient. The Diff function computes the derivative. The Randpoly function takes two degrees as arguments and generates a polynomial of the given degrees with random coefficients modulo p.
The Eval function evaluates one indeterminate of the polynomial for a specific value. The indeterminate to evaluate can be specified as the second argument (followed by the evaluation constant). If the indeterminate is left out, the main variable is evaluated
The ConvertIn and ConvertOut functions are used to convert to and from the modp2 representation. The modp2(ConvertIn(b, x, y), p) command converts from a bivariate polynomial b in x and y over the integers to a modp2 polynomial modulo p. The ConvertOut function does the reverse of ConvertIn.
Note that unlike the mod function, modp2 arithmetic operations do not take the variable as a name. Instead, 1 means take the main variable, x and 2 means use the second variable, y. If the variable argument is left out, the main variable is assumed. For example, the calling sequences of the Diff operation are Diff(a, 1), Diff(a, 2), and Diff(a). Calling sequences are similar for Coeff, Degree, Prem, and Pquo.
Examples
See Also
mod, modp1
Download Help Document