Made group actions a concept

release/4.3a0
Frank Dellaert 2014-12-05 20:22:58 +00:00
parent dcc6c0c701
commit a9bb473424
1 changed files with 10 additions and 2 deletions

View File

@ -68,6 +68,9 @@ We do *not* at this time support more than one composition operator per type. Al
Also, a type should provide either multiplication or addition operators depending on the flavor of the operation. To distinguish between the two, we will use a tag (see below).
Group Action
------------
A group can *act* on another space. For example, a *similarity transform* in 3D can act on 3D space, like
q = s*R*p + t
@ -83,6 +86,8 @@ Hence, we formalize by the following extension of the concept:
* `group::act(g,t)`, for some instance of a space T, that can be acted upon by the group
* `group::act(g,t,H)`, if the space acted upon is a continuous differentiable manifold
Group actions are concepts in and of themselves that can be concept checked (see below).
Lie Group
---------
@ -94,7 +99,10 @@ A Lie group is both a manifold *and* a group. Hence, a LIE_GROUP type should imp
where above the `H` arguments stand for optional Jacobian arguments. That makes it possible to create factors implementing priors (PriorFactor) or relations between two instances of a Lie group type (BteweenFactor).
when a Lie group acts on a space, we have two derivatives to care about:
Lie Group Action
----------------
When a Lie group acts on a space, we have two derivatives to care about:
* `group::act(g,t,Hg,Ht)`, if the space acted upon is a continuous differentiable manifold