Merge branch 'linear-credits' into 'master'
Modify the logic to add a notion of "affine" resources, i.e. resources that can be garbage collected. Previously, all resources were implicitly affine and could be garbage collected. This new distinction is relevant for time credits: a negative number of time credits does not entails False anymore, but only a positive number of credits can be garbage collected. This adds a side-condition to the garbage collecting rule in presence of credits, but simplifies the rule to split a number of credits: [$(n+m) = $n * $m] now always hold, while it previously required to prove [0 <= n] and [0 <= m] as side conditions.
Showing with 511 additions and 498 deletions