Integration of the signum, piecewise and related functions
D.J. Jefirey1, G. Labahn2, M. v. Mohrenschildt3 and A.D. Rich4 1Department of Applied Mathematics, The University of Western Ontario, London, Ontario, Canada N6A 5B7; [email protected] 2Department of Computer Science, University of Waterloo, Waterloo, Ontario, Canada N2L 3G1; [email protected] 3Department of Computer Engineering, McMaster University, Hamilton, Canada;[email protected] 4Soft Warehouse Inc., 3660 Waialae Avenue, Suite 304 Honolulu, Hawaii 96816 USA
Abstract Maple V and Mathematica evaluate this integral as
When a computer algebra system has an assump- 1 1 3x2 1 + dx = (x3 + x) 1 + , (1) tion facility, it is possible to distinguish between x2 x2 integration problems with respect to a real vari- Z r r able, and those with respect to a complex vari- because they assume x C. In contrast, Derive assumes able. Here, a class of integration problems is de- x R and returns ∈ fined in which the integrand consists of compo- ∈ sitions of continuous functions and signum func- 1 3x2 1 + dx = [(x2 + 1)3/2 1] sgn x . (2) tions. and integration is with respect to a real x2 − variable. Algorithms are given for evaluating Z r such integrals. Maple can also obtain this answer, as will be shown later. Both answers are correct, and the difference lies in the as- 1 Introduction sumptions. Notice in particular that the integrand in equa- tion (1) is continuous on R, but the right side of (2) is In recent years, ‘assume’ or ‘declare’ facilities have been im- discontinuous at x = 0. plemented in most of the available computer algebra systems The example just given can be treated as a member of (CAS). As well, such facilities have been gaining wider ac- the class of integral problems studied here. In this paper, ceptance within the user community. The presence of these we consider some classes of integration problems obtained facilities has altered the way CAS behave, and many estab- through the composition of continuous functions and signum lished areas of symbolic computation need to be reconsid- functions, or equivalents and discuss the implementations in ered. The topic of this paper is an example of the impact on both Derive and in Maple V. one traditional field of computer algebra, namely, symbolic The interest in this class of problems arises because func- integration. tions that have piecewise definitions are widely used in engi- Because the early versions of many present-day CAS neering, physics, and other areas. Such functions are often could not record the domain of a variable, they assumed constructed explicitly by users of CAS to represent discon- that the variable was complex. In particular the problem tinuous processes. They can also appear as the result of f(x) dx was usually interpreted as requiring the evalua- algebraic simplifications performed by a CAS on an inte- grand, even if that integrand contained no signum functions tion of a complex integral, valid for x C. This immedi- atelyR ruled out the possibility of formulating∈ problems such explicitly when first presented. An important feature of the as x dx, because the absolute value function is not dif- computations discussed here is the fact that they ensure that ferentiable| | in the complex plane. With domain information the expressions obtained are valid on domains of maximum available,R it is possible to specify an integration problem extent. We remark that functions equivalent to signum are sup- ported by all the major CAS. However, the support takes f(x) dx for x R , ∈ various forms and the definitions used by the different sys- Z tems are not completely equivalent. Examples include the and one consequence of this is the possibility that the above SIGN function in Derive, the signum and piecewise func- problem may have a different answer from the problem tions in Maple V and the UnitStep in Mathematica.
f(x) dx for x C . ∈ 2 Definitions of functions Z For example, consider the integral The signum function is defined differently in each of the ma- jor CAS. This is not really surprising given that different ar- 1 eas of mathematics also use different definitions of a signum 3x2 1 + dx . x2 function. However, these disagreements do not affect the Z r integration question, and a discussion of variations would 3 Definition of integration only distract attention from the main problem. Therefore one particular definition, and a specific unambiguous nota- The example in the introduction showed that different defi- tion, is used here, so that the issue of variations in defini- nitions of integration are possible. Therefore it is necessary tion does not intrude on this discussion of integration. A to define the integration problem and verify the existence of signum function Snn : R R that is 1 for all non-negative a solution. real numbers, briefly an n-n→ signum, is defined by Definition 1. Let f : [a, b] R be a function that is con- → b b b tinuous except at the n points D = x1 , x2 , . . . , xn where 1 , for x 0, b { } S (x) = (3) xi [a, b]. The function f is then piecewise continuous on nn 1 , for x ≥< 0. ∈ b ½ − [a, b], and the points xi are the break points of f. 2
Notice that Snn(x) is antisymmetric only on R 0 . Some \{ } Definition 2. If the left and right limits of a piecewise comments on the implementation of this definition will be continuous function f separately exist at a break point xb, made below. then xb is called a bounded break point of f, otherwise it is The functions absolute value and Heaviside step are also called an unbounded breakpoint. 2 defined in terms of Snn by
1 1 Remark 1. A bounded break point is also called a jump x = xSnn(x) and H(x) = + Snn(x) . (4) | | 2 2 discontinuity. There is a possibility that the terms bounded The characteristic function χ of a closed interval [a, b] R and unbounded will be taken to refer to number of break- ⊂ is defined also in terms of Snn: points rather than the behaviour of the function at a par- ticular breakpoint; in the former case it is the set D that is 1 1 χ(x, [a, b]) = Snn(x a) + Snn(b x) . (5) bounded or not, rather than the point itself. 2 2 − 2 − b Notice that this definition implies that a point function, non- If xi is a bounded breakpoint of f, then we denote the b b b zero only at a point a, can be defined as χ(x, [a, a]). It is left and right limits of f at xi by f(xi ) and f(xi +). In also useful to define the characteristic function of an open the case of bounded breakpoints a continuous− integral always interval ]a, b[. exists.
χ(x, ]a, b[) = χ(x, [a, b]) χ(x, [a, a]) χ(x, [b, b]) . (6) − − Theorem 1. Let f : [a, b] R be a piecewise-continuous For semi-infinite intervals, the χ function reverts to one function with a set D of bounded→ breakpoints. There exists equivalent to Snn. a function g, called an integral of f on [a, b], written An alternative to signum functions has been introduced by Maple. Maple V release 4 defines the function piecewise f(x) dx = g(x) , (11) by Z f1 , c1 true, with the properties that g is continuous on [a, b] and g is 0 . . . differentiable on [a, b] D, where its derivative is g = f. 2 piecewise(c1, f1, . . . , cn, fn, f) = (7) \ fn , cn true, f, otherwise, Remark 2. If g1 and g2 are integrals of f on [a, b], then g1 = g2 +K for some constant K. For on any open subinter- where the ci are Boolean expressionsof the Maple type re- b b val defined by successive breakpoints, namely ]xi , xi+1[, the lation and the fi are algebraic expressions. The relations ci functions differ by a constant, and one can write g1 g2 = are evaluated in order from left to right, until one is found − Ki. Since g1 and g2 are separately continuous at each break- to be true. In terms of this function, Snn is point,
Snn(x) = piecewise(x < 0, 1, 1) . (8) b b − Ki = g1(xi+1 ) g2(xi+1 ) − − − b b Since piecewise is more general than signum, the converse = g1(x +) g2(x +) = Ki+1 . (12) i+1 − i+1 is more lengthy. Let condition ci be true on a union of disjoint intervals Ii = Iij , where each Iij R, and let 2 j ⊂ Ji = Ii kderivatives or primitives of f, but are not called integrals, X the last term being reserved for functions continuous on Maple V can make a similar conversion of a piecewise func- [a, b]. 2 tion to a sum of Heaviside functions
p Theorem 2. Let f : [a, b] R be a piecewise continuous function with a set D of unb→ounded breakpoints. For each f(x) = f0(x) + fi(x)H(x ai). (10) − closed subinterval I = [xb , xb], let the quantity i=1 i i−1 i X f(x)dx ZIi exist in the sense of improper integrals. There exists a func- We consider first the integration of a function having one tion g, called an integral of f on [a, b], which is continuous breakpoint and then generalize the result to many break- 0 on [a, b], and for which g = f on [a, b] D. points. b\ b Proof: Let gi be an integral of f on ]xi−1, xi [. By definition, b gˆi = gi gi(xi−1+) exists. The function Theorem 4: Let x [a, b] and s = 1, and let f(x, s) be a − function that is contin∈ uous with resp±ect to x on [a, b]. Let b b b g(x, s) be an integral of f with respect to x on [a, b]. Then g(x) = gˆi(x)χ(x, [x − , x [) + gˆj (x ) i 1 i j − i à j x , Snn(x x ) = 1. Therefore ∈ − for x ]xb, b], Definition 3: Given a function f : R R that is integrable ∈ → on domains Ci R, a function g is an integral on the domain b b ⊂ ∂x[g(x, Snn(x x )) JSnn(x x )] of maximum extent if g is continuous everywhere on Ci − − − = ∂x[g(x, 1) J] = f(x, 1) and differentiable almost everywhere on Ci, and moreover − 0 S b g = f almost everywhere on Ci. 2 = f(x, Snn(x x )) . S − S b b Therefore the modified problem definition requires that On [a, x [, subject to the change Snn(x x ) = 1, the − − in the absence of a specified [a, b], the integral should be same proof applies. At the point x = xb, the right-hand valid on the domain of maximum extent. If the function side of (14) must be continuous. The right limit of G(x) at f is integrable only on the open subintervals Ii =]xi−1, xi[, b 0 x is then all one has to find are the functions gi such that gi = f b b on Ii. lim [g(x, Snn(x x ) JSnn(x x )] x→xb+ − − − = lim [g(x, 1) J] 4 Integration rules for signum b x→x + − b For reasons of efficiency, and because different CAS offer = g(x +, 1) J . − different syntax to users, it is necessary to develop several related algorithms for integration. We begin with integrands Since g(x, s) is the integral of f(x, s), g(xb+, 1) = g(xb, 1), expressed using signum. and the limit is
lim G(x) = 1 g(xb, 1) + 1 g(xb, 1) . b 2 2 Lemma 3. Let si i = 1..p , p N, be a set of constants, x→x + − { | } ∈ each taking one of the values 1. Let f(x, si i = 1..p ) ± { | } be a function that is continuous for fixed si on [a, b]. Let A similar calculation shows the left limit has the same value. { } b Snn(αix + βi) i = 1..p be a set of signum functions with Finally, substituting x = x into the right-hand side of (14) { | } i, αi = 0, then gives ∀ 6 b b b G(x ) = g(x , Snn(0)) JSnn(0) = g(x , 1) J f(x, Snn(αix + βi) i = 1..p ) dx = − − { | } = 1 g(xb, 1) + 1 g(xb, 1) . Z 2 2 − b fˆ(x, Snn(x x ) i = 1..p ) dx , (13) { − i | } Therefore, G is continuous as required. Notice that for many Z other signum functions, in particular for the one defining where fˆ(x, si i = 1..p ) = f(x, Snn(αi)si i = 1..p ) and sgn(0) = 0, the theorem would not be true. 2 b { | } { | } x = βi/αi. i − Proof. For αi > 0, the function Snn(αix + βi) and the We now generalize the theorem to integrands containing b a finite number of signum functions. function Snn(αi)Snn(x xi ) are identical. For αi < 0, the − b two functions differ only at x = xi , and functions that are bounded and equal almost everywhere have the same inte- b gral. The redefinition of f is trivial. Clearly, the points xi are breakpoints of fˆ. 2 Theorem 5: Let f(x, si i = 1..p ) be a function that is 5 Integration of signum { | } continuous with respect to x on [a, b], and let xb i = 1..p { i | } be a set of distinct points with xb > xb > . . . > xb. Let The above theorems can be summarized in the following 1 2 p algorithm. Given an integral with respect to a real vari- g(x, si i = 1..p ) be an integral of f on [a, b], then { | } able containing signum or Heaviside functions, the algorithm
b used by Derive roughly proceeds as follows. f(x, Snn(x x ) i = 1..p )dx − i | } Z 1. Use the definitions (4) to convert Heaviside to signum b = G(x) = g(x, Snn(x xi ) i = 1..p ) functions. { p − | } b 2. Check each signum has a linear argument, and replace JiSnn(x xi ) , (15) b − − each sgn(αix + βi) with Snn(αi)Snn(x xi ). If any i=1 − X signums contain other arguments, the algorithm fails. where 3. Order the breakpoints so that the integrand is in the ˆ b 1 b < > 1 b < > form f(x, Snn(x xk) k = 1..p ) where p is an inte- Jj = 2 g(xj , Sj , 1, Sj ) 2 g(xj , Sj , 1, Sj ) , {b − | } − − ger, the xk are the ordered breakpoints of the inte- < b b { } b b b Sj = sgn(xj xi ) = 1 i < j , grand, with x < x < . . . < x . Further the function { − − | } 1 2 p > b b ˆ Sj = sgn(xj xi ) = 1 i > j . f(x, sk k = 1..p ), with the sk being symbolic con- { − | } stants,{ con| tains no} signum function.{ } Proof. Let the interval [a, b] be partitioned into subintervals b b 4. Pass the function fˆ(x, sk ) to the system integrator. [ai, ai+1], where a0 = a, xi < ai < xi+1 and ap+1 = b. By { } Assume it returns a function g(x, sk ), else FAIL. the previous theorem, (15) is an integral on each [ai, ai+1], { } and by construction and hypothesis it is continuous on each b b 5. For k from 1 to p, compute [xi , xi+1], therefore it is continuous and an integral on [a, b]. 2 1 b < > 1 b < > Jk = G(x , S , 1, S ) G(x , S , 1, S ) 2 k { } − 2 k { − } In the case of integration on an unspecified domain we where S< is a set of k 1 entries equal to 1 and S> is require. a set of p k entries −1. − − 6. Return the expression Theorem 6. If f(x, si i = 1..p ) is integrable with respect { | } p to x, for si fixed and equal to 1, on domains Ri R, b b { } ± ⊂ G(x, Snn(x x ) k = 1..p ) JkSnn(x x ) . and g(x, si ) is the integral of f on the domain of maximum { − k | } − − k { } i=1 extent, i.e. Ri, then G(x) defined in (15) is also an integral X b on the domain of maximum extent, provided Ji = 0 if x S i 6∈ 2 Ri. 2
S The next theorem applies to the case in which an inte- grable singularity coincides with the breakpoint of a signum Example 1. Consider the example given in the introduc- function. tion. This integral is evaluated as follows.
2 2 2 Theorem 7. Let x [a, b] and s = 1, and let f(x, s) be a 3x 1 + 1/x dx = 3x sgn(x) x + 1 dx . ∈ ± function such that f is continuous with respect to x on [a, b] Z p Z p b except at xb [a, b]. Let f(x, s) be integrable at x . Then In the integrand, we have left the traditional signum nota- ∈ tion. Now, since b b f(x, Snn(x x ))dx = G(x) = g(x, Snn(x x )) , (16) − − 3xs x2 + 1 dx = s(x2 + 1)3/2 , Z Z where g(x, s) is an integral of f(x, s) on [a, b] subject to p we find J = 2 and hence obtain g(xb, s) = 0. x Proof. Let ga(x, s) = f(y, s)dy. By theorem 3, ga is 2 2 2 3/2 a 3x 1 + 1/x dx = Snn(x) (1 + x ) 1 . b − continuous on [a, b]. Define g(x, s) = ga(x, s) ga(x , s). Z b R − p h i For x < x , Continuity at the origin has already been noted. 2 b b ∂xg(x, Snn(x x )) = ∂xg(x, 1) = f(x, Snn(x x )) , − − − Example 2. In this example we illustrate the need for definition (3). For the integral of (x + 2)1+sgn x, f(x, s) = and likewise for x > xb. At xb, (x + 2)1+s and g = (x + 2)2+s/(2 + s) and J = 2/3. Thus b lim G(x) = lim = G(x ) = 0 2+Snn(x) b b (x + 2) S (x) x→x − x→x + (x + 2)1+sgn xdx = nn (17) 2 + Snn(x) − 3 2 Z At x = 0, this evaluates to the correct 5/3 using defini- tion (1). In contrast, the other common definition in which sgn(0) = 0 would yield the value 2 and hence create a re- 6 Integration of Piecewise Functions in Maple movable discontinuity at x = 0. 2 In this section we discuss the algorithm used in Maple for Example 3. The algorithm relies on the underlying inte- integration of piecewise functions. We also show how this al- gration system to return a continuous expression for g(x, s), gorithm can be extended to cover absolute value and signum in the notation of the theorems. For example, the result functions in the obvious way. In this case all functions are converted to Heaviside step functions which are then in turn 3 sgn(x π) sin x simplified using the normal form algorithm of v. Mohren- − dx = x π + 2 arctan Snn(x π) 5 4 cos x − 2 cos x − schildt [3]. The integration is then performed on these step Z − µ − ¶ functions with care taken to construct the functions in order cannot be obtained if the system computes the integration: to remain continuous over as large a region as possible. 3s/(5 4 cos x)dx = 2s arctan(3 tan(x/2)). 2 Let f be a piecewise function of the form − R f(x) = piecewise(c1, f1(x), . . . , cp, fp(x), fp+1(x)) (19) Example 4. Note that there is no difficulty if the integrand is singular at the break point of a signum. For example, where the ci are boolean combinations of linear ordering relations in one variable. Thus ci = x a x < b or sgn x dx 3 2/3 ≥ ∧ b b = x S (x) , ci = x a and the functions fi are bounded in [xi−1, xi ]. x1/3 2 nn ¬ ≤ Z To compute the integral of this piecewise functions we first convert to its Heaviside representation where the fractional powers are interpreted as real-valued. 2 p b f(x) = h0(x) + hi(x)H(x x ) (20) − i Example 5. i=1 In this example we use Heaviside functions X set in the context of a simple differential equation, even using the rules T defined by : though the present algorithm applies only to integration. From engineering beam theory, the bending moment M(x) b b b T (x > x ) H(x x ) (also same for T (x x )) in a beam that extends from x = 0 to x = l and supports i → − i ≥ i b b b point loads Pa and Pb at x = a and x = b is given by the T (x < xi ) H( x + xi ) (also same for T (x xi )) equation → − ≤ T ( ci) 1 T (c1) ¬ → − K, for 0 x a ; T (ci cj ) T (ci)T (cj ) dM ≤ ≤ ∧ → = K + Pa, for a x b ; T (ci cj ) H(T (ci) + T (cj )) dx ≤ ≤ ∨ → ( K + Pa + Pb, for b x l . ≤ ≤ and Here K is a constant to be determined from the boundary conditions, which are M(0) = M(l) = 0 for the case of free T (piecewise(c1, f1(x), c2, , fp+1(x))) fp+1(x) ends. Engineers commonly solve equations like this using · · · → +T (c1)(f1(x) fp+1(x))+T (c2)(f2(x) f1(x) fp+1(x))+ a specialised system of notation called Macaulay brackets − − − · · · [2], which essentially develop a subset of the results above. Using Instead, the equation is written H(x a)H(x b) H(x max(a, b)) dM − − → − = K + PaH(x a) + PbH(x b) , (18) H( x + a) 1 H(x a) dx − − − → − − H(fH(x a) + g) H(x a)H(f + g) − → − and integrated. The integral of the Heaviside function is +(1 H(x a))H(g) − − 1 1 H(x a) dx = ( + Snn(x a)) dx = (x a)H(x a) where in the last equation f = 1 and g is a linear combi- − 2 2 − − − ± Z Z nation of H, we end up in form (20) after a finite number of reductions (c.f. v. Mohrenschildt [3]). Note, that by using and then integrating gives the identity H(x a) = 1 H( x + a) we can change the value of the function− in a finite− −number of points. However M = Kx + M0 + Pa(x a)H(x a) + Pb(x b)H(x b) . − − − − this does not alter the value of the integral. For example piecewise(x > a x b, f(x)), assuming a < b, converts to Since M(0) = 0, we have M0 = 0, and M(l) = 0 gives ∧ ≤ f(x)H(x a)H( x + b) K = [Pa(l a) + Pb(l b)]/l − − − − − which in turn reduces to The result for M can be integrated further to obtain the displacement of the beam. 2 f(x)H(x a) f(x)H(x b). − − −
Lemma 9. Let f : R R be specified by → p b f(x) = f0(x) + fi(x)H(x x ). (21) − i i=1 X Then an integral of this function is given by 3 x √x2 + 1 x 0 3−x √x2 + 1 0 <≤ x ∞ p ½ b b g(x) = f0(x)dx + (gˆi(x) gˆi(xi ))H(x xi ) (22) > int(f,x) − − Z−∞ i=1 X 3/2 x2 + 1 x 0 where x − 3/2 ≤ ( x2 + 1 2 0 < x gˆi(x) = fi(x)dx. ¡ ¢ − xb Z k The last result differs¡ from¢equation (2) by the constant 1. 0 0 − Proof. Clearly g = f, since for each i, gˆi(x) = fi(x). Also g(x) is continuous since g(x) is a sum of continuous functions Example 8. The assume system works together with the b b (gˆi(x) gˆi(x ))H(x x ). 2 piecewise function. − i − i > assume(a f := piecewise(x=b,1): tions and integrated the result can be converted back to a > int(f,x); piecewise function. Indeed an expression 2 n 1/2 x x a 2 2 b −x 3/2 a x ≤ b f(x) = f0(x) + fi(x)H(x x ) − i ( 3−/2 a2 + b2 + x b b <≤ x i=1 − − X 2 is converted back to a piecewise representation by
b f0(x) x x1 ≤ −b Example 9. The conditions of a piecewise function do not f0(x) + f1(x) x x2 . . . . . .≤. have to be linear. Maple can linearized using simplify (which in fact is the normal form conversion discussed previously). f0(x) + + fp(x) · · · The simplify below shows the linear from. Similar conversions back are also possible in the case of signum functions and absolute value functions. > f:= piecewise( x^2<1,x^4,x^2): > f1:= piecewise( x<2, f, x + 2);
Example 7. Suppose 4 2 x x < 1 x < 2 f1 := x2 otherwise cos(x) x < 0 ( xn+ 2 otherwise sin(x) x < π f(x) = . x2 x < 6 > f2:= simplify(f1); ln(x) otherwise x2 x 1 4 ≤ − Then we convert to Heaviside, integrate and convert back: x x 1 x2 x ≤ 2 2 ≤ f(x) = (sin(x) cos(x)) H(x) + x sin(x) H(x π) x + 2 2 < x − − − 2 + ln(x) x H(x 6) +¡ cos(x) ¢ > int(f1,x); − − 3 ¡ ¢ 1/3 x x 1 5 ≤ − x3 π3 1/5 x 2/15 x 1 f(x)dx = (1 sin(x) cos(x)) H(x) + 4 +−1/3 x3 x ≤ 2 − − 3 − 3 − 15 ≤ Z µ 18 + 1/2 x2 + 2 x 2 < x + cos(x) + 1) H(x π) + (x ln(x) x − 5 − − We remark that the simplification is done automatically in 6 ln(6) 1/3 x3 + 78 H(x 6) + sin(x) − − − the first step of the integration algorithm during the conver- which converts to piecewise functions via¢ sion to Heaviside functions. 2
sin(x) x 0 ≤ 1 cos(x) x π Example 10. The function abs(2 abs(x)) can be inte- f(x)dx = 2 +− 1/3 x3 1/3 π3 x ≤ 6 − 3 grated in two ways in Maple. The first uses the standard Z − π ≤ 80 + x ln(x) x 6 ln(6) 6 < x integrator − − − 3 2 int(abs(2-abs(x)),x); 2 x x ( 4 + x ) The example in the introduction can be handled in Maple 1/2 | − | || − | | 2 + x V release 4 as follows. − | | leaving a result with discontinuities at 2 and 2. By convert- > assume(x,real): ing first to piecewise functions we get−a continuous integral > f:= simplify( 3*x^2*sqrt(1+1/x^2) ) ; of the function. 3*x*signum(x)*(x^2+1)^(1/2) > f:= convert(f,piecewise); > f := convert(abs(2-abs(x)),piecewise); 2 x x 2 −2 +−x x ≤ 0− f := 2 x x ≤ 2 x − 2 2 <≤ x − > g := int(f,x); 2 x 1/2 x2 x 2 2−x +−4 + 1/2 x2 x ≤ 0− g := 2 x + 4 1/2 x2 x ≤ 2 2 x + −8 + 1/2 x2 2 <≤ x − > convert( g, abs ); x x x x + ( + 1) x + 2 + ( 1) x 2 2 x + 4 − 2 | | 2 | | 2 − | − | − Some further applications can be found in [4]. 2
7 Conclusions
The existing implementations in Derive and Maple are not completely reflected in this presentation. For example, the definition Snn(x) is not used by Derive. In Derive, Example 1 is evaluated at x = 0 by taking a limit. The signum function in Maple can be modified to make it act like Snn(x) by setting an environment variable. Although similar facilities may be present in other sys- tems, we do not have access to them. The correct integration of piecewise-continuous functions is not solely a CAS issue. The average user of a CAS has re- ceived little instruction from elementary mathematics books on working with functions as simple as x — indeed no table of integrals contains an entry for this function| | — and with- out that background users might be slow to accept them. In addition, the integration of piecewise functions requires users to understand the difference between integration with respect to a complex variable and with respect to a real vari- able. There has already been a significant impact by CAS on the practice and teaching of mathematics, and piecewise- continuous functions could be another area in which CAS will lead the way.
References
[1] Jeffrey, D. J., “Integration to obtain expressions valid on domains of maximum extent”, Proc. of ISSAC ’93 M. Bronstein ed., (1993) pp 34-41. [2] Macaulay, W.H., “Note on the deflection of beams”, Messenger of Mathematics, (1919) pp 129-130. [3] Mohrenschildt, M. v., Symbolic Solutions of Discon- tinuous Differential Equations, Ph.D Thesis, ETH Zurich¨ (1994) [4] Mohrenschildt, M. v., A Normal Form for Function Rings of Piecewise Functions, Tech Report CS-96-14, Univ. of Waterloo (1996)