Skip to content

Extended DegOpt #84

@jarlebring

Description

@jarlebring

At the moment we have DegOpt objects that corresponds to evaluations

B3=  (x I + x A) * (x I + x A)
B4=  (x I + x A + xB3) * (x I + x A +xB3)
B5=  (x I + x A + xB3+xB4) * (x I + x A +xB3 +xB4)
...

This is complete and one can represent any polynomial evaluation scheme in this way. However, many schemes are formulated in a slightly different way

B3=  (x I + x A) * (x I + x A) + x I + xA
B4=  (x I + x A + xB3) * (x I + x A +xB3) + xI +xA +xB3
B5=  (x I + x A + xB3+xB4) * (x I + x A +xB3 +xB4) + xI +xA +xB3+xB4
...

One can always transform the second scheme to the first by incorporating the additional coefficients into the DegOpt-coefficients (basically adding multiples at appropriate places).

Since many schemes (e.g Horner, PS, Sastre, .. ) are easier to formulate in the second scheme, we could consider introducting ExtendedDegOpt which has three matrices (Ha,Hb,Hc,y) representing the second scheme. A function which transforms an extended to a standard DegOpt would make it much easier to use and implement other evaluations:

  degopt=reduce_degopt(ext_degopt::ExtendedDegOpt)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions