# Catalog of contractors for dynamical systems¶

We now focus on time-related constraints. The following contractors provide a way to apply them on various domains including tubes, intervals and boxes.

How a contractor is implemented

Contractors are C++/Python objects. Some of them can be instantiated according to the problem to deal with. All of them will contract domains with the .contract() method.

Pre-defined contractors

For ease of use, some contractor objects that do not require parameters are predefined in the namespace ctc. They can be used directly without instantiation.

Contractor

Type

Code

Doc

$$\mathcal{C}_{\textrm{polar}}$$

Static

ctc::polar for C++
ctc.polar for Python

$$\mathcal{C}_{\textrm{dist}}$$

Static

ctc::dist for C++
ctc.dist for Python

$$\mathcal{C}_{\frac{d}{dt}}$$

Dynam.

ctc::deriv for C++
ctc.deriv for Python

$$\mathcal{C}_{\textrm{eval}}$$

Dynam.

ctc::eval for C++
ctc.eval for Python

$$\mathcal{C}_{\textrm{delay}}$$

Dynam.

ctc::delay for C++
ctc.delay for Python

Methods common to dynamic contractor objects

In the following table, ctc is an instantiation of a Ctc class.

Code

Meaning

ctc.preserve_slicing()

Specifies whether the contractor can impact the tube’s slicing or not

ctc.restrict_tdomain(tdomain)

Limits the temporal domain of the contractions