Skip to main content

check_scaling

Function check_scaling 

Source
pub fn check_scaling(
    model: &Model,
    scaling: &Scaling,
    before: &[Cell],
    after: &[Cell],
    flights_before: &[Algebraic],
    flights_after: &[Algebraic],
) -> Result<(), String>
Expand description

The certificate a tail rests on, checked on its own: the slots are closed under what feeds them, the field, the guards and the cycle’s statements setting them are homogeneous for the weights, after is the scaling’s image of before, and each flight of the round after is s^q times the same flight of the round before. A run whose state the scaling maps to its state a round later is then, round after round, the scaled copy of the round before. A scaling by one is the identity, which every model is homogeneous for: its certificate is that the state repeats.