{VERSION 4 0 "IBM INTEL NT" "4.0" } {USTYLETAB {CSTYLE "Maple Input" -1 0 "Courier" 0 1 255 0 0 1 0 1 0 0 1 0 0 0 0 1 }{CSTYLE "2D Math" -1 2 "Times" 0 1 0 0 0 0 0 0 2 0 0 0 0 0 0 1 }{CSTYLE "Hyperlink" -1 17 "" 0 1 0 128 128 1 2 0 1 0 0 0 0 0 0 1 }{CSTYLE "2D Output" 2 20 "" 0 1 0 0 255 1 0 0 0 0 0 0 0 0 0 1 } {CSTYLE "" 0 21 "" 0 1 0 0 0 1 0 0 0 0 2 0 0 0 0 1 }{CSTYLE "Help Head ing" -1 26 "" 1 14 0 0 0 0 0 1 0 0 0 0 0 0 0 1 }{CSTYLE "" -1 256 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{PSTYLE "Normal" -1 0 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Heading 1" -1 3 1 {CSTYLE "" -1 -1 "Times" 1 18 0 0 0 1 2 1 2 2 2 2 1 1 1 1 }1 1 0 0 8 4 1 0 1 0 2 2 0 1 }{PSTYLE "Maple Out put" 0 11 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }3 3 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }} {SECT 0 {SECT 0 {PARA 0 "" 0 "" {TEXT 26 8 "Bug fix:" }{TEXT -1 16 " P roblems with D" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 16 "When a function " }{MPLTEXT 0 21 1 "f" }{TEXT -1 49 " is \+ defined using a second user-defined function " }{MPLTEXT 0 21 1 "g" } {TEXT -1 2 ", " }{MPLTEXT 0 21 4 "D(f)" }{TEXT -1 69 " doesn't work: i t returns unevaluated. It does work if the function " }{MPLTEXT 0 21 1 "g" }{TEXT -1 14 " is undefined." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }} {PARA 0 "" 0 "" {TEXT -1 18 "Here the function " }{MPLTEXT 0 21 1 "f" }{TEXT -1 41 " is defined using the undefined function " }{MPLTEXT 0 21 1 "g" }{TEXT -1 1 "." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "f := x -> x + g(x); g:='g': \nD(f);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#> %\"fGR6#%\"xG6\"6$%)operatorG%&arrowGF(,&9$\"\"\"-%\"gG6#F-F.F(F(F(" } }{PARA 11 "" 1 "" {XPPMATH 20 "6#R6#%\"xG6\"6$%)operatorG%&arrowGF&,& \"\"\"F+--%\"DG6#%\"gG6#9$F+F&F&F&" }}}{PARA 0 "" 0 "" {TEXT -1 25 "Bu t now here it is after " }{MPLTEXT 0 21 1 "g" }{TEXT -1 18 " has been \+ defined." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "g:= x -> x^2; D( f);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"gGR6#%\"xG6\"6$%)operatorG% &arrowGF(*$)9$\"\"#\"\"\"F(F(F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-% \"DG6#%\"fG" }}}{PARA 0 "" 0 "" {TEXT -1 44 " What Maple looks for is a procedure named " }{MPLTEXT 0 21 8 "`diff/g`" }{TEXT -1 38 " that p erforms the differentiation of " }{MPLTEXT 0 21 1 "g" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 12 "The com mand " }{MPLTEXT 0 21 11 "makediff(g)" }{TEXT -1 24 " produces the pro cedure " }{MPLTEXT 0 21 8 "`diff/g`" }{TEXT -1 11 ", allowing " } {MPLTEXT 0 21 4 "D(f)" }{TEXT -1 24 " to work for procedures " } {MPLTEXT 0 21 1 "f" }{TEXT -1 15 " defined using " }{MPLTEXT 0 21 1 "g " }{TEXT -1 2 ". " }}{PARA 0 "" 0 "" {TEXT -1 12 "The command " } {MPLTEXT 0 21 7 "fixD(f)" }{TEXT -1 9 " applies " }{MPLTEXT 0 21 8 "ma kediff" }{TEXT -1 46 " to all user-defined procedures referenced in " }{MPLTEXT 0 21 1 "f" }{TEXT -1 16 ", thus allowing " }{MPLTEXT 0 21 4 "D(f)" }{TEXT -1 9 " to work." }}{PARA 0 "" 0 "" {TEXT -1 80 "This wor ks only for global procedures, not local procedures or module exports. " }}{PARA 0 "" 0 "" {TEXT -1 29 "This function is part of the " } {TEXT 256 23 "Maple Advisor Database." }}{SECT 0 {PARA 3 "" 0 "" {TEXT 26 9 "Examples:" }}{PARA 0 "" 0 "" {TEXT -1 9 "Defining " } {MPLTEXT 0 21 1 "f" }{TEXT -1 24 " using defined function " }{MPLTEXT 0 21 1 "g" }{TEXT -1 1 ":" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "f:= x -> x*g(x^2);\ng:= x -> 1 + x^2;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"fGR6#%\"xG6\"6$%)operatorG%&arrowGF(*&9$\"\"\"-%\"gG6#*$)F- \"\"#F.F.F(F(F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"gGR6#%\"xG6\"6$ %)operatorG%&arrowGF(,&\"\"\"F-*$)9$\"\"#F-F-F(F(F(" }}}{PARA 0 "" 0 " " {MPLTEXT 0 21 4 "D(f)" }{TEXT -1 15 " does not work:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 5 "D(f);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%\"DG6#%\"fG" }}}{PARA 0 "" 0 "" {TEXT -1 6 "Using " }{MPLTEXT 0 21 11 "makediff(g)" }{TEXT -1 19 " to make this work:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "makediff(g); D(f);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#R6#%\"xG6\"6$%)operatorG%&arrowGF&,&-%\"gG6#*$)9$ \"\"#\"\"\"F2*&\"\"%F2)F0F4F2F2F&F&F&" }}}{PARA 0 "" 0 "" {TEXT -1 17 "Another function " }{MPLTEXT 0 21 1 "h" }{TEXT -1 20 " defined using \+ both " }{MPLTEXT 0 21 1 "f" }{TEXT -1 5 " and " }{MPLTEXT 0 21 1 "g" } {TEXT -1 1 "." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 34 "h:= (x,y) - > f(x) + g(y); D[1](h);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"hGR6$% \"xG%\"yG6\"6$%)operatorG%&arrowGF),&-%\"fG6#9$\"\"\"-%\"gG6#9%F2F)F)F )" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-&%\"DG6#\"\"\"6#%\"hG" }}}{PARA 0 "" 0 "" {TEXT -1 6 "Using " }{MPLTEXT 0 21 7 "fixD(h)" }{TEXT -1 9 " to make " }{MPLTEXT 0 21 7 "D[1](h)" }{TEXT -1 6 " work:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "fixD(h); D[1](h);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#R6$%\"xG%\"yG6\"6$%)operatorG%&arrowGF',&\"\"\"F,*& \"\"&F,)9$\"\"%F,F,F'F'F'" }}}}{SECT 0 {PARA 3 "" 0 "" {TEXT 26 9 "See also:" }}{PARA 0 "" 0 "" {HYPERLNK 17 "D" 2 "D" "" }{TEXT -1 3 ", " }{TEXT -1 0 "" }{HYPERLNK 17 "diff" 2 "diff" "" }{TEXT -1 2 ", " } {HYPERLNK 17 "fixD" 2 "fixD" "" }{TEXT -1 2 ", " }{HYPERLNK 17 "makedi ff" 2 "makediff" "" }}}{SECT 1 {PARA 0 "" 0 "" {TEXT 26 24 "Maple Advi sor Database " }{TEXT -1 15 "R. Israel, 2001" }}}{PARA 3 "" 0 "" {TEXT -1 0 "" }}{PARA 3 "" 0 "" {TEXT -1 0 "" }}}{MARK "15 1 7" 0 } {VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 0 1 2 33 1 1 }