Traits
BaseAire
contains width(the number of columns) and preprocessed_trace(what is this used for?)

AirBuilderWithPublicValues
it extend the AirBuilder trait, which is the main trait, by adding the function to get public values

AirBuilder

it has many functions like these: to help user build air constraints

The main function return M, …