loopRules.key

Taclets

Enabled under choices: programRules:Java

loopUnwind

loopUnwind { \find ( \modality{#allmodal}{.. while(#e) #s ...}\endmodality ( post )) \varcond \replacewith ( \modality{#allmodal}{.. #unwind-loop (#innerLabel, #outerLabel, while(#e) #s); ...}\endmodality ( post )) \heuristics (loop_expand ) };defined in: loopRules.key Line: 29 Offset :4

doWhileUnwind

doWhileUnwind { \find ( \modality{#allmodal}{.. do #s while (#e); ...}\endmodality ( post )) \varcond \replacewith ( \modality{#allmodal}{.. #unwind-loop (#innerLabel, #outerLabel, do #s while(#e);); ...}\endmodality ( post )) \heuristics (simplify_prog ) };defined in: loopRules.key Line: 37 Offset :4

for_to_while

for_to_while { \find ( \modality{#allmodal}{.. #forloop ...}\endmodality ( post )) \varcond \replacewith ( \modality{#allmodal}{.. #for-to-while(#innerLabel, #outerLabel, #forloop) ...}\endmodality ( post )) \heuristics (simplify_prog ) };defined in: loopRules.key Line: 48 Offset :4

arrayInitialisation

arrayInitialisation { \find ( \modality{#allmodal}{.#pm@#t(#a).. for (int #v=#se;#v ( post )) \replacewith ( { heap := memset ( heap , arrayRange ( #a, #se, length ( #a)- 1 ), #lit)} \modality{#allmodal}{.. ...}\endmodality ( post )) \heuristics (simplify ) };defined in: loopRules.key Line: 55 Offset :4