Abstract
Specific features of the operator factorization method are established making possible a global
program implementation of the method with the help of the superstructure Santra 3 over the
algorithmic language Refal. The complete set of the main operations of the factorization
method is given. These operations serve as prototypes of command entries of the instruction
set of the super structure Hypertrans over Santra 3. Program realization of typical operations
of factorization method by means of the program tools of the system under development showed
feasibility of the project aimed at development of a globally universal Hypertrans mathematical
system capable to realize the complete set of operations inherent in the factorization method.
Contents
1. Introduction
.....................................................................................4
2. Operations used
in the
factorization method
.................5
2.1. Factorization formulas
2.2. W-multiplication properties
2.3. W-equivalent operators
2.4. Operators relationships
2.5. Elementary reduction formulas
2.6. Auxiliary algebraic identities
2.7. Linear transformations
3.
Description of
Hypertrans functions by
tools of the
symbolic manipulation system
Santra 3
.................................. 11
3.1. Algebraic expression for function
3.2. Santra 3 representation of recurrence relation for the binomial series
3.3. Description of operator action upon a hypergeometric function
3.4. A simple example using system function GTFMSET
3.5. General identification of polynoms
3.6. Program call of program operator OMEGAFACT
3.7. Program function APPLYSER
3.8. Construction of an W-product
3.9. Description of the function OMEGAPROD
3.10. Complete description of OMEGAPROD
3.11. Final result
References
......................................................................................23
1.
Introduction
The most surprising feature of the operator factorizatiom method
[prep1] is that thirty add main operations (see Sec.2)
underlying the method allow any formula for any hypergeometric
series to be derived in a simple and effective manner. Loosely
speaking it means that the set of operations is complete within
the class of problems relating to hypergeometric series. Up to
the present only separate program tools were available. Having
used computer-aided approach to realize one of
the desired transformations the researcher was compelled to turn
back to manual, with pen and paper, work until he encountered a
transformation to which another computer-aided tool could be
applicable. The completeness of the factorization method
operations opens up the prospect of an uninterrupted computer
session of formula derivation. This is the first reason attaching
importance to the development of a globally universal
program implementing the main operations of the factorization
method. The small size of the operation set is an additional
feature giving advantage to the factorization method over
other approaches.
The tools of investigation used in mathematics are much more
numerous than the objects of investigation. While the objects
are, more or less, classified and put in an orderly fashion, the
tools form a huge disorderly conglomeration of formulas. The
tools may include objects that were investigated previously. Is
it possible that some objects were at once the goals of
investigation and the only investigatory tools of the same set of
objects. In our case the striking answer is "yes". The
factorization principle being applied to hypergeometric series
shows that each simple and multiple series can be directly
expressed through simpler series of the same hypergeometric type.
If we know the properties of the series occurring in the
factorized form of a complicated series we
can readily establish any desired property of the complicated
series with the help of the self-same set of operations mentioned
above. This shows that hypergeometric series constitute a
unified family of functions closely connected with one another.
Due to prevalence of hypergeometric series in applied science
we expect that program realization of the operator factorization
method may become a breakthrough not only in the theory of
hypergeometric series but in applied analysis as well. In the
distant future such programs may provide a basis for a new
generation of mathematical information systems using advanced
knowledge bases rather than out-of-date data bases.
Specific features of the operator factorization method
make possible a global program implementation of
the method with the help of the superstructure Santra 3 over the
algorithmic language Refal. In Sec.2 we give a complete set of the
main operations of the factorization method. These
operations serve as prototypes of command entries of the i
instruction set of the superstructure Hypertrans over Santa 3
(see Sec.7 in [prep1]).
Program realization of a part of the main operations of the
factorization method is given in Sec.3.
The examples given in Sec.3 show feasibility of the project
aimed at development of a globally universal Hypertrans
mathematical system capable to realize the comlete set of
operations inherent in the factorization method.
2.
Operations used in the factorization method
These operations play the role of computer commands projects.
Although only a minor part of operations is put into a form of
Santra 3 commands (see Sec. 3) we give here a complete, with
respect to the main operations, set of derivation rules.
2.1. Factorization formulas
COMMANDS (I)
FACT1. Factorization formula of the series of the F[d;x]
|
F[d1 ; x1 d(s)] F[d2;x2s]
|
| |
|
=
F[d1,d2 ; x1 x2] , d(s)=d/ds
(1) |
FACT2. Factorization formula of the series in one variable
containing compound parameter
|
F[d1 ; x1 d(s)] F[d2;x2sm]
|
| |
|
=
F[<d1| m>, d2 ; x1mx2] .
(2) |
FACT3. General factorization formula of the series NF
NF[L1, L2 ; x1, ... ,xN]
|
=NF |
[ |
L1 ; d(s1), ... ,d(sN)]
NF[L2 ; x1s1, ... ,xNsN |
] |
|
| |
|
.
|
(3)
FACT4. Special factorization formula of the series NF
NF[<d| m1, ... ,mN>, L ; x1, ... ,xN]
|
= F |
[ |
d ; d(s) |
] |
NF[L ; x1sm1, ... ,xNsmN] |
| |
|
.
|
(4)
FACT5. Factorization of NF containing the
glueing operator F[d0 ; x dm(s)]
F[d0;x dm(s)]F[d1 ; x1sm] ···
F[dN ; xNsm]|s=0
=F |
é
ê
ê
ë |
d0, |
|
,..., |
|
:d1;...;dN;
xx1mm,...,xxNmm |
ù
ú
ú
û |
.
|
(5)
2.2.
W-multiplication properties COMMANDS (II)
OMEGA 1. Commutativity property u*v=v*u (COMM)
u(d(s))v(xs)|s=0=v(d(s))u(xs)|s=0
(6)
OMEGA 2. Coupling rule (COUP)
u(d(s))v(xs)|s=0=u(xd(s))v(s)|s=0.
(7)
OMEGA 3. Associativity property (ASSO)
<w*(u*v)|x>=<(w*u)*v|x>
(8)
OMEGA 4. exp(x) plays the role of W-unit
(OMUN)
that is f=f*exp=f, or
exp(d(s))f(xs)|s=0=f(d(s))exp(xs)s=0=f(x).
(9)
OMEGA 5. The property of the W-unit function exp
(see (9)) can be interpreted as "renaming" (s for x)
property (REN)
exp(xd(s))f(s)|s=0=
f(x)=f(s)|sÞ x.
(10)
2.3. W-equivalent operators
COMMANDS (III)
EQUIV1. An arbitrary operator multiplied by power function
F(d(s))sn Y(s)|s=0 =
F(n)(d(s)) Y(s)|s=0
(11)
EQUIV2. An arbitrary operator multiplied by exponential
function
F(d(s))exs Y(s)|s=0 =
F(d(s)+x) Y(s)|s=0
(12)
EQUIV3. The binomial operator multiplied by exponential
function
F01[a;d(s)]exs Y(s)|s=0 = |
(1-x)-aF01 |
é
ê
ê
ë |
a; |
|
ù
ú
ú
û |
Y(s) |
½
½
½
½ |
|
(13) |
2.4. Operators relationships
COMMANDS (IV)
OPER1. Shift operator identity
(SHIFT)
exp(u d(x))f(x)=f(x+u) .
(14)
OPER2. Similarity transformation (F and f are arbitrary
functions, A is an arbitrary operator) (SIMIL)
f-1 F(A) f=F(f-1A f )=F(A+f-1[A,f ] ) .
(15)
OPER3. Operator argument displacement formula (DISP)
exp(-vx)F[d(x)]exp(vx)=F[d(x)+v]
(16)
OPER4. Applying of a differential operator to exp(x)
(OPEXP)
F(d(x)) exp(ux)=F(u) exp(ux)
(17)
OPER5. Generalized Leibnitz rule (LEIB)
F(d(x)) f1(x)f2(x)=
F(d(x1)+d(x2))f1(x1)f2(x2)|x1=x2=x
(18)
OPER6. Differentiation of hypergeometric series
(DIFHYP)
dn(x) F[d; ux] =
un(d,n) F[d+n; ux]
(19)
2.5. Elementary reduction formulas
COMMANDS (V)
RED1. Reduction of the exponential series F00
(REDEXP)
F00[*//*;x]=exp(x)
(20)
RED2. Reduction of the binomial series F01 (REDBIN)
F01[a//*;x]º F[a;x]=(1-x)-a.
(21)
RED3. Reduction of infinite geometrical progression
(GEOINF)
RED4. Reduction of finite geometrical progression
(GEOFIN)
RED5. Breaking up of the series NF with empty glueing
set into a product of simple series
NF[* : d1 ;...; dN; x1,...,xN] =
F[d1; x1]··· F[dN; xN]
(24)
RED6. Equal parameters can be cancelled out from the
numerator and denominator list of parameters of a series NF,
that is (CANC)
F[a, d//a; x] = F[d; x]
(25)
RED7. If a series NF contains the parameter
á0|mñ where mn³, n=1,...,N then
the summation indices of the NF corresponding to positive mn's vanish. The corresponding variables and
spectral components should be cancelled out. Only those
quantities connected with zero mn's survive in the
coefficience of the series NF
(SUPPR)
RED8. The contraction reduction is clear from
(CONTR)
4F[á d1|1333ñ ,á d2|2111ñ ,...; x1,x2,x3,x4]
=2F[á d1|13ñ ,á d2|21ñ ;x1,x2+x3+x4].
(26)
RED9.
The series bº N+1F(x0, x)
having binomial type (1//0) with respect to x0 is
expressed as (BIN)
bº N+1F[á n|1,mñ ,L*;x0,x]
= (1-x0)-n N
F[á n|1,mñ ,L*;(1-x0)-m x]
(27)
2.6. Auxiliary algebraic identities
COMMANDS (VI)
ALG1 Analogs of Gauss-Legendre multiplication formula
(MULT(m))
(a,m i) = mm i |
æ
ç
ç
è |
|
,i |
ö
÷
÷
ø |
|
æ
ç
ç
è |
|
,i |
ö
÷
÷
ø |
···
|
æ
ç
ç
è |
|
,i |
ö
÷
÷
ø |
,
(28) |
(MULT (2)) : (a,2i) =
4i |
æ
ç
ç
è |
|
,i |
ö
÷
÷
ø |
|
æ
ç
ç
è |
|
,i |
ö
÷
÷
ø |
(29) |
ALG2. Inversion formula for Pochhammer symbol
(INVER)
(a, -I) = (-1)I (1-a, I)-1
(30)
ALG3. Inversion of RED1: introduction of
equal parameters in numerator and denominator of a series
(INTRO)
F[d; x] = F[a, d//a; x]
(31)
ALG4. Vertical transfer of parameters
(VERT)
NF[á a | m1,...,mN ñ, L; x]
=NF[L//á 1-a | m1,..., mN ñ; (-1)m
x] ,
(32)
x =[x1,...,xN],
(-1)m x =
[(-1)m1x1,...,(-1)mNxN]
ALG5. Any series NF is symmetric with respect to
simultaneous permutation of arguments xi
\rightleftharpoons
xj, individual sets of parameters di
\rightleftharpoons
dj and all corresponding spectral numbers
mi
\rightleftharpoons
mi, li
\rightleftharpoons
lj, etc.
(SYMM)
ALG6. Uniformization (in x) of the argument of the
series F01 (UNIF)
F01[a; x+u]=(1-x-u)-a=(1-u)-a
F01 |
é
ê
ê
ë |
a; |
|
ù
ú
ú
û |
(33) |
ALG7. Factorization of geometrical progression
F01[1; x] into a product of two progressions
(PROG)
F01[1; x] = (år=0N-1xr)
F01[1; xN]
(34)
ALG8. Decomposition of ex into a sum of N series
FN-10(xN) (DEXP(N))
ex =
|
|
|
|
F |
é
ê
ê
ê
ë |
|
ù
ú
ú
ú
û |
(35) |
ALG9. Addition formula for binomial series
(ADDBIN)
F01[a; x1+x2] = |
|
|
|
x1n F01[a+n; x1]
x2n F01[a+n; x2]
(36) |
ALG10. A series N+1F containing an "indefinite"
parameter
á0|_1,p
ñ with zero argument
and alternating spectrum |_1,p
ñ where
_1º -1, p
1³ 0, ... pN³0 is reduced to
a simpler form containing but "definite" parameters.
We illustrate this important fact by the instance of two variables:
2F[á0|1, |
|
ñ,á d'1|m1,m2ñ,
...:d1;d2;
x1,x2] (INDEF)
|
= 2F[á d2//1|1,1ñ,á d'1|m12,
m2ñ,···
:d1; * ; x1x2,-x2] ,
(37)
where m12=m1+m2.
The inverse "indefinite" transformation is
(INDEF2)
F[d0,á d1'|m1,m2ñ,
··· : d1; * ; z1,z2]
=F[á 0 | 1,1 ñ,á d1' | m1-m2,m2 ñ,
···
: d1; 1,d0; -z1/z2,-z2].
(38)
2.7. Linear transformations
MACRO-COMMANDS
1. Canonical form of the series
N+1F[L0,L*; x0, x] with respect to x0 is the
form where all spectral numbers relating x0 are non-negative.
The Kummer and the Gauss canonical forms having types (1//0)
and (2//1) with respect x0 are given by
K = N+1F
[án1|1, m1ñ
// án0|1, m0ñ] ,
L*; x0,x] ,
G = N+1F[á
n1|1,m1ñ,án2|1,m2ñ
//án0|1,m0ñ],L*;x0,x] .
2. Kummer-type linear transformation
Linear transformation connecting two series having
the Kummer type (1//1) with respect to x0 (the L*
symbolizes the coefficients independent of summation index
i0):
F |
é
ë |
án1|1,m1ñ |
, L* ; x0,
x |
án0|1,m0ñ |
|
ù
û |
LIN(K) |
=
exp(x0) F |
é
ê
ê
ë |
|
,
án1|0,m1ñ, L* ; -x0,x |
án0|1,m0ñ |
|
|
|
ù
ú
ú
û |
.
|
3. Linear Gauss-type transformations
For each series we use a canonical representation
where all spectral numbers connected with x0 are equal to 1.
In the three transformations there are changed, consecutively, the first
(G01), the second (G02) and the both (G00) numerator parameters.
The symbol Q in (GOQ) is the number of argument.
|
F |
é
ë |
án1|1,m1ñ , |
án2|1,m2ñ , L* ; x0,x |
án0|1,m0ñ |
|
ù
û |
=
|
|
|
|
|
|
= L10Fº(1-x0)-n2 ×
LIN(G01)
|
× F |
é
ê
ê
ê
ê
ë |
|
ù
ú
ú
ú
ú
û |
|
|
|
|
|
= L20Fº(1-x0)-n1 ×
LIN(G02)
|
× F |
é
ê
ê
ê
ê
ë |
|
|
ù
ú
ú
ú
ú
û |
|
|
|
|
|
= L00Fº(1-x0)n
0 1_2_
×
LIN(G00)
|
× F |
é
ê
ê
ë |
|
|
án1|0,m1ñ ,
án2|0,m2ñ , L* ; x0,X |
án0|1,m0ñ, |
|
|
|
|
ù
ú
ú
û |
,
|
|
|
|
|
|
where X=
x(1-x0)-m
_012
.
3.
Description of Hypertrans functions by tools of the symbolic
manipulation system Santra 3
The main goal of this section is to substantiate the statement
that the operations of the factorization method can be programmed
using the language of Santra 3 system which is based on the
language of already existent Santra 2 system [1]-[6].
In turn the Santra 2 is based on the accumulated experience of
algebraic transformations [7]-[10] using Refal 2
language [11]-[13].
For the sake of
brevity we do not give a detailed language description confining
ourselves to description of specific algorithms which correspond
to the selected transformations of hypergeometric functions. Such
descriptions may serve as examples of proposed language
constructions thus reinforcing the proclaimed feasibility of
Hypertrans construction (levels 2,3 and 4 are implied; see Sec.7
in [prep1]). Level 2 (Santra 3 language) is on the stage of
realization completion. Level 3 (Hypertrans functions) which is
the basic level of Hypertrans system will assure full-scale
possibilities of formula derivation for hypergeometric series.
Level 4 (graphic Hypertrans shell) would give us a handy graphic
access to the tools of the level 3.
The level 1 is supposed to be complemented by effective graphic
interface. This problem falling outside the scope of the present
project is expected to be solved by the author of Refal 6
[arklimov]. This will make Refal 6 more complete and
convenient for extensive use in development of various projects.
Derivation of recurrence
relation for the Bessel-type series F10 (see Sec. 4.7 in
Ref.[prep1]) will give us sufficiently persuasive example with
respect to the potentialities of the operator factorization
method and the feasibility of implementing the main operations
of the method by means of Santra 3 language constructions.
The surprising (and typical for the factorization method!) thing
is that the desired relation for the series F10 follows
from the elementary relation
(1-x)-a = (1-x)(1-x)-a-1 = (1-x)-a-1 - x (1-x)-a-1 .
(39)
Using power expansion F[a; x] for
the binomial function (1-x)-a we have
F[a; x] = F[a+1; x] - x F[a+1; x] .
(40)
We shall construct, step by step, Santra 3 representation of the
identity (40) and all program operators and functions
necessary to derive the desired recurrence relation using
eq. (40) as a proto-relation (see Sec. 4.6.4 in
[prep1]). To begin with we consider a separate
hypergeometric function.
3.1. Algebraic expression for hypergeometric function
An algebraic expression is represented in Santra by a single
"fraction-like" construction with common denominator. This
construction is converted into a normal form permitting easy
performance of different algebraic operations. A normal form is
introduced by angular bracket "<...>" where dots
stand for a Santra expression. The Santra representation of the
binomial series F[a; x] is
<"F' (((<"a'>)) ()) (<"x'>)>
Double and single quotes form bracket-like structure which is
called q-text. The names of variables and functions are
introduced by q-texts. Generally, the q-texts are used to
indicate the program fragments whose computation is delayed.
These fragments may contain, in turn, upper level q-texts.
The tree structure of q-texts can be used to realize the data
processing on analogy with abstract data types. It is also of use
for implementing relocated subroutines.
The function F has two arguments each enclosed in angular
brackets and parentheses. The first bracket pair contains
parameter and the second one encloses argument. Generally,
the total set of parameters is represented by upper and lower
sets of parameters (see [prep1]). Each set must be enclosed
in a separate bracket pair. Empty parentheses denote empty set of
parameters. To finish construction of the normal form, the whole
expression should be put into angular brackets. If the above
expression were a part of more general expression the latter
should be delimited by a separate pair of angular brackets
signifying reduction of the total expression to normal form.
The inner angular brackets play the same role. The printed form
of the expression would be the same as given above.
3.2. Santra 3 representation of recurrence relation
for the binomial series
Turn now to the identity (40). The universal structure of
the programming system appears in that the identity can be looked
at as an object and as such it can be represented by a special
operator EQU having arbitrary structure. To avoid the
necessity of reducing the total identity to a common denominator
it is expedient to break up the both parts of the identity onto
separate summands each having a separate representation enclosed
into a separate pair of brackets.
Besides, the left and the right sides will be put into separate
external parentheses. The resultant construction representing
the identity (40) takes the form
|
<"EQU' ( |
(<"F' (((<"a'>)) ()) (<"x'>)>))
|
|
|
|
|
|
|
|
|
|
( |
(<"F' (((<"a'+1>)) ()) (<"x'>)>)
|
|
|
|
|
|
|
|
|
|
|
(<-"x' * "F' (((<"a'+1>)) ()) (<"x'>)>)) > : e0 =
|
|
|
|
|
|
|
|
|
|
|
To be able to process the identity as a whole we give the name
eO to it. The equality sign plays the role of delimiter
and indicator that the program will not return to the fragment.
3.3.
Description of operator action upon a hypergeometric function
What operation can be performed with the object eO?
Recollect that action of operators upon functions (under
supplementary "zero condition") is the essence of the
factorization method. That's why we need description of
operators. The operator
F20 |
é
ê
ê
ê
ë |
|
ù
ú
ú
ú
û |
½
½
½
½ |
|
,
|
which is to be applied to the identity (40)
is represented by the record
|
<"COND' |
(<"F' (() ((<"a'>) (<"a'+1>)))
(<"z'*"d'(<"x'>)>) >)
|
|
|
|
|
|
|
|
|
|
|
((<"x'>) (<0>)) >) >
|
|
|
|
|
|
|
|
|
|
|
The external function COND is used to denote the
condition "x=0" (see the second parameter); the first parameter
represents the body of the operator proper. Differentiation o
perator is given by the program function
"d'(<"x'>). An action of operator will be denoted by the
program operator OPER. As a result the action of the
operator F20 upon the function F[a; x] can be written
as
|
<"OPER' |
(<"COND'
(<"F' (() ((<"a'>) (<"a'+1>)))
|
|
|
|
|
|
|
|
|
|
|
(<"z'*"d'(<"x'>)>) >) ((<"x'>) (<0>)) >)
|
|
|
|
|
|
|
|
|
|
|
(<"F' (((<"a'>)) ()) (<"x'>) >) > (I)
|
|
|
|
|
|
|
|
|
|
|
The record is formal because the condition "x=0" relates to the
function produced by the action of operator rather than to the
operator itself. To make the record "less abstract" and more
transparent we transform the above record as follows
|
<"COND' |
(<"OPER'(<"F' (() ((<"a'>) (<"a'+1>)))
|
|
|
|
|
|
|
|
|
|
|
(<"z'*"d'(<"x'>)>) >)
(<"F' (((<"a'>)) ()) (<"x'>) >) >)
|
|
|
|
|
|
|
|
|
|
|
((<"x'>) (<0>)) > : eOP =
(II)
|
|
|
|
|
|
|
|
|
|
|
In what follows we shall use more descriptive form (II). The form
of the type (I) may appear in case of "nonrecognizability" of
either the operator or the object (see the last sentence in the
function OMEGAFACT below). An expression of type (II)
will be constructed with the help of the program function
OMEGAFACT whose arguments are operator and object.
The program definition of OMEGAFACT is performed with
the help of the system function GTFMSET
<GTFMSET ("OMEGAFACT')(("...'))>
where OMEGAFACT is the name of the defined function, and dots
uncover content of the function. We next proceed to description
of this function.
3.4. A simple example using system function GTFMSET
As a simple illustrative example we give description of function
of one argument FACT which calculates factorial of an
integer:
|
<GT |
FMSET ("FACT')(("(eN),
|
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
<1> : eN = <1>;
|
|
|
|
|
|
|
|
|
|
|
= <(eN) * FACT(<(eN)-1>)>;
|
|
|
|
|
|
|
|
|
|
|
}; '))>;
|
|
|
|
|
|
|
|
|
|
|
The symbol eN is variable of the function
FACT. The first entry of the variable in parentheses
(eN) is a formal
parameter describing the argument. The possible use of the
fuction is illustrated by expression
<FACT (<5>)>
The result of this calculation is the number <120>.
Printing output (along with calculation) is performed by
<PRIEL (<FACT (<5>)>)>
3.5. General identification of polynoms
Generalized identification of polynoms is an important instrument
of description of functions. The identification allows the
functions which are contextually defined by argument, exponent,
coefficient and free term to be extracted from normal forms. A
function f may apper in formula as
a + b * [f(x)]n ,
where a is a free term, b is a coefficient, x is a set of
arguments and n is a power. Program-driven search of all
such expressions can be realized with the help of a generalized
pattern
~ eA + eB * "F'eX eN
where the program variables beginning with "e"
correspond to the letters of the above form describing the entry
of function f in an expression. The corresponding fragments of
such expression can be obtained as values of the program variables.
The generalized patterns being an innovation of Santra 3 will be
widely empoyed in the present work.
3.6. Program call of program operator OMEGAFACT
OMEGAFACT which is the function to be defined has two
arguments. The first argument is an operator. The second argument
is an object upon which the operator acts. Skipping the
stage of detailed program description of the function we only
give the function call:
<OMEGAFACT (eOP) (e0) > : eOF,
The two arguments of the function OMEGAFACT will be
represented by two terms "(eO) (eX)". The first
sentence describing occurence of new grammar structures in the
operator EQU is
|
eX |
~ "EQU'(eL)(eR) =
|
|
|
|
|
|
|
|
|
|
|
<"EQU'(<<(APPLYSER (OMEGAFACT (eO)) eL)>>)
|
|
|
|
|
|
|
|
|
|
|
(<<(APPLYSER (OMEGAFACT (eO)) eR)>>)>;
|
|
|
|
|
|
|
|
|
|
|
The generalized identification is used here for the particular
case a=0, b=1, n=1. The above sentence makes it possible to
perform the W-factorization for each separate part of the
initial identity.
3.7. Program function APPLYSER
The new function APPLYSER describes the action of the
operator OMEGAFACT on the components of the
operator EQU
|
<GT |
FMSET ("APPLYSER')(("
|
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
(eO) tX eZ = (<<(eO tX)>>) <<(APPLYSER (eO) eZ)>>;
|
|
|
|
|
|
|
|
|
|
|
tO =;
|
|
|
|
|
|
|
|
|
|
|
}; ')) |
>;
|
|
|
|
|
|
|
|
|
|
There are new variables in the description. Their names begin
with letter "t" to indicate that only terms
(expressions in brackets in our case) can serve as values of the
variables. We can not yet write
|
... = (<eO tX>) <APPLYSER (eO) eZ>;
|
|
|
|
|
|
|
|
|
|
|
|
after the first equality sign because the
t-variables can appear at the inner parentheses
level rather than at the angular bracket level. In short we may
conclude that the function APPLYSER makes possible
application of an operator to each separate term of the left and
right sides of an identity.
3.8. Construction of an W-product
Construction of an W-product is described by the next
sentence:
|
eO ~ |
eCO * "COND'(eY)((eXX)(<0>)),
|
|
|
|
|
|
|
|
|
|
eY ~ |
eCY * "F'eOA,
|
|
|
|
|
|
|
|
|
|
eX ~ |
eCX * "F'eXA =
|
|
|
|
|
|
|
|
|
|
<( |
eCO) * (eCY) * (eCX) *
|
|
|
|
|
|
|
|
|
|
"C |
OND'(<"OPER'
|
|
|
|
|
|
|
|
|
|
(<<(""F'' |
eOA)>>) (<<(""F''eXA)>>)>)
((eXX)(<0>))>) >;
|
|
|
|
|
|
|
|
|
|
|
The operator which is the operand of COND is
recognized first. The object representing hypergeometric function
with some coefficient is the next to be recognized. The resultant
expression standing affer equality sign begins with formation of
a multiplier which is the product of multipliers serving as
coefficients of COND, of the operator and of the
object to be operated upon. The complete description of the
function OMEGAFACT
is
|
< |
GTFMSET ("OMEGAFACT')(("(eO) (eX),
|
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
eX "EQU'(eL)(eR)
|
|
|
|
|
|
|
|
|
|
= |
<"EQU'(<<(APPLYSER (OMEGAFACT (eO)) eL)>>)
|
|
|
|
|
|
|
|
|
|
|
(<<(APPLYSER (OMEGAFACT (eO)) eR)>>)>;
|
|
|
|
|
|
|
|
|
|
|
eO ~ eCO * "COND'(eY)((eXX)(<0>)),
|
|
|
|
|
|
|
|
|
|
|
eY ~ eCY * "F'eOA,
|
|
|
|
|
|
|
|
|
|
|
eX ~ eCX * "F'eXA =
|
|
|
|
|
|
|
|
|
|
|
<(eCO) * (eCY) * (eCX) *
|
|
|
|
|
|
|
|
|
|
|
"COND'(<"OPER'
|
|
|
|
|
|
|
|
|
|
|
(<<(""F''eOA)>>) (<<(""F''eXA)>>)>)
((eXX)(<0>))>) >;
|
|
|
|
|
|
|
|
|
|
|
= <"OPER' (eO) (eX)>;
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
'))>;
|
|
|
|
|
|
|
|
|
|
|
An additional sentence is used in the description. It is used
when application of an operator is not recognized and the
arguments should be left in the operator OPER
without change. At the next step the W-product should be
convolved. The convolution is performed by the function
OMEGAPROD
<OMEGAPROD (eOF)> : eR1 ,
where eOF is the convolute W-product.
3.9. Description of the function OMEGAPROD
We describe the function OMEGAPROD by stages. The
first
sentence describes entry into an identity. It is similar to what
was done above. For the sake of brevity we omit it.
The next sentence is the main one. We describe each part of it
separately. First, the operator COND is extracted
from the argument of the function eA. The next
program operator to be extracted is OPER whose
arguments is the applied operator and the
operand object which also represents a hypergeometric function.
In addition, it is verified that the operator contains the
differential component with the parameter "x" (see last but
one fragment). The resultant construction is
|
|
eA ~ eCC * "COND'(eX)((eXX)(<0>)),
|
|
|
|
|
|
|
|
|
|
|
eX ~ eCO * "OPER'(eO)(eY),
|
|
|
|
|
|
|
|
|
|
|
eO ~ eCF * "F'((eUO) (eDO))(eFO),
|
|
|
|
|
|
|
|
|
|
|
eFO ~ eCFO * "d' (eXX),
|
|
|
|
|
|
|
|
|
|
|
eY ~ eCY * "F'((eUY) (eDY))(eYO),
|
|
|
|
|
|
|
|
|
|
|
Then it is verified that the argument of the object contains a
single term with the unit degree of the variable "x". To this
end the argument is expanded in powers of "x" by a system
function ZCOEFX. For our case the expansion reduces
to a single term with unit degree of "x":
<ZCOEFX (eXX) (eYO)> : ((eYY) <1>) ,
where eYY is coefficient of "x".
Further analysis clears up if the transformed expression contains
a power of "x" as coefficient of the hypergeometric function.
Again the funtion ZCOEFX is used with respect to
coefficient in the object eCY. In case of zero degree the
usual W-convolution is performed. Otherwise the multiplier
is removed from the transformed expression according to the
relation
F |
é
ê
ê
ë |
d; z |
|
ù
ú
ú
û |
xn
Y(x) |
½
½
½
½ |
|
= (d,n) zn
|
F |
é
ê
ê
ë |
d+n; z |
|
ù
ú
ú
û |
Y(x) |
½
½
½
½ |
|
(*)
|
that directly follows from (11) and
(19).
The multiplier is (d,n) and the
parameter of operator becomes d+n. These components are
represented by functions POCHCOEF and POCHPAR, respectively. Degree of the variable "x" and the set
d of parameters occuring in the initial differential
operator serve as parameters of these two functions.
In the resultant expression (following the equality sign) a
multiplier is formed. The multiplier is the product of
coefficients of operators COND and OPER
and coefficients of the differential operator and its object.
The corresponding record is
|
<ZCOEFX |
(eXX) (eCY)> : ((eYYY) eP),
|
|
|
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
|
|
|
eP : <0> |
= <(eCC) * (eCO) * (eCF) * (eCY) *
|
|
|
|
|
|
|
|
|
|
|
"F'(<PARJOIN (eUO eUY) (eDO eDY)>)
|
|
|
|
|
|
|
|
|
|
|
(<(eFO) * (eYY)>)>;
|
|
|
|
|
|
|
|
|
|
= <(eCC) |
(eCO) * (eCF) * (eCY) *
|
|
|
|
|
|
|
|
|
|
POCHC |
OEF (eP) (eUO) (eDO) * (eCFO)(eP) *
|
|
|
|
|
|
|
|
|
|
OMEGA |
PROD (<"COND' (<"OPER'
|
|
|
|
|
|
|
|
|
|
(<"F' |
(<POCHPAR (eP) (eUO) (eDO)>) (eFO)>)
|
|
|
|
|
|
|
|
|
|
(<"F' |
((eUY) (eDY)) (eYO)>)
|
|
|
|
|
|
|
|
|
|
>) |
((eXX) (<0>))>)>;
|
|
|
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
The eYY being coefficient of "x" is result of
differentiation of eYO with respect to "x". The
function PARJOIN combines the set of parameters
occuring in operator and object into a single set and provides
cancellation of equal parameters in numerator and denominator s
ets.
Following the use of (*) the function OMEGAPROD is applied recursively to the already obtained
W-product without variable "x" in coefficient at this
stage.
The functions PARJOIN, POCHCOEF and POCHPAR are described as follows:
|
|
|
|
|
|
|
|
|
|
|
|
< |
GTFMSET ("PARJOIN')(("
|
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
(e1 tX e2) (e3 tX e4) = <PARJOIN (e1 e2) (e3 e4)>;
|
|
|
|
|
|
|
|
|
|
|
e1 = e1;
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
'))>;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<GTFMSET ("POCHCOEF')(("(eP) (eU) (eD)') =
|
|
|
|
|
|
|
|
|
|
|
<POCHCOEFFORM (eP) (eU) /
POCHCOEFFORM (eP) (eD)>;
|
|
|
|
|
|
|
|
|
|
|
'))>;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<GTFMSET ("POCHCOEFFORM')(("
|
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
(eP) ((eX) eZ) =
<POCH (<0>) (eP) (eX) * <POCHCOEFFORM (eP) (eZ)>;
|
|
|
|
|
|
|
|
|
|
|
() = <1>;
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
'))>;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<GTFMSET ("POCH')(("(eN) (eP) (eX),
|
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
eN : eP = <1>;
|
|
|
|
|
|
|
|
|
|
|
= <(eX) * POCH (<(eN)+1>) (eP) (<(eX)+1>)>;
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
'))>;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<GTFMSET ("POCHPAR')(("(eP) (eU) (eD) =
(<POCHPARFORM (eP) (eU)>)
|
|
|
|
|
|
|
|
|
|
|
(<POCHPARFORM (eP) (eU)>);
|
|
|
|
|
|
|
|
|
|
|
'))>;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
< |
GTFMSET ("POCHPARFORM')(("
|
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
(eP) ((eX) eZ) =
(<(eX)+(eP)>) <POCHPARFORM (eP) (eZ)>;
|
|
|
|
|
|
|
|
|
|
|
eX =; }; ')) >;
|
|
|
|
|
|
|
|
|
|
|
3.10. Complete description of OMEGAPROD
The complete description of OMEGAPROD is
|
< |
GTFMSET ("OMEGAPROD')(("eA,
|
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
eA ~ "EQU'(eL)(eR) =
|
|
|
|
|
|
|
|
|
|
|
<"EQU'(<<(APPLYSER (OMEGAPROD) eL)>>)
|
|
|
|
|
|
|
|
|
|
|
(<<(APPLYSER (OMEGAPROD) eR)>>)>;
|
|
|
|
|
|
|
|
|
|
|
eA ~ eCC * "COND'(eX)((eXX)(<0>)),
|
|
|
|
|
|
|
|
|
|
|
eX ~ eCO * "OPER'(eO)(eY),
|
|
|
|
|
|
|
|
|
|
|
eO ~ eCF * "F'((eUO) (eDO))(eFO),
|
|
|
|
|
|
|
|
|
|
|
eFO ~ eCFO * "d' (eXX),
|
|
|
|
|
|
|
|
|
|
|
eY ~ eCY * "F'((eUY) (eDY))(eYO),
|
|
|
|
|
|
|
|
|
|
|
<ZCOEFX (eXX) (eYO)> : ((eYY) <1>),
|
|
|
|
|
|
|
|
|
|
|
<ZCOEFX (eXX) (eCY)> : ((eYYY) eP),
|
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
eP : <0> =
<(eCC) * (eCO) * (eCF) * (eCY) *
|
|
|
|
|
|
|
|
|
|
|
"F'(<PARJOIN (eUO eUY) (eDO eDY)>)
|
|
|
|
|
|
|
|
|
|
|
(<(eFO) * (eYY)>)>;
|
|
|
|
|
|
|
|
|
|
|
= <(eCC) * (eCO) * (eCF) * (eCY) *
|
|
|
|
|
|
|
|
|
|
|
POCHCOEF (eP) (eUO) (eDO) * (eCFO)(eP) *
|
|
|
|
|
|
|
|
|
|
|
OMEGAPROD (<"COND' (<"OPER'
|
|
|
|
|
|
|
|
|
|
|
(<"F' (<POCHPAR (eP) (eUO) (eDO)>) (eFO)>)
|
|
|
|
|
|
|
|
|
|
|
(<"F' ((eUY) (eDY)) (eYO)>)
|
|
|
|
|
|
|
|
|
|
|
>) ((eXX) (<0>))>)>;
|
|
|
|
|
|
|
|
|
|
|
}; }; '))>;
|
|
|
|
|
|
|
|
|
|
|
3.11. Final result
To print the expression eR1 we use the
record
<PRIEL (eR1)>.
As a result the following line is printed
|
<"E |
QU' ((<"F' (() ((<"a' + 1>))) (<"z'>)>))
|
|
|
|
|
|
|
|
|
|
|
((<"F' (() ((<"a'>))) (<"z'>)>)
|
|
|
|
|
|
|
|
|
|
|
(<(<"F' (() ((<"a + 2'>))) (<"z'>)>) / (<"a' 2 +
"a'>)>))>
|
|
|
|
|
|
|
|
|
|
|
To make the change a=b-1 we use the operator APPLYSER. To this end the components of the above identity are
given the meaning of the values of the variable eR1
on analogy with description of OMEGAFACT. The
substitution function ZSAX is chosen as an operator
variable:
|
eR |
1 ~ "EQU'(eL)(eR) =
|
|
|
|
|
|
|
|
|
|
|
<"EQU'(<<(APPLYSER (ZSAX (<"a'>) (<"b'-1>)) eL)>>)
|
|
|
|
|
|
|
|
|
|
|
(<<(APPLYSER (ZSAX (<"a'>) (<"b'-1>)) eR)>>)> : eR2 =
|
|
|
|
|
|
|
|
|
|
|
To print the expression we use the record
<PRIEL (eR2)>
As a result we obtain the final expression for recurrence
relation for Bessel-type series in terms of Santra 3
language
|
<"E |
QU' ((<"F' (() ((<"b'>))) (<"z'>)>))
|
|
|
|
|
|
|
|
|
|
|
((<"F' (() ((<"b - 1'>))) (<"z'>)>)
|
|
|
|
|
|
|
|
|
|
|
(<-(<"F' (() ((<"b + 1'>))) (<"z'>)>) / (<"b' 2
- "b'>)>))>
|
|
|
|
|
|
|
|
|
|
|
which is equivalent to the desired result
F |
é
ê
ë |
|
ù
ú
û |
=
F |
é
ê
ë |
|
ù
ú
û |
- |
|
z
F |
é
ê
ë |
|
ù
ú
û |
.
|
We have used above only a minor part of operations of the
factorization method. The possibility of program implementation
of operations of the factorization method
has been demonstrated by the examples of command protypes FACT1 (Eq. (1)), REDBIN (Eq. (22)), CANC (Eq. (25)),
EQUIV1 (Eq. (11)) and DIFHYP (Eq. (19)).
As other operations do not surpass by far the complicacy of the
above operations this indirectly confirmes the feasibility of
program implementation of the operator factorization method by
program tools of Santra 3 system.
References
- [prep1]
-
A.W. Niukkanen, I.B. Shchenkov, G.B. Efimov. Operator
factorization technique of formula derivation in the theory of
simple and multiple hypergeometric functions of one and several
variables. Keldysh Inst. of Appl. Math. RAS, Preprint No 81,
2003, (27 p.)
- [1]
-
I.B. Shchenkov. System of symbolic analytical transformations
SANTRA-2. Description of formal part of command language.
Keldysh Inst. of Appl. Math. Academy of Science USSR, Preprint
No 1, 1989 (32p.).
- [2]
-
I.B. Shchenkov. System of symbolic analytical transformations
SANTRA-2. Description of dynamical functions.
Keldysh Inst. of Appl. Math. Academy of Science USSR, Preprint
No 7, 1989 (24p.).
- [3]
-
I.B. Shchenkov. System of symbolic analytical transformations
SANTRA-2. Description of functions supporting non-algebraic
operations. Keldysh Inst. of Appl. Math. Academy of Science USSR,
Preprint No 21, 1989 (31p.).
- [4]
-
I.B. Shchenkov. System of symbolic analytical transformations
SANTRA-2. Operations over expression belonging to the main
classes. Keldysh Inst. of Appl. Math. Academy of Science USSR,
Preprint No 14, 1991 (38p.).
- [5]
-
I.B. Shchenkov. System of symbolic analytical transformations
SANTRA-2. Operations over matrices. Keldysh Inst. of Appl. Math.
Academy of Science USSR, Preprint No 15, 1991 (29p.).
- [6]
-
I.B. Shchenkov. System of symbolic analytical transformations
SANTRA-2. Program design and program checkout tools. Keldysh
Inst. of Appl. Math. Academy of Science USSR, Preprint No 1,
1993 (28p.).
- [7]
-
A.P.Budnik, E.V.Gai, N.S. Rabotnov, V.F. Turchin, S.V. Popov,
I.B. Shchenkov. Machine performance of analytical transformations
in mathematical physics with the help of REFAL language. Theses.
Symposium on processing of symbolic information. Computer Center
GSSR, Tbilisi, 1970.
- [8]
-
I.B. Shchenkov. Program
in mathematical physics with the help of REFAL language. Theses.
Symposium on processing of symbolic information. Computer Center
GSSR, Tbilisi, 1970.
- [9]
-
A.P.Budnik, E.V.Gai, N.S. Rabotnov, N.S.Klimov, V.F. Turchin,
I.B. Shchenkov. Basis wave functions and operator matrices
in the nuclei model. Yadernaya fizika (in Russian), V. 14,
No 2, pp.304-314, 1971.
- [10]
-
V.N. Vinogradov, F.V. Gai, S.V. Popov, N.C. Rabotnov,
I.B. Shchenkov. Construction of physical bases of O(5) and
SV(3) groups with automated execution of symbolic
transformations. Yadernaya fizika (in Russian), V. 16,
No 6, pp.1178-1187, 1972.
- [11]
-
And. V. Klimov, S.A. Romanenko. Programming system Refal-2 for
Unified Series of Electronoc Compating Machines. Description of
command language. IAM, Academy of Science USSR, Moscow: 1987.
- [12]
-
And. V. Klimov, S.A. Romanenko. Programming system Refal-2 for
Unified Series of Electronoc Compating Machines. Description of
functions library. IAM, Academy of Science USSR, Preprint No 200,
1996.
- [13]
-
S.A. Romanenko. Implementation of Refal-2. IAM, Academy of
Science USSR, Moscow: 1987.
- [arklimov]
-
http://www.refal.net/~arklimov/refal6/
This document was translated from LATEX by
HEVEA.
|