Ignore:
Timestamp:
Jun 8, 2012, 4:32:03 PM (8 years ago)
Author:
sacerdot
Message:

!! BEWARE: major commit !!

1) [affects everybody]

split for vectors renamed to vsplit to reduce ambiguity since split is
now also a function in the standard library.
Note: I have not been able to propagate the changes everywhere in
the front-end/back-end because some files do not compile

2) [affects everybody]

functions on Vectors copied both in the front and back-ends moved to
Vectors.ma

3) [affects only the back-end]

subaddressing_mode_elim redesigned from scratch and now also applied to
Policy.ma. Moreover, all daemons about that have been closed.
The new one is much simpler to apply since it behaves like a standard
elimination principle: @(subaddressing_mode_elim \ldots x) where x is
the thing to eliminate.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/RTLabs/RTLabsToRTL_paolo.ma

    r1882 r2032  
    119119  [ I8 ⇒ λint. ? | I16 ⇒ λint. ? | I32 ⇒ λint. ? ].
    120120[ %[@[int]] //
    121 | %[@(let 〈h,l〉 ≝ split ? 8 … int in [l;h])] cases (split ????) normalize //
    122 | %[@(let 〈h1,l〉 ≝ split ? 8 … int in
    123       let 〈h2,l〉 ≝ split ? 8 … l in
    124       let 〈h3,l〉 ≝ split ? 8 … l in
     121| %[@(let 〈h,l〉 ≝ vsplit ? 8 … int in [l;h])] cases (vsplit ????) normalize //
     122| %[@(let 〈h1,l〉 ≝ vsplit ? 8 … int in
     123      let 〈h2,l〉 ≝ vsplit ? 8 … l in
     124      let 〈h3,l〉 ≝ vsplit ? 8 … l in
    125125       [l;h3;h2;h1])]
    126   cases (split ????) #h1 #l normalize
    127   cases (split ????) #h2 #l normalize
    128   cases (split ????) // ]
     126  cases (vsplit ????) #h1 #l normalize
     127  cases (vsplit ????) #h2 #l normalize
     128  cases (vsplit ????) // ]
    129129qed.
    130130
Note: See TracChangeset for help on using the changeset viewer.