qshift_algebra - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Mozilla Firefox.

Online Help

All Products    Maple    MapleSim


Ore_algebra

  

shift_algebra

  

create an algebra of linear difference operators

  

qshift_algebra

  

create an algebra of linear q-difference operators

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

shift_algebra(l_1, ..., l_n)

qshift_algebra(lq_1, ..., lq_n)

Parameters

l_i

-

list Si,ni or list comm,ai

lq_i

-

list Si,ni,qi or list comm,ai

S_i

-

indeterminates (shift and q-shift operator names)

n_i

-

indeterminates (variable names)

a_i

-

indeterminates (parameter names)

Description

• 

The shift_algebra(l_1, ..., l_n) and qshift_algebra(lq_1, ..., lq_n) functions each declare an Ore algebra and return a table that is used by other functions of the Ore_algebra package.

• 

A difference algebra is an algebra of noncommutative polynomials in the indeterminates n1,...,np,S1,...,Sp ruled by the following commutation relations:

Si⁢ni=ni+1⁢Si

  

for i=1,...,p.  Any other pair of indeterminates commute.

• 

A q-difference algebra is an algebra of noncommutative polynomials in the indeterminates q,n1,...,np,S1,...,Sp ruled by the following commutation relations:

Si⁢ni=q⁢ni+1⁢Si

  

for i=1,...,p.  q is a constant and any other pair of indeterminates commute.

  

Note: Difference and q-difference algebras are special cases of Ore algebras. For more information, see Ore_algebra.

• 

The name n_i can be unassigned.

• 

The name S_i can be unassigned.  It is used to denote the difference or q-difference indeterminate S_i associated to the base indeterminate n_i, that is, the operator of shift or q-shift with respect to n_i.

• 

When the list l_i is of the form Si,ni (difference case) or Si,ni,qi (q-difference case), the names n_i and S_i can be unassigned.  Both indeterminates commute with any other indeterminate of the algebra.

• 

When the list l_i is of the form comm,ai, the name a_i can be unassigned.  It denotes a parameter that commutes with any other indeterminate of the algebra.

• 

Though difference and q-difference algebras are noncommutative algebras, their elements are represented with the standard commutative Maple product.  Every Ore_algebra function dealing with elements of a difference of q-difference algebra uses its normal form where all S_i appear on the right of the corresponding n_i.  A monomial na⁢Snb can therefore be printed either na⁢Snb or na⁢Snb.

• 

The sum in difference or q-difference algebras is performed by simply using the Maple `+`, while the product is performed by the Ore_algebra function skew_product (see examples below).

• 

It is also possible to declare a difference or a q-difference algebra by using Ore_algebra[skew_algebra].  Moreover, the algebras declared by Ore_algebra[shift_algebra] and Ore_algebra[qshift_algebra] are difference and q-difference algebras based on shift and q-shift operators S_i, but it is also possible to declare algebras based on finite difference and q-difference operators Di=Si+1 (see Ore_algebra[skew_algebra], predefined types delta and qdelta).

• 

Options are available to control the ground ring of the algebra and the action of the operators on Maple objects.  See Ore_algebra[declaration_options].

• 

These function are part of the Ore_algebra package, and so can be used in the form shift_algebra(..) and qshift_algebra(..) only after performing the command with(Ore_algebra) or with(Ore_algebra,<function>).  The functions can always be accessed in the long form Ore_algebra[shift_algebra](..) and Ore_algebra[qshift_algebra](..).

Examples

> 

with⁡Ore_algebra&colon;

Difference algebras:

> 

A≔shift_algebra⁡Sn&comma;n&comma;Sm&comma;m

A≔Ore_algebra

(1)
> 

skew_product⁡Sn&comma;n&comma;A,skew_product⁡Sm&comma;m&comma;A

n+1⁢Sn,m+1⁢Sm

(2)
> 

skew_product⁡Sn⁢Sm&comma;n⁢m&comma;A

n⁢m+m+n+1⁢Sn⁢Sm

(3)
> 

skew_product⁡Sn&comma;n10&comma;A

n10+10⁢n9+45⁢n8+120⁢n7+210⁢n6+252⁢n5+210⁢n4+120⁢n3+45⁢n2+10⁢n+1⁢Sn

(4)

Both following calls are equivalent.  The first syntax is more convenient to input numerous commutative parameters.

> 

skew_algebra⁡comm=a&comma;b&comma;c&comma;d&comma;e&comma;f&comma;g&comma;h&comma;shift=Sn&comma;n

Ore_algebra

(5)
> 

shift_algebra⁡comm&comma;a&comma;comm&comma;b&comma;comm&comma;c&comma;comm&comma;d&comma;comm&comma;e&comma;comm&comma;f&comma;comm&comma;g&comma;comm&comma;h&comma;Sn&comma;n

Ore_algebra

(6)
> 

evalb⁡=

true

(7)

Both following algebras are different points of view for the same algebra of operators

> 

shift_algebra⁡Sn&comma;n

Ore_algebra

(8)

(or equivalently skew_algebra(shift=[Sn, n]);).

> 

skew_algebra⁡δ=Dn&comma;n

Ore_algebra

(9)

q-difference algebras:

> 

A≔qshift_algebra⁡Sn&comma;qn&comma;Sm&comma;qm

A≔Ore_algebra

(10)
> 

skew_product⁡Sn&comma;qn&comma;A,skew_product⁡Sm&comma;qm&comma;A

q⁢qn⁢Sn,q⁢qm⁢Sm

(11)
> 

skew_product⁡Sn⁢Sm&comma;qn⁢qm&comma;A

q2⁢qn⁢qm⁢Sn⁢Sm

(12)
> 

skew_product⁡Sn&comma;qn10&comma;A

q10⁢qn10⁢Sn

(13)

There can also be distinct qs.

> 

A≔qshift_algebra⁡Sn&comma;qn&comma;Sm&comma;pm

A≔Ore_algebra

(14)
> 

skew_product⁡Sn&comma;qn&comma;A,skew_product⁡Sm&comma;pm&comma;A

q⁢qn⁢Sn,p⁢pm⁢Sm

(15)
> 

skew_product⁡Sn⁢Sm&comma;qn⁢pm&comma;A

q⁢qn⁢p⁢pm⁢Sn⁢Sm

(16)
> 

skew_product⁡Sn&comma;qn10&comma;A

q10⁢qn10⁢Sn

(17)

See Also

Ore_algebra

Ore_algebra/skew_product