{ "cells" : [ { "cell_origin" : "client", "cell_type" : "latex", "cells" : [ { "cell_origin" : "client", "cell_type" : "latex_view", "source" : "\\algorithm{product_rule}{Apply the Leibnitz rule to a derivative of a product}\n\nApply the product rule or ``Leibnitz\n identity'' to an object which has the \\prop{Derivative} property, i.e." } ], "hidden" : true, "source" : "\\algorithm{product_rule}{Apply the Leibnitz rule to a derivative of a product}\n\nApply the product rule or ``Leibnitz\n identity'' to an object which has the \\prop{Derivative} property, i.e." }, { "cell_origin" : "client", "cell_type" : "input", "cells" : [ { "cell_origin" : "server", "cell_type" : "latex_view", "source" : "\\begin{dmath*}{}\\text{Attached property Derivative to~}D{\\#}.\\end{dmath*}" }, { "cell_origin" : "server", "cell_type" : "latex_view", "source" : "\\begin{dmath*}{}D\\left(f g\\right)\\end{dmath*}" }, { "cell_origin" : "server", "cell_type" : "latex_view", "source" : "\\begin{dmath*}{}D{f} g+f D{g}\\end{dmath*}" } ], "source" : "D{#}::Derivative;\nex:=D(f g);\nproduct_rule(_);" }, { "cell_origin" : "client", "cell_type" : "latex", "cells" : [ { "cell_origin" : "client", "cell_type" : "latex_view", "source" : "This of course also works for derivatives which explicitly mention\nindices or components, as well as for multiple derivatives, as in the example below." } ], "hidden" : true, "source" : "This of course also works for derivatives which explicitly mention\nindices or components, as well as for multiple derivatives, as in the example below." }, { "cell_origin" : "client", "cell_type" : "input", "cells" : [ { "cell_origin" : "server", "cell_type" : "latex_view", "source" : "\\begin{dmath*}{}D_{m n}\\left(f g\\right)\\end{dmath*}" } ], "source" : "D{#}::Derivative.\nex:=D_{m n}(f g);" }, { "cell_origin" : "client", "cell_type" : "input", "cells" : [ { "cell_origin" : "server", "cell_type" : "latex_view", "source" : "\\begin{dmath*}{}D_{m}\\left(D_{n}{f} g+f D_{n}{g}\\right)\\end{dmath*}" } ], "source" : "product_rule(_);" }, { "cell_origin" : "client", "cell_type" : "input", "cells" : [ { "cell_origin" : "server", "cell_type" : "latex_view", "source" : "\\begin{dmath*}{}D_{m}\\left(D_{n}{f} g\\right)+D_{m}\\left(f D_{n}{g}\\right)\\end{dmath*}" } ], "source" : "distribute(_);" }, { "cell_origin" : "client", "cell_type" : "input", "cells" : [ { "cell_origin" : "server", "cell_type" : "latex_view", "source" : "\\begin{dmath*}{}D_{m}{D_{n}{f}} g+D_{n}{f} D_{m}{g}+D_{m}{f} D_{n}{g}+f D_{m}{D_{n}{g}}\\end{dmath*}" } ], "source" : "product_rule(_);" }, { "cell_origin" : "client", "cell_type" : "input", "source" : "" } ], "description" : "Cadabra JSON notebook format", "version" : 1 }