@@ -658,28 +658,26 @@ module {:options "/functionSyntax:4" } Canonize {
658658    }
659659  }
660660
661-   //  command line tools that say /vcsSplitOnEveryAssert fail without the {:vcs_split_on_every_assert false}
662-   lemma  {:vcs_split_on_every_assert false } InputIsInput (origData : AuthList , input : CanonCryptoList )
663-     requires  forall  val < -  input :: exists  x :: x in  origData &&  Updated2 (x, val, DoDecrypt)
664-     ensures  forall  i | 0 <=  i <  |input| :: exists  x :: x in  origData &&  Updated2 (x, input[i], DoDecrypt)
661+   ghost  predicate  Updated2Exists (origData : AuthList , item : CanonCryptoItem )
665662  {
666-     assert  forall  i | 0 <=  i <  |input| :: input[i] in  input;
667-     forall  i | 0 <=  i <  |input| ensures  exists  x :: x in  origData &&  Updated2 (x, input[i], DoDecrypt) {
668-       var  x :| x in  origData &&  Updated2 (x, input[i], DoDecrypt);
669-     }
670-     assert  forall  i | 0 <=  i <  |input| :: exists  x :: x in  origData &&  Updated2 (x, input[i], DoDecrypt);
663+     exists  x :: x in  origData &&  Updated2 (x, item, DoDecrypt)
671664  }
672665
673-   //  command line tools that say /vcsSplitOnEveryAssert fail without the {:vcs_split_on_every_assert false}
674-   lemma  {:vcs_split_on_every_assert false } InputIsInput2 (origData : CryptoList , input : CanonCryptoList )
675-     requires  forall  val < -  input :: exists  x :: x in  origData &&  Updated5 (x, val, DoEncrypt)
676-     ensures  forall  i | 0 <=  i <  |input| :: exists  x :: x in  origData &&  Updated5 (x, input[i], DoEncrypt)
666+   ghost  predicate  Updated5Exists (origData : CryptoList , item : CanonCryptoItem )
667+   {
668+     exists  x :: x in  origData &&  Updated5 (x, item, DoEncrypt)
669+   }
670+ 
671+   lemma  InputIsInput (origData : AuthList , input : CanonCryptoList )
672+     requires  forall  val < -  input :: Updated2Exists (origData, val)
673+     ensures  forall  i | 0 <=  i <  |input| :: Updated2Exists (origData, input[i])
674+   {
675+   }
676+ 
677+   lemma   InputIsInput2 (origData : CryptoList , input : CanonCryptoList )
678+     requires  forall  val < -  input :: Updated5Exists (origData, val)
679+     ensures  forall  i | 0 <=  i <  |input| :: Updated5Exists (origData, input[i])
677680  {
678-     assert  forall  i | 0 <=  i <  |input| :: input[i] in  input;
679-     forall  i | 0 <=  i <  |input| ensures  exists  x :: x in  origData &&  Updated5 (x, input[i], DoEncrypt) {
680-       var  x :| x in  origData &&  Updated5 (x, input[i], DoEncrypt);
681-     }
682-     assert  forall  i | 0 <=  i <  |input| :: exists  x :: x in  origData &&  Updated5 (x, input[i], DoEncrypt);
683681  }
684682
685683  lemma  CryptoUpdatedAuthMaps (origData : AuthList , input : CanonCryptoList , output : CryptoList )
0 commit comments