Theory Hyperdual
theory Hyperdual
imports "HOL-Analysis.Analysis"
begin
section‹Hyperdual Numbers›
text‹
Let ‹τ› be some type.
Second-order hyperdual numbers over ‹τ› take the form ‹a⇩1 + a⇩2ε⇩1 + a⇩3ε⇩2 + a⇩4ε⇩1ε⇩2› where all
‹a⇩i :: τ›, and ‹ε⇩1› and ‹ε⇩2› are non-zero but nilpotent infinitesimals: ‹ε⇩1⇧2 = ε⇩2⇧2 = (ε⇩1ε⇩2)⇧2 = 0›.
We define second-order hyperdual numbers as a coinductive data type with four components: the base
component, two first-order hyperdual components and one second-order hyperdual component.
›