./Ultimate.py --spec ../../sv-benchmarks/c/properties/no-overflow.prp --file ../../sv-benchmarks/c/bitvector/byte_add_false-no-overflow.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for overflows Using default analysis Version aa418289 Calling Ultimate with: java -Dosgi.configuration.area=/tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer/data/config -Xmx12G -Xms1G -jar /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer/data -tc /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer/config/AutomizerReach.xml -i ../../sv-benchmarks/c/bitvector/byte_add_false-no-overflow.i -s /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer/config/svcomp-Overflow-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! overflow) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 6af52310ec13e6e7a94146d05f9e904086453aae ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... Execution finished normally Using bit-precise analysis No suitable file found in config dir /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer/config using search string *Overflow*32bit*_Bitvector*.epf No suitable settings file found using Overflow*32bit*_Bitvector ERROR: UNSUPPORTED PROPERTY Writing output log to file Ultimate.log Result: UNKNOWN: Overapproximated counterexample --- Real Ultimate output --- This is Ultimate 0.1.23-aa41828 [2018-11-23 04:27:51,742 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-23 04:27:51,743 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-23 04:27:51,751 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-23 04:27:51,751 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-23 04:27:51,752 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-23 04:27:51,753 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-23 04:27:51,754 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-23 04:27:51,755 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-23 04:27:51,756 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-23 04:27:51,756 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-23 04:27:51,757 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-23 04:27:51,757 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-23 04:27:51,758 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-23 04:27:51,758 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-23 04:27:51,759 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-23 04:27:51,759 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-23 04:27:51,761 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-23 04:27:51,763 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-23 04:27:51,764 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-23 04:27:51,765 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-23 04:27:51,765 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-23 04:27:51,767 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-23 04:27:51,767 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-23 04:27:51,767 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-23 04:27:51,769 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-23 04:27:51,769 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-23 04:27:51,770 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-23 04:27:51,770 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-23 04:27:51,771 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-23 04:27:51,771 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-23 04:27:51,772 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-23 04:27:51,772 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-23 04:27:51,772 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-23 04:27:51,772 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-23 04:27:51,773 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-23 04:27:51,773 INFO L98 SettingsManager]: Beginning loading settings from /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer/config/svcomp-Overflow-32bit-Automizer_Default.epf [2018-11-23 04:27:51,781 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-23 04:27:51,781 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-23 04:27:51,782 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-23 04:27:51,782 INFO L133 SettingsManager]: * ... calls to implemented procedures=ONLY_FOR_CONCURRENT_PROGRAMS [2018-11-23 04:27:51,782 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-23 04:27:51,782 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-23 04:27:51,782 INFO L133 SettingsManager]: * Use SBE=true [2018-11-23 04:27:51,783 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-23 04:27:51,783 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-23 04:27:51,783 INFO L133 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2018-11-23 04:27:51,783 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-23 04:27:51,783 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-23 04:27:51,783 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-23 04:27:51,783 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-23 04:27:51,784 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-23 04:27:51,784 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-23 04:27:51,784 INFO L133 SettingsManager]: * Check absence of signed integer overflows=true [2018-11-23 04:27:51,784 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-23 04:27:51,784 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-23 04:27:51,784 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-23 04:27:51,784 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-23 04:27:51,785 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-23 04:27:51,785 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-23 04:27:51,785 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-23 04:27:51,785 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-23 04:27:51,785 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 04:27:51,785 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-23 04:27:51,785 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-23 04:27:51,785 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-23 04:27:51,786 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-23 04:27:51,786 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-23 04:27:51,786 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-23 04:27:51,786 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! overflow) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 6af52310ec13e6e7a94146d05f9e904086453aae [2018-11-23 04:27:51,810 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-23 04:27:51,819 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-23 04:27:51,822 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-23 04:27:51,823 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-23 04:27:51,823 INFO L276 PluginConnector]: CDTParser initialized [2018-11-23 04:27:51,824 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer/../../sv-benchmarks/c/bitvector/byte_add_false-no-overflow.i [2018-11-23 04:27:51,863 INFO L221 CDTParser]: Created temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer/data/da1cde875/e8718040cd5749e6a87a6bf252a20289/FLAGae1e84cb0 [2018-11-23 04:27:52,168 INFO L307 CDTParser]: Found 1 translation units. [2018-11-23 04:27:52,168 INFO L161 CDTParser]: Scanning /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/sv-benchmarks/c/bitvector/byte_add_false-no-overflow.i [2018-11-23 04:27:52,172 INFO L355 CDTParser]: About to delete temporary CDT project at /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer/data/da1cde875/e8718040cd5749e6a87a6bf252a20289/FLAGae1e84cb0 [2018-11-23 04:27:52,181 INFO L363 CDTParser]: Successfully deleted /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer/data/da1cde875/e8718040cd5749e6a87a6bf252a20289 [2018-11-23 04:27:52,183 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-23 04:27:52,184 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2018-11-23 04:27:52,185 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-23 04:27:52,185 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-23 04:27:52,188 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-23 04:27:52,188 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 04:27:52" (1/1) ... [2018-11-23 04:27:52,190 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5dd21f3d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 04:27:52, skipping insertion in model container [2018-11-23 04:27:52,190 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.11 04:27:52" (1/1) ... [2018-11-23 04:27:52,196 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-23 04:27:52,211 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-23 04:27:52,335 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 04:27:52,338 INFO L191 MainTranslator]: Completed pre-run [2018-11-23 04:27:52,357 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-23 04:27:52,366 INFO L195 MainTranslator]: Completed translation [2018-11-23 04:27:52,366 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 04:27:52 WrapperNode [2018-11-23 04:27:52,366 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-23 04:27:52,367 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2018-11-23 04:27:52,367 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2018-11-23 04:27:52,367 INFO L276 PluginConnector]: Boogie Procedure Inliner initialized [2018-11-23 04:27:52,374 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 04:27:52" (1/1) ... [2018-11-23 04:27:52,381 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 04:27:52" (1/1) ... [2018-11-23 04:27:52,387 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2018-11-23 04:27:52,387 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-23 04:27:52,387 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-23 04:27:52,387 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-23 04:27:52,431 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 04:27:52" (1/1) ... [2018-11-23 04:27:52,431 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 04:27:52" (1/1) ... [2018-11-23 04:27:52,433 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 04:27:52" (1/1) ... [2018-11-23 04:27:52,433 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 04:27:52" (1/1) ... [2018-11-23 04:27:52,439 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 04:27:52" (1/1) ... [2018-11-23 04:27:52,445 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 04:27:52" (1/1) ... [2018-11-23 04:27:52,446 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 04:27:52" (1/1) ... [2018-11-23 04:27:52,448 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-23 04:27:52,449 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-23 04:27:52,449 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-23 04:27:52,449 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-23 04:27:52,450 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 04:27:52" (1/1) ... No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-23 04:27:52,492 INFO L130 BoogieDeclarations]: Found specification of procedure mp_add [2018-11-23 04:27:52,492 INFO L138 BoogieDeclarations]: Found implementation of procedure mp_add [2018-11-23 04:27:52,492 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-23 04:27:52,492 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-23 04:27:52,492 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-23 04:27:52,493 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-23 04:27:52,493 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-23 04:27:52,493 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-23 04:27:52,493 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2018-11-23 04:27:52,493 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2018-11-23 04:27:52,811 INFO L275 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-23 04:27:52,812 INFO L280 CfgBuilder]: Removed 2 assue(true) statements. [2018-11-23 04:27:52,812 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 04:27:52 BoogieIcfgContainer [2018-11-23 04:27:52,812 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-23 04:27:52,813 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-23 04:27:52,813 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-23 04:27:52,816 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-23 04:27:52,816 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.11 04:27:52" (1/3) ... [2018-11-23 04:27:52,817 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@263181ca and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 04:27:52, skipping insertion in model container [2018-11-23 04:27:52,817 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.11 04:27:52" (2/3) ... [2018-11-23 04:27:52,817 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@263181ca and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.11 04:27:52, skipping insertion in model container [2018-11-23 04:27:52,817 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 04:27:52" (3/3) ... [2018-11-23 04:27:52,819 INFO L112 eAbstractionObserver]: Analyzing ICFG byte_add_false-no-overflow.i [2018-11-23 04:27:52,827 INFO L156 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-23 04:27:52,834 INFO L168 ceAbstractionStarter]: Appying trace abstraction to program that has 38 error locations. [2018-11-23 04:27:52,848 INFO L257 AbstractCegarLoop]: Starting to check reachability of 38 error locations. [2018-11-23 04:27:52,874 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-23 04:27:52,875 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-23 04:27:52,875 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-23 04:27:52,875 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-23 04:27:52,875 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-23 04:27:52,875 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-23 04:27:52,876 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-23 04:27:52,876 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-23 04:27:52,876 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-23 04:27:52,894 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states. [2018-11-23 04:27:52,899 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2018-11-23 04:27:52,899 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:27:52,900 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:27:52,902 INFO L423 AbstractCegarLoop]: === Iteration 1 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:27:52,907 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:27:52,907 INFO L82 PathProgramCache]: Analyzing trace with hash 1025559455, now seen corresponding path program 1 times [2018-11-23 04:27:52,908 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:27:52,909 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:27:52,950 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:52,950 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:52,950 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:52,976 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:53,000 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 04:27:53,002 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:27:53,002 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2018-11-23 04:27:53,005 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-23 04:27:53,012 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-23 04:27:53,013 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 04:27:53,015 INFO L87 Difference]: Start difference. First operand 126 states. Second operand 2 states. [2018-11-23 04:27:53,034 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:27:53,034 INFO L93 Difference]: Finished difference Result 154 states and 197 transitions. [2018-11-23 04:27:53,035 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-23 04:27:53,035 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 9 [2018-11-23 04:27:53,036 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:27:53,042 INFO L225 Difference]: With dead ends: 154 [2018-11-23 04:27:53,042 INFO L226 Difference]: Without dead ends: 74 [2018-11-23 04:27:53,044 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 1 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-23 04:27:53,056 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2018-11-23 04:27:53,070 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2018-11-23 04:27:53,071 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 74 states. [2018-11-23 04:27:53,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 100 transitions. [2018-11-23 04:27:53,074 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 100 transitions. Word has length 9 [2018-11-23 04:27:53,074 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:27:53,074 INFO L480 AbstractCegarLoop]: Abstraction has 74 states and 100 transitions. [2018-11-23 04:27:53,074 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-23 04:27:53,074 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 100 transitions. [2018-11-23 04:27:53,075 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2018-11-23 04:27:53,075 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:27:53,075 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:27:53,076 INFO L423 AbstractCegarLoop]: === Iteration 2 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:27:53,076 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:27:53,076 INFO L82 PathProgramCache]: Analyzing trace with hash -133733111, now seen corresponding path program 1 times [2018-11-23 04:27:53,076 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:27:53,076 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:27:53,077 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:53,077 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:53,077 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:53,088 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:53,138 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 04:27:53,139 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:27:53,139 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-23 04:27:53,140 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-23 04:27:53,140 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-23 04:27:53,140 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 04:27:53,141 INFO L87 Difference]: Start difference. First operand 74 states and 100 transitions. Second operand 3 states. [2018-11-23 04:27:53,272 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:27:53,272 INFO L93 Difference]: Finished difference Result 150 states and 217 transitions. [2018-11-23 04:27:53,272 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-23 04:27:53,272 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 18 [2018-11-23 04:27:53,272 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:27:53,273 INFO L225 Difference]: With dead ends: 150 [2018-11-23 04:27:53,273 INFO L226 Difference]: Without dead ends: 103 [2018-11-23 04:27:53,274 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 2 SyntacticMatches, 1 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 04:27:53,275 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 103 states. [2018-11-23 04:27:53,281 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 103 to 99. [2018-11-23 04:27:53,281 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 99 states. [2018-11-23 04:27:53,282 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 99 states to 99 states and 129 transitions. [2018-11-23 04:27:53,283 INFO L78 Accepts]: Start accepts. Automaton has 99 states and 129 transitions. Word has length 18 [2018-11-23 04:27:53,283 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:27:53,283 INFO L480 AbstractCegarLoop]: Abstraction has 99 states and 129 transitions. [2018-11-23 04:27:53,283 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-23 04:27:53,283 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 129 transitions. [2018-11-23 04:27:53,284 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2018-11-23 04:27:53,284 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:27:53,284 INFO L402 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:27:53,285 INFO L423 AbstractCegarLoop]: === Iteration 3 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:27:53,285 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:27:53,285 INFO L82 PathProgramCache]: Analyzing trace with hash -375227645, now seen corresponding path program 1 times [2018-11-23 04:27:53,285 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:27:53,285 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:27:53,286 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:53,286 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:53,287 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:53,301 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:53,368 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-23 04:27:53,368 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:27:53,368 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-23 04:27:53,368 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-23 04:27:53,369 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-23 04:27:53,369 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-23 04:27:53,369 INFO L87 Difference]: Start difference. First operand 99 states and 129 transitions. Second operand 4 states. [2018-11-23 04:27:53,550 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:27:53,550 INFO L93 Difference]: Finished difference Result 219 states and 322 transitions. [2018-11-23 04:27:53,550 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 04:27:53,550 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 25 [2018-11-23 04:27:53,550 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:27:53,551 INFO L225 Difference]: With dead ends: 219 [2018-11-23 04:27:53,551 INFO L226 Difference]: Without dead ends: 172 [2018-11-23 04:27:53,552 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 3 SyntacticMatches, 1 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2018-11-23 04:27:53,552 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 172 states. [2018-11-23 04:27:53,561 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 172 to 124. [2018-11-23 04:27:53,561 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 124 states. [2018-11-23 04:27:53,562 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 124 states to 124 states and 166 transitions. [2018-11-23 04:27:53,562 INFO L78 Accepts]: Start accepts. Automaton has 124 states and 166 transitions. Word has length 25 [2018-11-23 04:27:53,563 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:27:53,563 INFO L480 AbstractCegarLoop]: Abstraction has 124 states and 166 transitions. [2018-11-23 04:27:53,563 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-23 04:27:53,563 INFO L276 IsEmpty]: Start isEmpty. Operand 124 states and 166 transitions. [2018-11-23 04:27:53,564 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2018-11-23 04:27:53,564 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:27:53,564 INFO L402 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:27:53,565 INFO L423 AbstractCegarLoop]: === Iteration 4 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:27:53,565 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:27:53,565 INFO L82 PathProgramCache]: Analyzing trace with hash -740983547, now seen corresponding path program 1 times [2018-11-23 04:27:53,565 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:27:53,565 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:27:53,566 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:53,566 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:53,566 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:53,579 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:53,626 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2018-11-23 04:27:53,626 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:27:53,626 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-23 04:27:53,627 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-23 04:27:53,627 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-23 04:27:53,627 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-23 04:27:53,627 INFO L87 Difference]: Start difference. First operand 124 states and 166 transitions. Second operand 4 states. [2018-11-23 04:27:53,781 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:27:53,781 INFO L93 Difference]: Finished difference Result 319 states and 452 transitions. [2018-11-23 04:27:53,783 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-23 04:27:53,783 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 32 [2018-11-23 04:27:53,783 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:27:53,784 INFO L225 Difference]: With dead ends: 319 [2018-11-23 04:27:53,784 INFO L226 Difference]: Without dead ends: 227 [2018-11-23 04:27:53,785 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 3 SyntacticMatches, 1 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2018-11-23 04:27:53,786 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 227 states. [2018-11-23 04:27:53,798 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 227 to 163. [2018-11-23 04:27:53,798 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 163 states. [2018-11-23 04:27:53,799 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 163 states to 163 states and 227 transitions. [2018-11-23 04:27:53,799 INFO L78 Accepts]: Start accepts. Automaton has 163 states and 227 transitions. Word has length 32 [2018-11-23 04:27:53,799 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:27:53,799 INFO L480 AbstractCegarLoop]: Abstraction has 163 states and 227 transitions. [2018-11-23 04:27:53,800 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-23 04:27:53,800 INFO L276 IsEmpty]: Start isEmpty. Operand 163 states and 227 transitions. [2018-11-23 04:27:53,801 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2018-11-23 04:27:53,801 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:27:53,801 INFO L402 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:27:53,801 INFO L423 AbstractCegarLoop]: === Iteration 5 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:27:53,802 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:27:53,802 INFO L82 PathProgramCache]: Analyzing trace with hash 1838487559, now seen corresponding path program 1 times [2018-11-23 04:27:53,802 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:27:53,802 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:27:53,803 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:53,803 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:53,803 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:53,820 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:53,872 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 5 proven. 0 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2018-11-23 04:27:53,872 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:27:53,872 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-23 04:27:53,873 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 04:27:53,873 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 04:27:53,873 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-23 04:27:53,873 INFO L87 Difference]: Start difference. First operand 163 states and 227 transitions. Second operand 5 states. [2018-11-23 04:27:54,064 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:27:54,065 INFO L93 Difference]: Finished difference Result 460 states and 643 transitions. [2018-11-23 04:27:54,065 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-23 04:27:54,065 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 39 [2018-11-23 04:27:54,065 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:27:54,066 INFO L225 Difference]: With dead ends: 460 [2018-11-23 04:27:54,066 INFO L226 Difference]: Without dead ends: 327 [2018-11-23 04:27:54,067 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2018-11-23 04:27:54,068 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 327 states. [2018-11-23 04:27:54,078 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 327 to 176. [2018-11-23 04:27:54,078 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 176 states. [2018-11-23 04:27:54,079 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 176 states to 176 states and 243 transitions. [2018-11-23 04:27:54,080 INFO L78 Accepts]: Start accepts. Automaton has 176 states and 243 transitions. Word has length 39 [2018-11-23 04:27:54,080 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:27:54,080 INFO L480 AbstractCegarLoop]: Abstraction has 176 states and 243 transitions. [2018-11-23 04:27:54,080 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 04:27:54,080 INFO L276 IsEmpty]: Start isEmpty. Operand 176 states and 243 transitions. [2018-11-23 04:27:54,081 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2018-11-23 04:27:54,082 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:27:54,082 INFO L402 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:27:54,083 INFO L423 AbstractCegarLoop]: === Iteration 6 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:27:54,083 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:27:54,083 INFO L82 PathProgramCache]: Analyzing trace with hash 1692244499, now seen corresponding path program 1 times [2018-11-23 04:27:54,083 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:27:54,083 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:27:54,084 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:54,084 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:54,084 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:54,096 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:54,138 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 5 proven. 0 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2018-11-23 04:27:54,138 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:27:54,138 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-23 04:27:54,139 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 04:27:54,139 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 04:27:54,139 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-23 04:27:54,139 INFO L87 Difference]: Start difference. First operand 176 states and 243 transitions. Second operand 5 states. [2018-11-23 04:27:54,320 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:27:54,320 INFO L93 Difference]: Finished difference Result 466 states and 649 transitions. [2018-11-23 04:27:54,320 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-23 04:27:54,320 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 42 [2018-11-23 04:27:54,321 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:27:54,321 INFO L225 Difference]: With dead ends: 466 [2018-11-23 04:27:54,321 INFO L226 Difference]: Without dead ends: 333 [2018-11-23 04:27:54,322 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2018-11-23 04:27:54,323 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 333 states. [2018-11-23 04:27:54,331 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 333 to 189. [2018-11-23 04:27:54,332 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 189 states. [2018-11-23 04:27:54,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 189 states to 189 states and 257 transitions. [2018-11-23 04:27:54,333 INFO L78 Accepts]: Start accepts. Automaton has 189 states and 257 transitions. Word has length 42 [2018-11-23 04:27:54,333 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:27:54,333 INFO L480 AbstractCegarLoop]: Abstraction has 189 states and 257 transitions. [2018-11-23 04:27:54,333 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 04:27:54,334 INFO L276 IsEmpty]: Start isEmpty. Operand 189 states and 257 transitions. [2018-11-23 04:27:54,335 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2018-11-23 04:27:54,335 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:27:54,335 INFO L402 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:27:54,336 INFO L423 AbstractCegarLoop]: === Iteration 7 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:27:54,336 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:27:54,336 INFO L82 PathProgramCache]: Analyzing trace with hash -756319486, now seen corresponding path program 1 times [2018-11-23 04:27:54,336 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:27:54,336 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:27:54,337 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:54,337 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:54,337 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:54,347 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:54,386 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2018-11-23 04:27:54,387 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 04:27:54,387 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 04:27:54,403 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:54,423 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:54,428 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 04:27:54,471 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 9 proven. 0 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2018-11-23 04:27:54,497 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-23 04:27:54,497 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [5] total 7 [2018-11-23 04:27:54,498 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 04:27:54,498 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 04:27:54,498 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2018-11-23 04:27:54,498 INFO L87 Difference]: Start difference. First operand 189 states and 257 transitions. Second operand 7 states. [2018-11-23 04:27:55,236 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:27:55,236 INFO L93 Difference]: Finished difference Result 426 states and 617 transitions. [2018-11-23 04:27:55,236 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 04:27:55,236 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 45 [2018-11-23 04:27:55,237 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:27:55,237 INFO L225 Difference]: With dead ends: 426 [2018-11-23 04:27:55,237 INFO L226 Difference]: Without dead ends: 291 [2018-11-23 04:27:55,238 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 54 GetRequests, 46 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=47, Unknown=0, NotChecked=0, Total=72 [2018-11-23 04:27:55,238 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 291 states. [2018-11-23 04:27:55,244 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 291 to 235. [2018-11-23 04:27:55,244 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 235 states. [2018-11-23 04:27:55,245 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 235 states to 235 states and 295 transitions. [2018-11-23 04:27:55,245 INFO L78 Accepts]: Start accepts. Automaton has 235 states and 295 transitions. Word has length 45 [2018-11-23 04:27:55,246 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:27:55,246 INFO L480 AbstractCegarLoop]: Abstraction has 235 states and 295 transitions. [2018-11-23 04:27:55,246 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 04:27:55,246 INFO L276 IsEmpty]: Start isEmpty. Operand 235 states and 295 transitions. [2018-11-23 04:27:55,247 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2018-11-23 04:27:55,247 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:27:55,247 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:27:55,248 INFO L423 AbstractCegarLoop]: === Iteration 8 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:27:55,248 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:27:55,248 INFO L82 PathProgramCache]: Analyzing trace with hash 801888166, now seen corresponding path program 1 times [2018-11-23 04:27:55,248 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:27:55,248 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:27:55,249 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:55,249 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:55,249 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:55,258 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:55,299 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2018-11-23 04:27:55,300 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:27:55,300 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-23 04:27:55,300 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-23 04:27:55,300 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-23 04:27:55,300 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 04:27:55,300 INFO L87 Difference]: Start difference. First operand 235 states and 295 transitions. Second operand 3 states. [2018-11-23 04:27:55,309 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:27:55,309 INFO L93 Difference]: Finished difference Result 279 states and 344 transitions. [2018-11-23 04:27:55,310 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-23 04:27:55,310 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 52 [2018-11-23 04:27:55,311 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:27:55,311 INFO L225 Difference]: With dead ends: 279 [2018-11-23 04:27:55,311 INFO L226 Difference]: Without dead ends: 202 [2018-11-23 04:27:55,312 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 04:27:55,312 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 202 states. [2018-11-23 04:27:55,317 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 202 to 202. [2018-11-23 04:27:55,317 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 202 states. [2018-11-23 04:27:55,318 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 202 states to 202 states and 252 transitions. [2018-11-23 04:27:55,318 INFO L78 Accepts]: Start accepts. Automaton has 202 states and 252 transitions. Word has length 52 [2018-11-23 04:27:55,318 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:27:55,319 INFO L480 AbstractCegarLoop]: Abstraction has 202 states and 252 transitions. [2018-11-23 04:27:55,319 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-23 04:27:55,319 INFO L276 IsEmpty]: Start isEmpty. Operand 202 states and 252 transitions. [2018-11-23 04:27:55,320 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2018-11-23 04:27:55,320 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:27:55,320 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:27:55,320 INFO L423 AbstractCegarLoop]: === Iteration 9 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:27:55,321 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:27:55,321 INFO L82 PathProgramCache]: Analyzing trace with hash -1197423182, now seen corresponding path program 1 times [2018-11-23 04:27:55,321 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:27:55,321 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:27:55,321 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:55,321 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:55,321 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:55,330 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:55,418 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 54 trivial. 0 not checked. [2018-11-23 04:27:55,418 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:27:55,418 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-23 04:27:55,419 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-23 04:27:55,419 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-23 04:27:55,419 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2018-11-23 04:27:55,419 INFO L87 Difference]: Start difference. First operand 202 states and 252 transitions. Second operand 5 states. [2018-11-23 04:27:55,563 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:27:55,563 INFO L93 Difference]: Finished difference Result 558 states and 700 transitions. [2018-11-23 04:27:55,564 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2018-11-23 04:27:55,564 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 64 [2018-11-23 04:27:55,564 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:27:55,565 INFO L225 Difference]: With dead ends: 558 [2018-11-23 04:27:55,565 INFO L226 Difference]: Without dead ends: 412 [2018-11-23 04:27:55,565 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=18, Invalid=24, Unknown=0, NotChecked=0, Total=42 [2018-11-23 04:27:55,566 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 412 states. [2018-11-23 04:27:55,571 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 412 to 253. [2018-11-23 04:27:55,572 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 253 states. [2018-11-23 04:27:55,572 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 253 states to 253 states and 316 transitions. [2018-11-23 04:27:55,572 INFO L78 Accepts]: Start accepts. Automaton has 253 states and 316 transitions. Word has length 64 [2018-11-23 04:27:55,573 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:27:55,573 INFO L480 AbstractCegarLoop]: Abstraction has 253 states and 316 transitions. [2018-11-23 04:27:55,573 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-23 04:27:55,573 INFO L276 IsEmpty]: Start isEmpty. Operand 253 states and 316 transitions. [2018-11-23 04:27:55,573 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2018-11-23 04:27:55,574 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:27:55,574 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:27:55,574 INFO L423 AbstractCegarLoop]: === Iteration 10 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:27:55,574 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:27:55,575 INFO L82 PathProgramCache]: Analyzing trace with hash -1591774705, now seen corresponding path program 1 times [2018-11-23 04:27:55,575 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:27:55,575 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:27:55,575 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:55,576 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:55,576 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:55,585 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:55,615 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 22 proven. 0 refuted. 0 times theorem prover too weak. 42 trivial. 0 not checked. [2018-11-23 04:27:55,615 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:27:55,616 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2018-11-23 04:27:55,616 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2018-11-23 04:27:55,616 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2018-11-23 04:27:55,616 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 04:27:55,616 INFO L87 Difference]: Start difference. First operand 253 states and 316 transitions. Second operand 3 states. [2018-11-23 04:27:55,632 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:27:55,632 INFO L93 Difference]: Finished difference Result 266 states and 329 transitions. [2018-11-23 04:27:55,633 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2018-11-23 04:27:55,633 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 67 [2018-11-23 04:27:55,633 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:27:55,634 INFO L225 Difference]: With dead ends: 266 [2018-11-23 04:27:55,634 INFO L226 Difference]: Without dead ends: 253 [2018-11-23 04:27:55,634 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2018-11-23 04:27:55,635 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 253 states. [2018-11-23 04:27:55,639 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 253 to 253. [2018-11-23 04:27:55,639 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 253 states. [2018-11-23 04:27:55,640 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 253 states to 253 states and 315 transitions. [2018-11-23 04:27:55,640 INFO L78 Accepts]: Start accepts. Automaton has 253 states and 315 transitions. Word has length 67 [2018-11-23 04:27:55,640 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:27:55,640 INFO L480 AbstractCegarLoop]: Abstraction has 253 states and 315 transitions. [2018-11-23 04:27:55,640 INFO L481 AbstractCegarLoop]: Interpolant automaton has 3 states. [2018-11-23 04:27:55,641 INFO L276 IsEmpty]: Start isEmpty. Operand 253 states and 315 transitions. [2018-11-23 04:27:55,641 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2018-11-23 04:27:55,641 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:27:55,641 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:27:55,642 INFO L423 AbstractCegarLoop]: === Iteration 11 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:27:55,642 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:27:55,642 INFO L82 PathProgramCache]: Analyzing trace with hash 1692075341, now seen corresponding path program 1 times [2018-11-23 04:27:55,642 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:27:55,643 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:27:55,643 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:55,643 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:55,643 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:55,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:55,683 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 40 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2018-11-23 04:27:55,683 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:27:55,683 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2018-11-23 04:27:55,683 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2018-11-23 04:27:55,683 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2018-11-23 04:27:55,683 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-23 04:27:55,684 INFO L87 Difference]: Start difference. First operand 253 states and 315 transitions. Second operand 4 states. [2018-11-23 04:27:55,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:27:55,749 INFO L93 Difference]: Finished difference Result 559 states and 694 transitions. [2018-11-23 04:27:55,749 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2018-11-23 04:27:55,749 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 67 [2018-11-23 04:27:55,750 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:27:55,750 INFO L225 Difference]: With dead ends: 559 [2018-11-23 04:27:55,750 INFO L226 Difference]: Without dead ends: 362 [2018-11-23 04:27:55,751 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2018-11-23 04:27:55,751 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 362 states. [2018-11-23 04:27:55,756 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 362 to 267. [2018-11-23 04:27:55,756 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 267 states. [2018-11-23 04:27:55,757 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 267 states to 267 states and 339 transitions. [2018-11-23 04:27:55,757 INFO L78 Accepts]: Start accepts. Automaton has 267 states and 339 transitions. Word has length 67 [2018-11-23 04:27:55,757 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:27:55,757 INFO L480 AbstractCegarLoop]: Abstraction has 267 states and 339 transitions. [2018-11-23 04:27:55,757 INFO L481 AbstractCegarLoop]: Interpolant automaton has 4 states. [2018-11-23 04:27:55,757 INFO L276 IsEmpty]: Start isEmpty. Operand 267 states and 339 transitions. [2018-11-23 04:27:55,758 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2018-11-23 04:27:55,758 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:27:55,758 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:27:55,759 INFO L423 AbstractCegarLoop]: === Iteration 12 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:27:55,759 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:27:55,759 INFO L82 PathProgramCache]: Analyzing trace with hash 1261479449, now seen corresponding path program 1 times [2018-11-23 04:27:55,759 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:27:55,759 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:27:55,760 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:55,760 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:55,760 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:55,769 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:55,836 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 57 proven. 0 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2018-11-23 04:27:55,836 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:27:55,836 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2018-11-23 04:27:55,837 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 04:27:55,837 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 04:27:55,837 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2018-11-23 04:27:55,837 INFO L87 Difference]: Start difference. First operand 267 states and 339 transitions. Second operand 7 states. [2018-11-23 04:27:56,046 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:27:56,046 INFO L93 Difference]: Finished difference Result 778 states and 1009 transitions. [2018-11-23 04:27:56,046 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 04:27:56,047 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 73 [2018-11-23 04:27:56,047 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:27:56,048 INFO L225 Difference]: With dead ends: 778 [2018-11-23 04:27:56,048 INFO L226 Difference]: Without dead ends: 556 [2018-11-23 04:27:56,048 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 14 GetRequests, 5 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=38, Invalid=52, Unknown=0, NotChecked=0, Total=90 [2018-11-23 04:27:56,049 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 556 states. [2018-11-23 04:27:56,057 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 556 to 515. [2018-11-23 04:27:56,058 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 515 states. [2018-11-23 04:27:56,059 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 515 states to 515 states and 655 transitions. [2018-11-23 04:27:56,059 INFO L78 Accepts]: Start accepts. Automaton has 515 states and 655 transitions. Word has length 73 [2018-11-23 04:27:56,059 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:27:56,059 INFO L480 AbstractCegarLoop]: Abstraction has 515 states and 655 transitions. [2018-11-23 04:27:56,059 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 04:27:56,059 INFO L276 IsEmpty]: Start isEmpty. Operand 515 states and 655 transitions. [2018-11-23 04:27:56,060 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2018-11-23 04:27:56,060 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:27:56,060 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:27:56,061 INFO L423 AbstractCegarLoop]: === Iteration 13 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:27:56,061 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:27:56,061 INFO L82 PathProgramCache]: Analyzing trace with hash 504713725, now seen corresponding path program 1 times [2018-11-23 04:27:56,061 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:27:56,061 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:27:56,062 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:56,062 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:56,062 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:56,069 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:56,119 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 39 proven. 7 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2018-11-23 04:27:56,120 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 04:27:56,120 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer/z3 Starting monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 04:27:56,133 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:56,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:56,154 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 04:27:56,204 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 46 proven. 0 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2018-11-23 04:27:56,220 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-23 04:27:56,220 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [4] imperfect sequences [4] total 7 [2018-11-23 04:27:56,220 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 04:27:56,221 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 04:27:56,221 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2018-11-23 04:27:56,221 INFO L87 Difference]: Start difference. First operand 515 states and 655 transitions. Second operand 7 states. [2018-11-23 04:27:56,853 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:27:56,853 INFO L93 Difference]: Finished difference Result 2686 states and 3320 transitions. [2018-11-23 04:27:56,854 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2018-11-23 04:27:56,854 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 73 [2018-11-23 04:27:56,855 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:27:56,860 INFO L225 Difference]: With dead ends: 2686 [2018-11-23 04:27:56,860 INFO L226 Difference]: Without dead ends: 2032 [2018-11-23 04:27:56,862 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 82 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 57 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=90, Invalid=252, Unknown=0, NotChecked=0, Total=342 [2018-11-23 04:27:56,863 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2032 states. [2018-11-23 04:27:56,895 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2032 to 875. [2018-11-23 04:27:56,895 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 875 states. [2018-11-23 04:27:56,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 875 states to 875 states and 1190 transitions. [2018-11-23 04:27:56,898 INFO L78 Accepts]: Start accepts. Automaton has 875 states and 1190 transitions. Word has length 73 [2018-11-23 04:27:56,898 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:27:56,898 INFO L480 AbstractCegarLoop]: Abstraction has 875 states and 1190 transitions. [2018-11-23 04:27:56,898 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 04:27:56,898 INFO L276 IsEmpty]: Start isEmpty. Operand 875 states and 1190 transitions. [2018-11-23 04:27:56,899 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2018-11-23 04:27:56,899 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:27:56,900 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:27:56,900 INFO L423 AbstractCegarLoop]: === Iteration 14 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:27:56,900 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:27:56,900 INFO L82 PathProgramCache]: Analyzing trace with hash 250453056, now seen corresponding path program 1 times [2018-11-23 04:27:56,900 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:27:56,901 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:27:56,901 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:56,901 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:56,901 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:27:56,909 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:56,974 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 63 proven. 7 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2018-11-23 04:27:56,975 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-23 04:27:56,975 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /tmp/vcloud-vcloud-master/worker/working_dir_177c746e-5eed-405b-8b3e-98b68fd57a8a/bin-2019/uautomizer/z3 Starting monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-23 04:27:56,987 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:27:57,006 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:27:57,008 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-23 04:27:57,832 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 64 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2018-11-23 04:27:57,846 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-23 04:27:57,847 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [7] total 8 [2018-11-23 04:27:57,847 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-23 04:27:57,847 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-23 04:27:57,847 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=31, Unknown=3, NotChecked=0, Total=56 [2018-11-23 04:27:57,847 INFO L87 Difference]: Start difference. First operand 875 states and 1190 transitions. Second operand 8 states. [2018-11-23 04:27:59,433 WARN L180 SmtUtils]: Spent 241.00 ms on a formula simplification that was a NOOP. DAG size: 14 [2018-11-23 04:28:06,309 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:28:06,309 INFO L93 Difference]: Finished difference Result 2160 states and 2923 transitions. [2018-11-23 04:28:06,309 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 04:28:06,309 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 79 [2018-11-23 04:28:06,310 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:28:06,313 INFO L225 Difference]: With dead ends: 2160 [2018-11-23 04:28:06,313 INFO L226 Difference]: Without dead ends: 1256 [2018-11-23 04:28:06,314 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 80 SyntacticMatches, 3 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=45, Invalid=62, Unknown=3, NotChecked=0, Total=110 [2018-11-23 04:28:06,316 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1256 states. [2018-11-23 04:28:06,348 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1256 to 1077. [2018-11-23 04:28:06,348 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 1077 states. [2018-11-23 04:28:06,350 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1077 states to 1077 states and 1464 transitions. [2018-11-23 04:28:06,350 INFO L78 Accepts]: Start accepts. Automaton has 1077 states and 1464 transitions. Word has length 79 [2018-11-23 04:28:06,350 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:28:06,351 INFO L480 AbstractCegarLoop]: Abstraction has 1077 states and 1464 transitions. [2018-11-23 04:28:06,351 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-23 04:28:06,351 INFO L276 IsEmpty]: Start isEmpty. Operand 1077 states and 1464 transitions. [2018-11-23 04:28:06,352 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2018-11-23 04:28:06,352 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:28:06,352 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:28:06,353 INFO L423 AbstractCegarLoop]: === Iteration 15 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:28:06,353 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:28:06,353 INFO L82 PathProgramCache]: Analyzing trace with hash 315577703, now seen corresponding path program 1 times [2018-11-23 04:28:06,353 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:28:06,353 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:28:06,354 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:28:06,354 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:28:06,354 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:28:06,369 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:28:06,437 INFO L134 CoverageAnalysis]: Checked inductivity of 88 backedges. 13 proven. 0 refuted. 0 times theorem prover too weak. 75 trivial. 0 not checked. [2018-11-23 04:28:06,438 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:28:06,438 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2018-11-23 04:28:06,438 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 04:28:06,438 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 04:28:06,438 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2018-11-23 04:28:06,439 INFO L87 Difference]: Start difference. First operand 1077 states and 1464 transitions. Second operand 7 states. [2018-11-23 04:28:06,881 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:28:06,881 INFO L93 Difference]: Finished difference Result 3386 states and 4572 transitions. [2018-11-23 04:28:06,882 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2018-11-23 04:28:06,882 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 85 [2018-11-23 04:28:06,883 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:28:06,888 INFO L225 Difference]: With dead ends: 3386 [2018-11-23 04:28:06,889 INFO L226 Difference]: Without dead ends: 2166 [2018-11-23 04:28:06,891 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=45, Invalid=111, Unknown=0, NotChecked=0, Total=156 [2018-11-23 04:28:06,895 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2166 states. [2018-11-23 04:28:06,945 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2166 to 1875. [2018-11-23 04:28:06,946 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 1875 states. [2018-11-23 04:28:06,949 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1875 states to 1875 states and 2525 transitions. [2018-11-23 04:28:06,949 INFO L78 Accepts]: Start accepts. Automaton has 1875 states and 2525 transitions. Word has length 85 [2018-11-23 04:28:06,950 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:28:06,950 INFO L480 AbstractCegarLoop]: Abstraction has 1875 states and 2525 transitions. [2018-11-23 04:28:06,950 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 04:28:06,950 INFO L276 IsEmpty]: Start isEmpty. Operand 1875 states and 2525 transitions. [2018-11-23 04:28:06,951 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2018-11-23 04:28:06,951 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:28:06,951 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:28:06,952 INFO L423 AbstractCegarLoop]: === Iteration 16 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:28:06,952 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:28:06,952 INFO L82 PathProgramCache]: Analyzing trace with hash 119876796, now seen corresponding path program 1 times [2018-11-23 04:28:06,952 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:28:06,952 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:28:06,953 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:28:06,953 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:28:06,953 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:28:06,966 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:28:07,046 INFO L134 CoverageAnalysis]: Checked inductivity of 88 backedges. 22 proven. 0 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2018-11-23 04:28:07,047 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:28:07,047 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2018-11-23 04:28:07,047 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2018-11-23 04:28:07,047 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2018-11-23 04:28:07,047 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2018-11-23 04:28:07,047 INFO L87 Difference]: Start difference. First operand 1875 states and 2525 transitions. Second operand 7 states. [2018-11-23 04:28:07,621 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:28:07,621 INFO L93 Difference]: Finished difference Result 6058 states and 8063 transitions. [2018-11-23 04:28:07,622 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2018-11-23 04:28:07,622 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 85 [2018-11-23 04:28:07,622 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:28:07,643 INFO L225 Difference]: With dead ends: 6058 [2018-11-23 04:28:07,643 INFO L226 Difference]: Without dead ends: 3866 [2018-11-23 04:28:07,646 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=73, Unknown=0, NotChecked=0, Total=110 [2018-11-23 04:28:07,648 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3866 states. [2018-11-23 04:28:07,730 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3866 to 3244. [2018-11-23 04:28:07,730 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3244 states. [2018-11-23 04:28:07,735 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3244 states to 3244 states and 4298 transitions. [2018-11-23 04:28:07,736 INFO L78 Accepts]: Start accepts. Automaton has 3244 states and 4298 transitions. Word has length 85 [2018-11-23 04:28:07,736 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:28:07,736 INFO L480 AbstractCegarLoop]: Abstraction has 3244 states and 4298 transitions. [2018-11-23 04:28:07,736 INFO L481 AbstractCegarLoop]: Interpolant automaton has 7 states. [2018-11-23 04:28:07,736 INFO L276 IsEmpty]: Start isEmpty. Operand 3244 states and 4298 transitions. [2018-11-23 04:28:07,738 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 89 [2018-11-23 04:28:07,738 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:28:07,739 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:28:07,739 INFO L423 AbstractCegarLoop]: === Iteration 17 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:28:07,740 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:28:07,740 INFO L82 PathProgramCache]: Analyzing trace with hash 1216906630, now seen corresponding path program 1 times [2018-11-23 04:28:07,740 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:28:07,740 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:28:07,740 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:28:07,740 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:28:07,741 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:28:07,764 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:28:07,852 INFO L134 CoverageAnalysis]: Checked inductivity of 88 backedges. 13 proven. 0 refuted. 0 times theorem prover too weak. 75 trivial. 0 not checked. [2018-11-23 04:28:07,852 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:28:07,852 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2018-11-23 04:28:07,853 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-23 04:28:07,853 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-23 04:28:07,853 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=41, Unknown=0, NotChecked=0, Total=56 [2018-11-23 04:28:07,853 INFO L87 Difference]: Start difference. First operand 3244 states and 4298 transitions. Second operand 8 states. [2018-11-23 04:28:08,523 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:28:08,523 INFO L93 Difference]: Finished difference Result 7283 states and 9614 transitions. [2018-11-23 04:28:08,524 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2018-11-23 04:28:08,524 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 88 [2018-11-23 04:28:08,524 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:28:08,530 INFO L225 Difference]: With dead ends: 7283 [2018-11-23 04:28:08,530 INFO L226 Difference]: Without dead ends: 3818 [2018-11-23 04:28:08,534 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 34 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=63, Invalid=209, Unknown=0, NotChecked=0, Total=272 [2018-11-23 04:28:08,536 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3818 states. [2018-11-23 04:28:08,586 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3818 to 3473. [2018-11-23 04:28:08,586 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3473 states. [2018-11-23 04:28:08,590 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3473 states to 3473 states and 4577 transitions. [2018-11-23 04:28:08,590 INFO L78 Accepts]: Start accepts. Automaton has 3473 states and 4577 transitions. Word has length 88 [2018-11-23 04:28:08,590 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:28:08,590 INFO L480 AbstractCegarLoop]: Abstraction has 3473 states and 4577 transitions. [2018-11-23 04:28:08,590 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-23 04:28:08,590 INFO L276 IsEmpty]: Start isEmpty. Operand 3473 states and 4577 transitions. [2018-11-23 04:28:08,592 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 89 [2018-11-23 04:28:08,592 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:28:08,593 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:28:08,593 INFO L423 AbstractCegarLoop]: === Iteration 18 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:28:08,593 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:28:08,593 INFO L82 PathProgramCache]: Analyzing trace with hash -1107684138, now seen corresponding path program 1 times [2018-11-23 04:28:08,593 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:28:08,593 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:28:08,594 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:28:08,594 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:28:08,594 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:28:08,606 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:28:08,675 INFO L134 CoverageAnalysis]: Checked inductivity of 88 backedges. 22 proven. 0 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2018-11-23 04:28:08,675 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:28:08,675 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2018-11-23 04:28:08,675 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2018-11-23 04:28:08,675 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2018-11-23 04:28:08,675 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=41, Unknown=0, NotChecked=0, Total=56 [2018-11-23 04:28:08,676 INFO L87 Difference]: Start difference. First operand 3473 states and 4577 transitions. Second operand 8 states. [2018-11-23 04:28:09,191 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:28:09,191 INFO L93 Difference]: Finished difference Result 7999 states and 10507 transitions. [2018-11-23 04:28:09,192 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2018-11-23 04:28:09,192 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 88 [2018-11-23 04:28:09,192 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:28:09,198 INFO L225 Difference]: With dead ends: 7999 [2018-11-23 04:28:09,198 INFO L226 Difference]: Without dead ends: 4656 [2018-11-23 04:28:09,201 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 14 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=51, Invalid=131, Unknown=0, NotChecked=0, Total=182 [2018-11-23 04:28:09,204 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4656 states. [2018-11-23 04:28:09,270 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4656 to 4321. [2018-11-23 04:28:09,270 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4321 states. [2018-11-23 04:28:09,274 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4321 states to 4321 states and 5597 transitions. [2018-11-23 04:28:09,274 INFO L78 Accepts]: Start accepts. Automaton has 4321 states and 5597 transitions. Word has length 88 [2018-11-23 04:28:09,275 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:28:09,275 INFO L480 AbstractCegarLoop]: Abstraction has 4321 states and 5597 transitions. [2018-11-23 04:28:09,275 INFO L481 AbstractCegarLoop]: Interpolant automaton has 8 states. [2018-11-23 04:28:09,275 INFO L276 IsEmpty]: Start isEmpty. Operand 4321 states and 5597 transitions. [2018-11-23 04:28:09,277 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 91 [2018-11-23 04:28:09,277 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:28:09,277 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:28:09,277 INFO L423 AbstractCegarLoop]: === Iteration 19 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:28:09,278 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:28:09,278 INFO L82 PathProgramCache]: Analyzing trace with hash 1919875554, now seen corresponding path program 1 times [2018-11-23 04:28:09,278 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:28:09,278 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:28:09,278 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:28:09,279 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:28:09,279 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:28:09,291 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:28:09,368 INFO L134 CoverageAnalysis]: Checked inductivity of 88 backedges. 13 proven. 0 refuted. 0 times theorem prover too weak. 75 trivial. 0 not checked. [2018-11-23 04:28:09,368 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:28:09,368 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2018-11-23 04:28:09,368 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-23 04:28:09,368 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-23 04:28:09,368 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2018-11-23 04:28:09,369 INFO L87 Difference]: Start difference. First operand 4321 states and 5597 transitions. Second operand 9 states. [2018-11-23 04:28:09,907 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:28:09,907 INFO L93 Difference]: Finished difference Result 5314 states and 6833 transitions. [2018-11-23 04:28:09,908 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-23 04:28:09,908 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 90 [2018-11-23 04:28:09,908 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:28:09,915 INFO L225 Difference]: With dead ends: 5314 [2018-11-23 04:28:09,915 INFO L226 Difference]: Without dead ends: 3099 [2018-11-23 04:28:09,918 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=119, Unknown=0, NotChecked=0, Total=156 [2018-11-23 04:28:09,920 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3099 states. [2018-11-23 04:28:09,981 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3099 to 2949. [2018-11-23 04:28:09,981 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2949 states. [2018-11-23 04:28:09,983 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2949 states to 2949 states and 3766 transitions. [2018-11-23 04:28:09,984 INFO L78 Accepts]: Start accepts. Automaton has 2949 states and 3766 transitions. Word has length 90 [2018-11-23 04:28:09,984 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:28:09,984 INFO L480 AbstractCegarLoop]: Abstraction has 2949 states and 3766 transitions. [2018-11-23 04:28:09,984 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-23 04:28:09,984 INFO L276 IsEmpty]: Start isEmpty. Operand 2949 states and 3766 transitions. [2018-11-23 04:28:09,986 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 91 [2018-11-23 04:28:09,986 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:28:09,986 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:28:09,986 INFO L423 AbstractCegarLoop]: === Iteration 20 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:28:09,986 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:28:09,986 INFO L82 PathProgramCache]: Analyzing trace with hash -1198243630, now seen corresponding path program 1 times [2018-11-23 04:28:09,986 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:28:09,986 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:28:09,987 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:28:09,987 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:28:09,987 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:28:09,998 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-23 04:28:10,073 INFO L134 CoverageAnalysis]: Checked inductivity of 88 backedges. 22 proven. 0 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2018-11-23 04:28:10,073 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-23 04:28:10,073 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2018-11-23 04:28:10,073 INFO L459 AbstractCegarLoop]: Interpolant automaton has 9 states [2018-11-23 04:28:10,073 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2018-11-23 04:28:10,073 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2018-11-23 04:28:10,074 INFO L87 Difference]: Start difference. First operand 2949 states and 3766 transitions. Second operand 9 states. [2018-11-23 04:28:10,533 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-23 04:28:10,533 INFO L93 Difference]: Finished difference Result 3319 states and 4198 transitions. [2018-11-23 04:28:10,534 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-23 04:28:10,534 INFO L78 Accepts]: Start accepts. Automaton has 9 states. Word has length 90 [2018-11-23 04:28:10,534 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-23 04:28:10,536 INFO L225 Difference]: With dead ends: 3319 [2018-11-23 04:28:10,536 INFO L226 Difference]: Without dead ends: 1754 [2018-11-23 04:28:10,537 INFO L631 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=42, Invalid=114, Unknown=0, NotChecked=0, Total=156 [2018-11-23 04:28:10,538 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1754 states. [2018-11-23 04:28:10,562 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1754 to 1667. [2018-11-23 04:28:10,562 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 1667 states. [2018-11-23 04:28:10,563 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1667 states to 1667 states and 2081 transitions. [2018-11-23 04:28:10,563 INFO L78 Accepts]: Start accepts. Automaton has 1667 states and 2081 transitions. Word has length 90 [2018-11-23 04:28:10,563 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-23 04:28:10,563 INFO L480 AbstractCegarLoop]: Abstraction has 1667 states and 2081 transitions. [2018-11-23 04:28:10,563 INFO L481 AbstractCegarLoop]: Interpolant automaton has 9 states. [2018-11-23 04:28:10,563 INFO L276 IsEmpty]: Start isEmpty. Operand 1667 states and 2081 transitions. [2018-11-23 04:28:10,565 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 97 [2018-11-23 04:28:10,565 INFO L394 BasicCegarLoop]: Found error trace [2018-11-23 04:28:10,565 INFO L402 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-23 04:28:10,565 INFO L423 AbstractCegarLoop]: === Iteration 21 === [mp_addErr18ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr35ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr0ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr29ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr9ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr12ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr17ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr33ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr8ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr37ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr21ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr27ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr28ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr7ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr11ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr5ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr22ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr25ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr3ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr14ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr31ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr19ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr23ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr6ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr34ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr1ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr26ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr20ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr16ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr10ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr24ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr32ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr2ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr13ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr36ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr4ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr15ASSERT_VIOLATIONINTEGER_OVERFLOW, mp_addErr30ASSERT_VIOLATIONINTEGER_OVERFLOW]=== [2018-11-23 04:28:10,565 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-23 04:28:10,565 INFO L82 PathProgramCache]: Analyzing trace with hash 2132168340, now seen corresponding path program 1 times [2018-11-23 04:28:10,566 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-23 04:28:10,566 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-23 04:28:10,566 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:28:10,566 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-23 04:28:10,566 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-23 04:28:10,586 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 04:28:10,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-11-23 04:28:10,625 INFO L469 BasicCegarLoop]: Counterexample might be feasible ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.RCFGBacktranslator [?] CALL call ULTIMATE.init(); [?] assume true; [?] RET #274#return; [?] CALL call #t~ret3 := main(); [?] havoc ~a~0;havoc ~b~0;havoc ~r~1;~a~0 := #t~nondet0;havoc #t~nondet0;~b~0 := #t~nondet1;havoc #t~nondet1; VAL [main_~a~0=0, main_~b~0=(- 2147483649)] [?] CALL call #t~ret2 := mp_add(~a~0, ~b~0); VAL [|mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] ~a := #in~a;~b := #in~b;havoc ~a0~0;havoc ~a1~0;havoc ~a2~0;havoc ~a3~0;havoc ~b0~0;havoc ~b1~0;havoc ~b2~0;havoc ~b3~0;havoc ~r0~0;havoc ~r1~0;havoc ~r2~0;havoc ~r3~0;havoc ~carry~0;havoc ~partial_sum~0;havoc ~r~0;havoc ~i~0;havoc ~na~0;havoc ~nb~0;~a0~0 := ~a;~a1~0 := ~a / 256;~a2~0 := ~a / 65536;~a3~0 := ~a / 16777216;~b0~0 := ~b;~b1~0 := ~b / 256;~b2~0 := ~b / 65536;~b3~0 := ~b / 16777216;~na~0 := 4; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~na~0=4, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 0 == ~a3~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~na~0=4, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~na~0 % 256 - 1 <= 2147483647; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~na~0=4, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~na~0 % 256 - 1 >= -2147483648;~na~0 := ~na~0 % 256 - 1; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~na~0=3, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 0 == ~a2~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~na~0=3, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~na~0 % 256 - 1 <= 2147483647; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~na~0=3, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~na~0 % 256 - 1 >= -2147483648;~na~0 := ~na~0 % 256 - 1; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~na~0=2, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 0 == ~a1~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~na~0=2, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~na~0 % 256 - 1 <= 2147483647; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~na~0=2, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~na~0 % 256 - 1 >= -2147483648;~na~0 := ~na~0 % 256 - 1; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~na~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] ~nb~0 := 4; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~na~0=1, mp_add_~nb~0=4, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(0 == ~b3~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~na~0=1, mp_add_~nb~0=4, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] ~carry~0 := 0;~i~0 := 0; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536);~partial_sum~0 := ~carry~0;~carry~0 := 0; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~i~0 % 256 < ~na~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 0 == ~i~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~partial_sum~0 % 65536 + ~a0~0 % 256 <= 2147483647; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~partial_sum~0 % 65536 + ~a0~0 % 256 >= -2147483648;~partial_sum~0 := ~partial_sum~0 % 65536 + ~a0~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(1 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(2 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(3 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~i~0 % 256 < ~nb~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 0 == ~i~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~partial_sum~0 % 65536 + ~b0~0 % 256 <= 2147483647; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~partial_sum~0 % 65536 + ~b0~0 % 256 >= -2147483648;~partial_sum~0 := ~partial_sum~0 % 65536 + ~b0~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=255, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(1 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=255, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(2 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=255, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(3 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=255, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~partial_sum~0 % 65536 > 254;~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255);~carry~0 := 1; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 0 == ~i~0 % 256;~r0~0 := ~partial_sum~0; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(1 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(2 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(3 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 1 + ~i~0 % 256 <= 2147483647; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=0, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 1 + ~i~0 % 256 >= -2147483648;~i~0 := 1 + ~i~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=1, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536);~partial_sum~0 := ~carry~0;~carry~0 := 0; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=1, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(~i~0 % 256 < ~na~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=1, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~i~0 % 256 < ~nb~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=1, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(0 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=1, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 1 == ~i~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=1, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~partial_sum~0 % 65536 + ~b1~0 % 256 <= 2147483647; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=1, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~partial_sum~0 % 65536 + ~b1~0 % 256 >= -2147483648;~partial_sum~0 := ~partial_sum~0 % 65536 + ~b1~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=1, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=256, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(2 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=1, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=256, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(3 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=1, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=256, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~partial_sum~0 % 65536 > 254;~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255);~carry~0 := 1; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=1, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(0 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=1, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~r0~0=1, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 1 == ~i~0 % 256;~r1~0 := ~partial_sum~0; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=1, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(2 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=1, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(3 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=1, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 1 + ~i~0 % 256 <= 2147483647; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=1, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 1 + ~i~0 % 256 >= -2147483648;~i~0 := 1 + ~i~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=2, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536);~partial_sum~0 := ~carry~0;~carry~0 := 0; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=2, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(~i~0 % 256 < ~na~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=2, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~i~0 % 256 < ~nb~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=2, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(0 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=2, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(1 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=2, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 2 == ~i~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=2, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~partial_sum~0 % 65536 + ~b2~0 % 256 <= 2147483647; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=2, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~partial_sum~0 % 65536 + ~b2~0 % 256 >= -2147483648;~partial_sum~0 := ~partial_sum~0 % 65536 + ~b2~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=2, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=256, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(3 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=2, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=256, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~partial_sum~0 % 65536 > 254;~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255);~carry~0 := 1; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=2, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(0 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=2, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(1 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=2, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~r0~0=1, mp_add_~r1~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 2 == ~i~0 % 256;~r2~0 := ~partial_sum~0; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=2, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(3 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=2, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 1 + ~i~0 % 256 <= 2147483647; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=2, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 1 + ~i~0 % 256 >= -2147483648;~i~0 := 1 + ~i~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=1, mp_add_~i~0=3, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=0, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536);~partial_sum~0 := ~carry~0;~carry~0 := 0; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=3, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(~i~0 % 256 < ~na~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=3, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~i~0 % 256 < ~nb~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=3, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(0 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=3, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(1 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=3, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(2 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=3, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 3 == ~i~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=3, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~partial_sum~0 % 65536 + ~b3~0 % 256 <= 2147483647; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=3, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=1, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume ~partial_sum~0 % 65536 + ~b3~0 % 256 >= -2147483648;~partial_sum~0 := ~partial_sum~0 % 65536 + ~b3~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=3, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=128, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(~partial_sum~0 % 65536 > 254); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=3, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=128, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(0 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=3, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=128, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(1 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=3, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=128, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(2 == ~i~0 % 256); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=3, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=128, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 3 == ~i~0 % 256;~r3~0 := ~partial_sum~0; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=3, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=128, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, mp_add_~r3~0=128, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 1 + ~i~0 % 256 <= 2147483647; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=3, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=128, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, mp_add_~r3~0=128, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 1 + ~i~0 % 256 >= -2147483648;~i~0 := 1 + ~i~0 % 256; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=4, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=128, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, mp_add_~r3~0=128, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=4, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=128, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, mp_add_~r3~0=128, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(~i~0 % 256 < 4); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=4, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=128, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, mp_add_~r3~0=128, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 256 * (~r1~0 % 256) <= 2147483647; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=4, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=128, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, mp_add_~r3~0=128, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 256 * (~r1~0 % 256) >= -2147483648; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=4, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=128, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, mp_add_~r3~0=128, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 65536 * (~r2~0 % 256) <= 2147483647; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=4, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=128, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, mp_add_~r3~0=128, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume 65536 * (~r2~0 % 256) >= -2147483648; VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=4, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=128, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, mp_add_~r3~0=128, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] assume !(16777216 * (~r3~0 % 256) <= 2147483647); VAL [mp_add_~a=0, mp_add_~a0~0=0, mp_add_~a1~0=0, mp_add_~a2~0=0, mp_add_~a3~0=0, mp_add_~b=(- 2147483649), mp_add_~b0~0=(- 2147483649), mp_add_~b1~0=(- 8388609), mp_add_~b2~0=(- 32769), mp_add_~b3~0=(- 129), mp_add_~carry~0=0, mp_add_~i~0=4, mp_add_~na~0=1, mp_add_~nb~0=4, mp_add_~partial_sum~0=128, mp_add_~r0~0=1, mp_add_~r1~0=0, mp_add_~r2~0=0, mp_add_~r3~0=128, |mp_add_#in~a|=0, |mp_add_#in~b|=(- 2147483649)] [?] CALL call ULTIMATE.init(); [?] ensures true; [?] RET call ULTIMATE.init(); [?] CALL call #t~ret3 := main(); [L105] havoc ~a~0; [L105] havoc ~b~0; [L105] havoc ~r~1; [L107] ~a~0 := #t~nondet0; [L107] havoc #t~nondet0; [L108] ~b~0 := #t~nondet1; [L108] havoc #t~nondet1; VAL [~a~0=0, ~b~0=-2147483649] [L110] CALL call #t~ret2 := mp_add(~a~0, ~b~0); VAL [#in~a=0, #in~b=-2147483649] [L21-L100] ~a := #in~a; [L21-L100] ~b := #in~b; [L23] havoc ~a0~0; [L23] havoc ~a1~0; [L23] havoc ~a2~0; [L23] havoc ~a3~0; [L24] havoc ~b0~0; [L24] havoc ~b1~0; [L24] havoc ~b2~0; [L24] havoc ~b3~0; [L25] havoc ~r0~0; [L25] havoc ~r1~0; [L25] havoc ~r2~0; [L25] havoc ~r3~0; [L26] havoc ~carry~0; [L27] havoc ~partial_sum~0; [L28] havoc ~r~0; [L29] havoc ~i~0; [L30] havoc ~na~0; [L30] havoc ~nb~0; [L31] ~a0~0 := ~a; [L32] ~a1~0 := ~a / 256; [L33] ~a2~0 := ~a / 65536; [L34] ~a3~0 := ~a / 16777216; [L35] ~b0~0 := ~b; [L36] ~b1~0 := ~b / 256; [L37] ~b2~0 := ~b / 65536; [L38] ~b3~0 := ~b / 16777216; [L39] ~na~0 := 4; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L40-L48] assume 0 == ~a3~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L41] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L41] assert ~na~0 % 256 - 1 >= -2147483648; [L41] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L42-L47] assume 0 == ~a2~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L43] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L43] assert ~na~0 % 256 - 1 >= -2147483648; [L43] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L44-L46] assume 0 == ~a1~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L45] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L45] assert ~na~0 % 256 - 1 >= -2147483648; [L45] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1] [L49] ~nb~0 := 4; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1, ~nb~0=4] [L50-L58] assume !(0 == ~b3~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1, ~nb~0=4] [L59] ~carry~0 := 0; [L60] ~i~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4] [L61-L86] assume !!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536); [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L64-L69] assume ~i~0 % 256 < ~na~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] assume 0 == ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] assert ~partial_sum~0 % 65536 + ~a0~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] assert ~partial_sum~0 % 65536 + ~a0~0 % 256 >= -2147483648; [L65] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~a0~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L66] assume !(1 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L67] assume !(2 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L68] assume !(3 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L70-L75] assume ~i~0 % 256 < ~nb~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] assume 0 == ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] assert ~partial_sum~0 % 65536 + ~b0~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] assert ~partial_sum~0 % 65536 + ~b0~0 % 256 >= -2147483648; [L71] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b0~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L72] assume !(1 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L73] assume !(2 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L74] assume !(3 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L76-L79] assume ~partial_sum~0 % 65536 > 254; [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4] [L80] assume 0 == ~i~0 % 256; [L80] ~r0~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L81] assume !(1 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L82] assume !(2 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L83] assume !(3 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L61-L86] assume !!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536); [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L64-L69] assume !(~i~0 % 256 < ~na~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L70-L75] assume ~i~0 % 256 < ~nb~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L71] assume !(0 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] assume 1 == ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] assert ~partial_sum~0 % 65536 + ~b1~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] assert ~partial_sum~0 % 65536 + ~b1~0 % 256 >= -2147483648; [L72] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b1~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L73] assume !(2 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L74] assume !(3 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L76-L79] assume ~partial_sum~0 % 65536 > 254; [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~r0~0=1] [L80] assume !(0 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~r0~0=1] [L81] assume 1 == ~i~0 % 256; [L81] ~r1~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L82] assume !(2 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L83] assume !(3 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L61-L86] assume !!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536); [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L64-L69] assume !(~i~0 % 256 < ~na~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L70-L75] assume ~i~0 % 256 < ~nb~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L71] assume !(0 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L72] assume !(1 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] assume 2 == ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] assert ~partial_sum~0 % 65536 + ~b2~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] assert ~partial_sum~0 % 65536 + ~b2~0 % 256 >= -2147483648; [L73] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b2~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1, ~r1~0=0] [L74] assume !(3 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1, ~r1~0=0] [L76-L79] assume ~partial_sum~0 % 65536 > 254; [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L80] assume !(0 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L81] assume !(1 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L82] assume 2 == ~i~0 % 256; [L82] ~r2~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L83] assume !(3 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L61-L86] assume !!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536); [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L64-L69] assume !(~i~0 % 256 < ~na~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L70-L75] assume ~i~0 % 256 < ~nb~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L71] assume !(0 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L72] assume !(1 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L73] assume !(2 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] assume 3 == ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] assert ~partial_sum~0 % 65536 + ~b3~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] assert ~partial_sum~0 % 65536 + ~b3~0 % 256 >= -2147483648; [L74] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b3~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L76-L79] assume !(~partial_sum~0 % 65536 > 254); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L80] assume !(0 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L81] assume !(1 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L82] assume !(2 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L83] assume 3 == ~i~0 % 256; [L83] ~r3~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L61-L86] assume !((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L88-L95] assume !(~i~0 % 256 < 4); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 256 * (~r1~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 256 * (~r1~0 % 256) >= -2147483648; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 65536 * (~r2~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 65536 * (~r2~0 % 256) >= -2147483648; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 16777216 * (~r3~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.preprocessor.BoogiePreprocessorBacktranslator [?] CALL call ULTIMATE.init(); [?] ensures true; [?] RET call ULTIMATE.init(); [?] CALL call #t~ret3 := main(); [L105] havoc ~a~0; [L105] havoc ~b~0; [L105] havoc ~r~1; [L107] ~a~0 := #t~nondet0; [L107] havoc #t~nondet0; [L108] ~b~0 := #t~nondet1; [L108] havoc #t~nondet1; VAL [~a~0=0, ~b~0=-2147483649] [L110] CALL call #t~ret2 := mp_add(~a~0, ~b~0); VAL [#in~a=0, #in~b=-2147483649] [L21-L100] ~a := #in~a; [L21-L100] ~b := #in~b; [L23] havoc ~a0~0; [L23] havoc ~a1~0; [L23] havoc ~a2~0; [L23] havoc ~a3~0; [L24] havoc ~b0~0; [L24] havoc ~b1~0; [L24] havoc ~b2~0; [L24] havoc ~b3~0; [L25] havoc ~r0~0; [L25] havoc ~r1~0; [L25] havoc ~r2~0; [L25] havoc ~r3~0; [L26] havoc ~carry~0; [L27] havoc ~partial_sum~0; [L28] havoc ~r~0; [L29] havoc ~i~0; [L30] havoc ~na~0; [L30] havoc ~nb~0; [L31] ~a0~0 := ~a; [L32] ~a1~0 := ~a / 256; [L33] ~a2~0 := ~a / 65536; [L34] ~a3~0 := ~a / 16777216; [L35] ~b0~0 := ~b; [L36] ~b1~0 := ~b / 256; [L37] ~b2~0 := ~b / 65536; [L38] ~b3~0 := ~b / 16777216; [L39] ~na~0 := 4; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L40-L48] assume 0 == ~a3~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L41] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L41] assert ~na~0 % 256 - 1 >= -2147483648; [L41] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L42-L47] assume 0 == ~a2~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L43] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L43] assert ~na~0 % 256 - 1 >= -2147483648; [L43] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L44-L46] assume 0 == ~a1~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L45] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L45] assert ~na~0 % 256 - 1 >= -2147483648; [L45] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1] [L49] ~nb~0 := 4; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1, ~nb~0=4] [L50-L58] assume !(0 == ~b3~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1, ~nb~0=4] [L59] ~carry~0 := 0; [L60] ~i~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4] [L61-L86] assume !!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536); [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L64-L69] assume ~i~0 % 256 < ~na~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] assume 0 == ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] assert ~partial_sum~0 % 65536 + ~a0~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] assert ~partial_sum~0 % 65536 + ~a0~0 % 256 >= -2147483648; [L65] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~a0~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L66] assume !(1 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L67] assume !(2 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L68] assume !(3 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L70-L75] assume ~i~0 % 256 < ~nb~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] assume 0 == ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] assert ~partial_sum~0 % 65536 + ~b0~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] assert ~partial_sum~0 % 65536 + ~b0~0 % 256 >= -2147483648; [L71] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b0~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L72] assume !(1 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L73] assume !(2 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L74] assume !(3 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L76-L79] assume ~partial_sum~0 % 65536 > 254; [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4] [L80] assume 0 == ~i~0 % 256; [L80] ~r0~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L81] assume !(1 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L82] assume !(2 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L83] assume !(3 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L61-L86] assume !!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536); [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L64-L69] assume !(~i~0 % 256 < ~na~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L70-L75] assume ~i~0 % 256 < ~nb~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L71] assume !(0 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] assume 1 == ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] assert ~partial_sum~0 % 65536 + ~b1~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] assert ~partial_sum~0 % 65536 + ~b1~0 % 256 >= -2147483648; [L72] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b1~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L73] assume !(2 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L74] assume !(3 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L76-L79] assume ~partial_sum~0 % 65536 > 254; [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~r0~0=1] [L80] assume !(0 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~r0~0=1] [L81] assume 1 == ~i~0 % 256; [L81] ~r1~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L82] assume !(2 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L83] assume !(3 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L61-L86] assume !!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536); [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L64-L69] assume !(~i~0 % 256 < ~na~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L70-L75] assume ~i~0 % 256 < ~nb~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L71] assume !(0 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L72] assume !(1 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] assume 2 == ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] assert ~partial_sum~0 % 65536 + ~b2~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] assert ~partial_sum~0 % 65536 + ~b2~0 % 256 >= -2147483648; [L73] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b2~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1, ~r1~0=0] [L74] assume !(3 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1, ~r1~0=0] [L76-L79] assume ~partial_sum~0 % 65536 > 254; [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L80] assume !(0 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L81] assume !(1 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L82] assume 2 == ~i~0 % 256; [L82] ~r2~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L83] assume !(3 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L61-L86] assume !!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536); [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L64-L69] assume !(~i~0 % 256 < ~na~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L70-L75] assume ~i~0 % 256 < ~nb~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L71] assume !(0 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L72] assume !(1 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L73] assume !(2 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] assume 3 == ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] assert ~partial_sum~0 % 65536 + ~b3~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] assert ~partial_sum~0 % 65536 + ~b3~0 % 256 >= -2147483648; [L74] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b3~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L76-L79] assume !(~partial_sum~0 % 65536 > 254); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L80] assume !(0 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L81] assume !(1 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L82] assume !(2 == ~i~0 % 256); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L83] assume 3 == ~i~0 % 256; [L83] ~r3~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L61-L86] assume !((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L88-L95] assume !(~i~0 % 256 < 4); VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 256 * (~r1~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 256 * (~r1~0 % 256) >= -2147483648; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 65536 * (~r2~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 65536 * (~r2~0 % 256) >= -2147483648; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 16777216 * (~r3~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [?] CALL call ULTIMATE.init(); [?] RET call ULTIMATE.init(); [?] CALL call #t~ret3 := main(); [L105] havoc ~a~0; [L105] havoc ~b~0; [L105] havoc ~r~1; [L107] ~a~0 := #t~nondet0; [L107] havoc #t~nondet0; [L108] ~b~0 := #t~nondet1; [L108] havoc #t~nondet1; VAL [~a~0=0, ~b~0=-2147483649] [L110] CALL call #t~ret2 := mp_add(~a~0, ~b~0); VAL [#in~a=0, #in~b=-2147483649] [L21-L100] ~a := #in~a; [L21-L100] ~b := #in~b; [L23] havoc ~a0~0; [L23] havoc ~a1~0; [L23] havoc ~a2~0; [L23] havoc ~a3~0; [L24] havoc ~b0~0; [L24] havoc ~b1~0; [L24] havoc ~b2~0; [L24] havoc ~b3~0; [L25] havoc ~r0~0; [L25] havoc ~r1~0; [L25] havoc ~r2~0; [L25] havoc ~r3~0; [L26] havoc ~carry~0; [L27] havoc ~partial_sum~0; [L28] havoc ~r~0; [L29] havoc ~i~0; [L30] havoc ~na~0; [L30] havoc ~nb~0; [L31] ~a0~0 := ~a; [L32] ~a1~0 := ~a / 256; [L33] ~a2~0 := ~a / 65536; [L34] ~a3~0 := ~a / 16777216; [L35] ~b0~0 := ~b; [L36] ~b1~0 := ~b / 256; [L37] ~b2~0 := ~b / 65536; [L38] ~b3~0 := ~b / 16777216; [L39] ~na~0 := 4; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L40] COND TRUE 0 == ~a3~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L41] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L41] assert ~na~0 % 256 - 1 >= -2147483648; [L41] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L42] COND TRUE 0 == ~a2~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L43] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L43] assert ~na~0 % 256 - 1 >= -2147483648; [L43] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L44] COND TRUE 0 == ~a1~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L45] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L45] assert ~na~0 % 256 - 1 >= -2147483648; [L45] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1] [L49] ~nb~0 := 4; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1, ~nb~0=4] [L50] COND FALSE !(0 == ~b3~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1, ~nb~0=4] [L59] ~carry~0 := 0; [L60] ~i~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4] [L61-L86] COND FALSE !(!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536)) [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L64] COND TRUE ~i~0 % 256 < ~na~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] COND TRUE 0 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] assert ~partial_sum~0 % 65536 + ~a0~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] assert ~partial_sum~0 % 65536 + ~a0~0 % 256 >= -2147483648; [L65] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~a0~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L66] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L67] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L68] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L70] COND TRUE ~i~0 % 256 < ~nb~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] COND TRUE 0 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] assert ~partial_sum~0 % 65536 + ~b0~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] assert ~partial_sum~0 % 65536 + ~b0~0 % 256 >= -2147483648; [L71] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b0~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L72] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L73] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L74] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L76] COND TRUE ~partial_sum~0 % 65536 > 254 [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4] [L80] COND TRUE 0 == ~i~0 % 256 [L80] ~r0~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L81] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L82] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L83] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L61-L86] COND FALSE !(!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536)) [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L64] COND FALSE !(~i~0 % 256 < ~na~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L70] COND TRUE ~i~0 % 256 < ~nb~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L71] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] COND TRUE 1 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] assert ~partial_sum~0 % 65536 + ~b1~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] assert ~partial_sum~0 % 65536 + ~b1~0 % 256 >= -2147483648; [L72] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b1~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L73] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L74] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L76] COND TRUE ~partial_sum~0 % 65536 > 254 [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~r0~0=1] [L80] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~r0~0=1] [L81] COND TRUE 1 == ~i~0 % 256 [L81] ~r1~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L82] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L83] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L61-L86] COND FALSE !(!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536)) [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L64] COND FALSE !(~i~0 % 256 < ~na~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L70] COND TRUE ~i~0 % 256 < ~nb~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L71] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L72] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] COND TRUE 2 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] assert ~partial_sum~0 % 65536 + ~b2~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] assert ~partial_sum~0 % 65536 + ~b2~0 % 256 >= -2147483648; [L73] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b2~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1, ~r1~0=0] [L74] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1, ~r1~0=0] [L76] COND TRUE ~partial_sum~0 % 65536 > 254 [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L80] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L81] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L82] COND TRUE 2 == ~i~0 % 256 [L82] ~r2~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L83] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L61-L86] COND FALSE !(!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536)) [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L64] COND FALSE !(~i~0 % 256 < ~na~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L70] COND TRUE ~i~0 % 256 < ~nb~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L71] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L72] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L73] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] COND TRUE 3 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] assert ~partial_sum~0 % 65536 + ~b3~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] assert ~partial_sum~0 % 65536 + ~b3~0 % 256 >= -2147483648; [L74] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b3~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L76] COND FALSE !(~partial_sum~0 % 65536 > 254) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L80] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L81] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L82] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L83] COND TRUE 3 == ~i~0 % 256 [L83] ~r3~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L61-L86] COND TRUE !((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L88-L95] COND TRUE !(~i~0 % 256 < 4) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 256 * (~r1~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 256 * (~r1~0 % 256) >= -2147483648; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 65536 * (~r2~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 65536 * (~r2~0 % 256) >= -2147483648; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 16777216 * (~r3~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] ----- ----- class de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator [?] CALL call ULTIMATE.init(); [?] RET call ULTIMATE.init(); [?] CALL call #t~ret3 := main(); [L105] havoc ~a~0; [L105] havoc ~b~0; [L105] havoc ~r~1; [L107] ~a~0 := #t~nondet0; [L107] havoc #t~nondet0; [L108] ~b~0 := #t~nondet1; [L108] havoc #t~nondet1; VAL [~a~0=0, ~b~0=-2147483649] [L110] CALL call #t~ret2 := mp_add(~a~0, ~b~0); VAL [#in~a=0, #in~b=-2147483649] [L21-L100] ~a := #in~a; [L21-L100] ~b := #in~b; [L23] havoc ~a0~0; [L23] havoc ~a1~0; [L23] havoc ~a2~0; [L23] havoc ~a3~0; [L24] havoc ~b0~0; [L24] havoc ~b1~0; [L24] havoc ~b2~0; [L24] havoc ~b3~0; [L25] havoc ~r0~0; [L25] havoc ~r1~0; [L25] havoc ~r2~0; [L25] havoc ~r3~0; [L26] havoc ~carry~0; [L27] havoc ~partial_sum~0; [L28] havoc ~r~0; [L29] havoc ~i~0; [L30] havoc ~na~0; [L30] havoc ~nb~0; [L31] ~a0~0 := ~a; [L32] ~a1~0 := ~a / 256; [L33] ~a2~0 := ~a / 65536; [L34] ~a3~0 := ~a / 16777216; [L35] ~b0~0 := ~b; [L36] ~b1~0 := ~b / 256; [L37] ~b2~0 := ~b / 65536; [L38] ~b3~0 := ~b / 16777216; [L39] ~na~0 := 4; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L40] COND TRUE 0 == ~a3~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L41] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L41] assert ~na~0 % 256 - 1 >= -2147483648; [L41] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L42] COND TRUE 0 == ~a2~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L43] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L43] assert ~na~0 % 256 - 1 >= -2147483648; [L43] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L44] COND TRUE 0 == ~a1~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L45] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L45] assert ~na~0 % 256 - 1 >= -2147483648; [L45] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1] [L49] ~nb~0 := 4; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1, ~nb~0=4] [L50] COND FALSE !(0 == ~b3~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1, ~nb~0=4] [L59] ~carry~0 := 0; [L60] ~i~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4] [L61-L86] COND FALSE !(!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536)) [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L64] COND TRUE ~i~0 % 256 < ~na~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] COND TRUE 0 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] assert ~partial_sum~0 % 65536 + ~a0~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] assert ~partial_sum~0 % 65536 + ~a0~0 % 256 >= -2147483648; [L65] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~a0~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L66] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L67] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L68] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L70] COND TRUE ~i~0 % 256 < ~nb~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] COND TRUE 0 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] assert ~partial_sum~0 % 65536 + ~b0~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] assert ~partial_sum~0 % 65536 + ~b0~0 % 256 >= -2147483648; [L71] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b0~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L72] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L73] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L74] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L76] COND TRUE ~partial_sum~0 % 65536 > 254 [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4] [L80] COND TRUE 0 == ~i~0 % 256 [L80] ~r0~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L81] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L82] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L83] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L61-L86] COND FALSE !(!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536)) [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L64] COND FALSE !(~i~0 % 256 < ~na~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L70] COND TRUE ~i~0 % 256 < ~nb~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L71] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] COND TRUE 1 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] assert ~partial_sum~0 % 65536 + ~b1~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] assert ~partial_sum~0 % 65536 + ~b1~0 % 256 >= -2147483648; [L72] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b1~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L73] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L74] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L76] COND TRUE ~partial_sum~0 % 65536 > 254 [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~r0~0=1] [L80] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~r0~0=1] [L81] COND TRUE 1 == ~i~0 % 256 [L81] ~r1~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L82] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L83] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L61-L86] COND FALSE !(!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536)) [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L64] COND FALSE !(~i~0 % 256 < ~na~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L70] COND TRUE ~i~0 % 256 < ~nb~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L71] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L72] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] COND TRUE 2 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] assert ~partial_sum~0 % 65536 + ~b2~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] assert ~partial_sum~0 % 65536 + ~b2~0 % 256 >= -2147483648; [L73] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b2~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1, ~r1~0=0] [L74] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1, ~r1~0=0] [L76] COND TRUE ~partial_sum~0 % 65536 > 254 [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L80] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L81] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L82] COND TRUE 2 == ~i~0 % 256 [L82] ~r2~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L83] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L61-L86] COND FALSE !(!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536)) [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L64] COND FALSE !(~i~0 % 256 < ~na~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L70] COND TRUE ~i~0 % 256 < ~nb~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L71] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L72] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L73] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] COND TRUE 3 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] assert ~partial_sum~0 % 65536 + ~b3~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] assert ~partial_sum~0 % 65536 + ~b3~0 % 256 >= -2147483648; [L74] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b3~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L76] COND FALSE !(~partial_sum~0 % 65536 > 254) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L80] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L81] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L82] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L83] COND TRUE 3 == ~i~0 % 256 [L83] ~r3~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L61-L86] COND TRUE !((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L88-L95] COND TRUE !(~i~0 % 256 < 4) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 256 * (~r1~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 256 * (~r1~0 % 256) >= -2147483648; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 65536 * (~r2~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 65536 * (~r2~0 % 256) >= -2147483648; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 16777216 * (~r3~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [?] CALL call ULTIMATE.init(); [?] RET call ULTIMATE.init(); [?] CALL call #t~ret3 := main(); [L105] havoc ~a~0; [L105] havoc ~b~0; [L105] havoc ~r~1; [L107] ~a~0 := #t~nondet0; [L107] havoc #t~nondet0; [L108] ~b~0 := #t~nondet1; [L108] havoc #t~nondet1; VAL [~a~0=0, ~b~0=-2147483649] [L110] CALL call #t~ret2 := mp_add(~a~0, ~b~0); VAL [#in~a=0, #in~b=-2147483649] [L21-L100] ~a := #in~a; [L21-L100] ~b := #in~b; [L23] havoc ~a0~0; [L23] havoc ~a1~0; [L23] havoc ~a2~0; [L23] havoc ~a3~0; [L24] havoc ~b0~0; [L24] havoc ~b1~0; [L24] havoc ~b2~0; [L24] havoc ~b3~0; [L25] havoc ~r0~0; [L25] havoc ~r1~0; [L25] havoc ~r2~0; [L25] havoc ~r3~0; [L26] havoc ~carry~0; [L27] havoc ~partial_sum~0; [L28] havoc ~r~0; [L29] havoc ~i~0; [L30] havoc ~na~0; [L30] havoc ~nb~0; [L31] ~a0~0 := ~a; [L32] ~a1~0 := ~a / 256; [L33] ~a2~0 := ~a / 65536; [L34] ~a3~0 := ~a / 16777216; [L35] ~b0~0 := ~b; [L36] ~b1~0 := ~b / 256; [L37] ~b2~0 := ~b / 65536; [L38] ~b3~0 := ~b / 16777216; [L39] ~na~0 := 4; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L40] COND TRUE 0 == ~a3~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L41] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L41] assert ~na~0 % 256 - 1 >= -2147483648; [L41] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L42] COND TRUE 0 == ~a2~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L43] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L43] assert ~na~0 % 256 - 1 >= -2147483648; [L43] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L44] COND TRUE 0 == ~a1~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L45] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L45] assert ~na~0 % 256 - 1 >= -2147483648; [L45] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1] [L49] ~nb~0 := 4; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1, ~nb~0=4] [L50] COND FALSE !(0 == ~b3~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1, ~nb~0=4] [L59] ~carry~0 := 0; [L60] ~i~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4] [L61-L86] COND FALSE !(!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536)) [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L64] COND TRUE ~i~0 % 256 < ~na~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] COND TRUE 0 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] assert ~partial_sum~0 % 65536 + ~a0~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] assert ~partial_sum~0 % 65536 + ~a0~0 % 256 >= -2147483648; [L65] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~a0~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L66] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L67] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L68] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L70] COND TRUE ~i~0 % 256 < ~nb~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] COND TRUE 0 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] assert ~partial_sum~0 % 65536 + ~b0~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] assert ~partial_sum~0 % 65536 + ~b0~0 % 256 >= -2147483648; [L71] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b0~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L72] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L73] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L74] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L76] COND TRUE ~partial_sum~0 % 65536 > 254 [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4] [L80] COND TRUE 0 == ~i~0 % 256 [L80] ~r0~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L81] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L82] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L83] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L61-L86] COND FALSE !(!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536)) [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L64] COND FALSE !(~i~0 % 256 < ~na~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L70] COND TRUE ~i~0 % 256 < ~nb~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L71] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] COND TRUE 1 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] assert ~partial_sum~0 % 65536 + ~b1~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] assert ~partial_sum~0 % 65536 + ~b1~0 % 256 >= -2147483648; [L72] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b1~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L73] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L74] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L76] COND TRUE ~partial_sum~0 % 65536 > 254 [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~r0~0=1] [L80] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~r0~0=1] [L81] COND TRUE 1 == ~i~0 % 256 [L81] ~r1~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L82] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L83] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L61-L86] COND FALSE !(!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536)) [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L64] COND FALSE !(~i~0 % 256 < ~na~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L70] COND TRUE ~i~0 % 256 < ~nb~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L71] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L72] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] COND TRUE 2 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] assert ~partial_sum~0 % 65536 + ~b2~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] assert ~partial_sum~0 % 65536 + ~b2~0 % 256 >= -2147483648; [L73] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b2~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1, ~r1~0=0] [L74] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1, ~r1~0=0] [L76] COND TRUE ~partial_sum~0 % 65536 > 254 [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L80] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L81] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L82] COND TRUE 2 == ~i~0 % 256 [L82] ~r2~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L83] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L61-L86] COND FALSE !(!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536)) [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L64] COND FALSE !(~i~0 % 256 < ~na~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L70] COND TRUE ~i~0 % 256 < ~nb~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L71] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L72] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L73] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] COND TRUE 3 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] assert ~partial_sum~0 % 65536 + ~b3~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] assert ~partial_sum~0 % 65536 + ~b3~0 % 256 >= -2147483648; [L74] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b3~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L76] COND FALSE !(~partial_sum~0 % 65536 > 254) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L80] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L81] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L82] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L83] COND TRUE 3 == ~i~0 % 256 [L83] ~r3~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L61-L86] COND TRUE !((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L88-L95] COND TRUE !(~i~0 % 256 < 4) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 256 * (~r1~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 256 * (~r1~0 % 256) >= -2147483648; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 65536 * (~r2~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 65536 * (~r2~0 % 256) >= -2147483648; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 16777216 * (~r3~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] ----- ----- class de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieBacktranslator [?] CALL call ULTIMATE.init(); [?] RET call ULTIMATE.init(); [?] CALL call #t~ret3 := main(); [L105] havoc ~a~0; [L105] havoc ~b~0; [L105] havoc ~r~1; [L107] ~a~0 := #t~nondet0; [L107] havoc #t~nondet0; [L108] ~b~0 := #t~nondet1; [L108] havoc #t~nondet1; VAL [~a~0=0, ~b~0=-2147483649] [L110] CALL call #t~ret2 := mp_add(~a~0, ~b~0); VAL [#in~a=0, #in~b=-2147483649] [L21-L100] ~a := #in~a; [L21-L100] ~b := #in~b; [L23] havoc ~a0~0; [L23] havoc ~a1~0; [L23] havoc ~a2~0; [L23] havoc ~a3~0; [L24] havoc ~b0~0; [L24] havoc ~b1~0; [L24] havoc ~b2~0; [L24] havoc ~b3~0; [L25] havoc ~r0~0; [L25] havoc ~r1~0; [L25] havoc ~r2~0; [L25] havoc ~r3~0; [L26] havoc ~carry~0; [L27] havoc ~partial_sum~0; [L28] havoc ~r~0; [L29] havoc ~i~0; [L30] havoc ~na~0; [L30] havoc ~nb~0; [L31] ~a0~0 := ~a; [L32] ~a1~0 := ~a / 256; [L33] ~a2~0 := ~a / 65536; [L34] ~a3~0 := ~a / 16777216; [L35] ~b0~0 := ~b; [L36] ~b1~0 := ~b / 256; [L37] ~b2~0 := ~b / 65536; [L38] ~b3~0 := ~b / 16777216; [L39] ~na~0 := 4; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L40] COND TRUE 0 == ~a3~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L41] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=4] [L41] assert ~na~0 % 256 - 1 >= -2147483648; [L41] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L42] COND TRUE 0 == ~a2~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L43] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=3] [L43] assert ~na~0 % 256 - 1 >= -2147483648; [L43] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L44] COND TRUE 0 == ~a1~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L45] assert ~na~0 % 256 - 1 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=2] [L45] assert ~na~0 % 256 - 1 >= -2147483648; [L45] ~na~0 := ~na~0 % 256 - 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1] [L49] ~nb~0 := 4; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1, ~nb~0=4] [L50] COND FALSE !(0 == ~b3~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~na~0=1, ~nb~0=4] [L59] ~carry~0 := 0; [L60] ~i~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4] [L61-L86] COND FALSE !(!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536)) [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L64] COND TRUE ~i~0 % 256 < ~na~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] COND TRUE 0 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] assert ~partial_sum~0 % 65536 + ~a0~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L65] assert ~partial_sum~0 % 65536 + ~a0~0 % 256 >= -2147483648; [L65] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~a0~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L66] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L67] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L68] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L70] COND TRUE ~i~0 % 256 < ~nb~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] COND TRUE 0 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] assert ~partial_sum~0 % 65536 + ~b0~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=0] [L71] assert ~partial_sum~0 % 65536 + ~b0~0 % 256 >= -2147483648; [L71] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b0~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L72] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L73] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L74] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=255] [L76] COND TRUE ~partial_sum~0 % 65536 > 254 [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4] [L80] COND TRUE 0 == ~i~0 % 256 [L80] ~r0~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L81] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L82] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L83] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=0, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L61-L86] COND FALSE !(!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536)) [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L64] COND FALSE !(~i~0 % 256 < ~na~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L70] COND TRUE ~i~0 % 256 < ~nb~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L71] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] COND TRUE 1 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] assert ~partial_sum~0 % 65536 + ~b1~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1] [L72] assert ~partial_sum~0 % 65536 + ~b1~0 % 256 >= -2147483648; [L72] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b1~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L73] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L74] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1] [L76] COND TRUE ~partial_sum~0 % 65536 > 254 [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~r0~0=1] [L80] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~r0~0=1] [L81] COND TRUE 1 == ~i~0 % 256 [L81] ~r1~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L82] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L83] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=1, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0] [L61-L86] COND FALSE !(!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536)) [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L64] COND FALSE !(~i~0 % 256 < ~na~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L70] COND TRUE ~i~0 % 256 < ~nb~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L71] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L72] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] COND TRUE 2 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] assert ~partial_sum~0 % 65536 + ~b2~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0] [L73] assert ~partial_sum~0 % 65536 + ~b2~0 % 256 >= -2147483648; [L73] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b2~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1, ~r1~0=0] [L74] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=256, ~r0~0=1, ~r1~0=0] [L76] COND TRUE ~partial_sum~0 % 65536 > 254 [L77] ~partial_sum~0 := ~bitwiseAnd(~partial_sum~0 % 65536, 255); [L78] ~carry~0 := 1; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L80] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L81] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~r0~0=1, ~r1~0=0] [L82] COND TRUE 2 == ~i~0 % 256 [L82] ~r2~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L83] COND FALSE !(3 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=2, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=1, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=0, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L61-L86] COND FALSE !(!((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536)) [L62] ~partial_sum~0 := ~carry~0; [L63] ~carry~0 := 0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L64] COND FALSE !(~i~0 % 256 < ~na~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L70] COND TRUE ~i~0 % 256 < ~nb~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L71] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L72] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L73] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] COND TRUE 3 == ~i~0 % 256 VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] assert ~partial_sum~0 % 65536 + ~b3~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=1, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L74] assert ~partial_sum~0 % 65536 + ~b3~0 % 256 >= -2147483648; [L74] ~partial_sum~0 := ~partial_sum~0 % 65536 + ~b3~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L76] COND FALSE !(~partial_sum~0 % 65536 > 254) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L80] COND FALSE !(0 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L81] COND FALSE !(1 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L82] COND FALSE !(2 == ~i~0 % 256) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0] [L83] COND TRUE 3 == ~i~0 % 256 [L83] ~r3~0 := ~partial_sum~0; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L85] assert 1 + ~i~0 % 256 <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=3, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L85] assert 1 + ~i~0 % 256 >= -2147483648; [L85] ~i~0 := 1 + ~i~0 % 256; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L61-L86] COND TRUE !((~i~0 % 256 < ~na~0 % 256 || ~i~0 % 256 < ~nb~0 % 256) || 0 != ~carry~0 % 65536) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L88-L95] COND TRUE !(~i~0 % 256 < 4) VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 256 * (~r1~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 256 * (~r1~0 % 256) >= -2147483648; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 65536 * (~r2~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 65536 * (~r2~0 % 256) >= -2147483648; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L97] assert 16777216 * (~r3~0 % 256) <= 2147483647; VAL [#in~a=0, #in~b=-2147483649, ~a=0, ~a0~0=0, ~a1~0=0, ~a2~0=0, ~a3~0=0, ~b=-2147483649, ~b0~0=-2147483649, ~b1~0=-8388609, ~b2~0=-32769, ~b3~0=-129, ~carry~0=0, ~i~0=4, ~na~0=1, ~nb~0=4, ~partial_sum~0=128, ~r0~0=1, ~r1~0=0, ~r2~0=0, ~r3~0=128] [L105] unsigned int a, b, r; [L107] a = __VERIFIER_nondet_uint() [L108] b = __VERIFIER_nondet_uint() [L110] CALL mp_add(a, b) VAL [\old(a)=0, \old(b)=2147483647] [L23] unsigned char a0, a1, a2, a3; [L24] unsigned char b0, b1, b2, b3; [L25] unsigned char r0, r1, r2, r3; [L26] unsigned short carry; [L27] unsigned short partial_sum; [L28] unsigned int r; [L29] unsigned char i; [L30] unsigned char na, nb; [L31] a0 = a [L32] a1 = a >> 8 [L33] a2 = a >> 16U [L34] a3 = a >> 24U [L35] b0 = b [L36] b1 = b >> 8U [L37] b2 = b >> 16U [L38] b3 = b >> 24U [L39] na = (unsigned char)4 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=4] [L40] COND TRUE a3 == (unsigned char)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=4] [L41] EXPR na - 1 [L41] na = na - 1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=3] [L42] COND TRUE a2 == (unsigned char)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=3] [L43] EXPR na - 1 [L43] na = na - 1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=2] [L44] COND TRUE a1 == (unsigned char)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=2] [L45] EXPR na - 1 [L45] na = na - 1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=1] [L49] nb = (unsigned char)4 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=1, nb=4] [L50] COND FALSE !(b3 == (unsigned char)0) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=1, nb=4] [L59] carry = (unsigned short)0 [L60] i = (unsigned char)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4] [L61] COND TRUE (i < na) || (i < nb) || (carry != (unsigned short)0) [L62] partial_sum = carry [L63] carry = (unsigned short)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L64] COND TRUE i < na VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L65] COND TRUE i == (unsigned char)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L65] EXPR partial_sum + a0 [L65] partial_sum = partial_sum + a0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L66] COND FALSE !(i == (unsigned char)1) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L67] COND FALSE !(i == (unsigned char)2) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L68] COND FALSE !(i == (unsigned char)3) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L70] COND TRUE i < nb VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L71] COND TRUE i == (unsigned char)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L71] EXPR partial_sum + b0 [L71] partial_sum = partial_sum + b0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=255] [L72] COND FALSE !(i == (unsigned char)1) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=255] [L73] COND FALSE !(i == (unsigned char)2) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=255] [L74] COND FALSE !(i == (unsigned char)3) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=255] [L76] COND TRUE partial_sum > ((unsigned char)254) [L77] partial_sum = partial_sum & ((unsigned char)255) [L78] carry = (unsigned short)1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=0, na=1, nb=4] [L80] COND TRUE i == (unsigned char)0 [L80] r0 = (unsigned char)partial_sum VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=0, na=1, nb=4, partial_sum=1, r0=1] [L81] COND FALSE !(i == (unsigned char)1) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=0, na=1, nb=4, partial_sum=1, r0=1] [L82] COND FALSE !(i == (unsigned char)2) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=0, na=1, nb=4, partial_sum=1, r0=1] [L83] COND FALSE !(i == (unsigned char)3) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=0, na=1, nb=4, partial_sum=1, r0=1] [L85] EXPR i + (unsigned char)1 [L85] i = i + (unsigned char)1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=1, na=1, nb=4, partial_sum=1, r0=1] [L61] COND TRUE (i < na) || (i < nb) || (carry != (unsigned short)0) [L62] partial_sum = carry [L63] carry = (unsigned short)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=1, na=1, nb=4, partial_sum=1, r0=1] [L64] COND FALSE !(i < na) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=1, na=1, nb=4, partial_sum=1, r0=1] [L70] COND TRUE i < nb VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=1, na=1, nb=4, partial_sum=1, r0=1] [L71] COND FALSE !(i == (unsigned char)0) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=1, na=1, nb=4, partial_sum=1, r0=1] [L72] COND TRUE i == (unsigned char)1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=1, na=1, nb=4, partial_sum=1, r0=1] [L72] EXPR partial_sum + b1 [L72] partial_sum = partial_sum + b1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=1, na=1, nb=4, partial_sum=256, r0=1] [L73] COND FALSE !(i == (unsigned char)2) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=1, na=1, nb=4, partial_sum=256, r0=1] [L74] COND FALSE !(i == (unsigned char)3) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=1, na=1, nb=4, partial_sum=256, r0=1] [L76] COND TRUE partial_sum > ((unsigned char)254) [L77] partial_sum = partial_sum & ((unsigned char)255) [L78] carry = (unsigned short)1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=1, na=1, nb=4, r0=1] [L80] COND FALSE !(i == (unsigned char)0) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=1, na=1, nb=4, r0=1] [L81] COND TRUE i == (unsigned char)1 [L81] r1 = (unsigned char)partial_sum VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=1, na=1, nb=4, partial_sum=0, r0=1, r1=0] [L82] COND FALSE !(i == (unsigned char)2) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=1, na=1, nb=4, partial_sum=0, r0=1, r1=0] [L83] COND FALSE !(i == (unsigned char)3) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=1, na=1, nb=4, partial_sum=0, r0=1, r1=0] [L85] EXPR i + (unsigned char)1 [L85] i = i + (unsigned char)1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=2, na=1, nb=4, partial_sum=0, r0=1, r1=0] [L61] COND TRUE (i < na) || (i < nb) || (carry != (unsigned short)0) [L62] partial_sum = carry [L63] carry = (unsigned short)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=2, na=1, nb=4, partial_sum=1, r0=1, r1=0] [L64] COND FALSE !(i < na) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=2, na=1, nb=4, partial_sum=1, r0=1, r1=0] [L70] COND TRUE i < nb VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=2, na=1, nb=4, partial_sum=1, r0=1, r1=0] [L71] COND FALSE !(i == (unsigned char)0) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=2, na=1, nb=4, partial_sum=1, r0=1, r1=0] [L72] COND FALSE !(i == (unsigned char)1) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=2, na=1, nb=4, partial_sum=1, r0=1, r1=0] [L73] COND TRUE i == (unsigned char)2 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=2, na=1, nb=4, partial_sum=1, r0=1, r1=0] [L73] EXPR partial_sum + b2 [L73] partial_sum = partial_sum + b2 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=2, na=1, nb=4, partial_sum=256, r0=1, r1=0] [L74] COND FALSE !(i == (unsigned char)3) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=2, na=1, nb=4, partial_sum=256, r0=1, r1=0] [L76] COND TRUE partial_sum > ((unsigned char)254) [L77] partial_sum = partial_sum & ((unsigned char)255) [L78] carry = (unsigned short)1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=2, na=1, nb=4, r0=1, r1=0] [L80] COND FALSE !(i == (unsigned char)0) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=2, na=1, nb=4, r0=1, r1=0] [L81] COND FALSE !(i == (unsigned char)1) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=2, na=1, nb=4, r0=1, r1=0] [L82] COND TRUE i == (unsigned char)2 [L82] r2 = (unsigned char)partial_sum VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=2, na=1, nb=4, partial_sum=0, r0=1, r1=0, r2=0] [L83] COND FALSE !(i == (unsigned char)3) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=2, na=1, nb=4, partial_sum=0, r0=1, r1=0, r2=0] [L85] EXPR i + (unsigned char)1 [L85] i = i + (unsigned char)1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=3, na=1, nb=4, partial_sum=0, r0=1, r1=0, r2=0] [L61] COND TRUE (i < na) || (i < nb) || (carry != (unsigned short)0) [L62] partial_sum = carry [L63] carry = (unsigned short)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=1, r0=1, r1=0, r2=0] [L64] COND FALSE !(i < na) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=1, r0=1, r1=0, r2=0] [L70] COND TRUE i < nb VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=1, r0=1, r1=0, r2=0] [L71] COND FALSE !(i == (unsigned char)0) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=1, r0=1, r1=0, r2=0] [L72] COND FALSE !(i == (unsigned char)1) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=1, r0=1, r1=0, r2=0] [L73] COND FALSE !(i == (unsigned char)2) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=1, r0=1, r1=0, r2=0] [L74] COND TRUE i == (unsigned char)3 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=1, r0=1, r1=0, r2=0] [L74] EXPR partial_sum + b3 [L74] partial_sum = partial_sum + b3 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0] [L76] COND FALSE !(partial_sum > ((unsigned char)254)) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0] [L80] COND FALSE !(i == (unsigned char)0) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0] [L81] COND FALSE !(i == (unsigned char)1) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0] [L82] COND FALSE !(i == (unsigned char)2) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0] [L83] COND TRUE i == (unsigned char)3 [L83] r3 = (unsigned char)partial_sum VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0, r3=128] [L85] EXPR i + (unsigned char)1 [L85] i = i + (unsigned char)1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=4, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0, r3=128] [L61] COND FALSE !((i < na) || (i < nb) || (carry != (unsigned short)0)) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=4, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0, r3=128] [L88] COND FALSE !(i < (unsigned char)4) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=4, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0, r3=128] [L97] r1 << 8U VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=4, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0, r3=128] [L97] r2 << 16U VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=4, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0, r3=128] [L97] r3 << 24U VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=4, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0, r3=128] ----- [2018-11-23 04:28:11,098 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 23.11 04:28:11 BoogieIcfgContainer [2018-11-23 04:28:11,098 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-11-23 04:28:11,099 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2018-11-23 04:28:11,099 INFO L271 PluginConnector]: Initializing Witness Printer... [2018-11-23 04:28:11,107 INFO L276 PluginConnector]: Witness Printer initialized [2018-11-23 04:28:11,107 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.11 04:27:52" (3/4) ... [2018-11-23 04:28:11,110 INFO L147 WitnessPrinter]: No result that supports witness generation found [2018-11-23 04:28:11,110 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2018-11-23 04:28:11,111 INFO L168 Benchmark]: Toolchain (without parser) took 18927.55 ms. Allocated memory was 1.0 GB in the beginning and 1.3 GB in the end (delta: 239.1 MB). Free memory was 953.9 MB in the beginning and 994.4 MB in the end (delta: -40.5 MB). Peak memory consumption was 198.6 MB. Max. memory is 11.5 GB. [2018-11-23 04:28:11,112 INFO L168 Benchmark]: CDTParser took 0.15 ms. Allocated memory is still 1.0 GB. Free memory is still 980.2 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 04:28:11,112 INFO L168 Benchmark]: CACSL2BoogieTranslator took 181.91 ms. Allocated memory is still 1.0 GB. Free memory was 953.9 MB in the beginning and 940.3 MB in the end (delta: 13.6 MB). Peak memory consumption was 13.6 MB. Max. memory is 11.5 GB. [2018-11-23 04:28:11,112 INFO L168 Benchmark]: Boogie Procedure Inliner took 20.12 ms. Allocated memory is still 1.0 GB. Free memory is still 940.3 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 04:28:11,113 INFO L168 Benchmark]: Boogie Preprocessor took 61.59 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 140.5 MB). Free memory was 940.3 MB in the beginning and 1.1 GB in the end (delta: -197.8 MB). Peak memory consumption was 14.2 MB. Max. memory is 11.5 GB. [2018-11-23 04:28:11,113 INFO L168 Benchmark]: RCFGBuilder took 363.49 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 30.0 MB). Peak memory consumption was 30.0 MB. Max. memory is 11.5 GB. [2018-11-23 04:28:11,114 INFO L168 Benchmark]: TraceAbstraction took 18285.71 ms. Allocated memory was 1.2 GB in the beginning and 1.3 GB in the end (delta: 98.6 MB). Free memory was 1.1 GB in the beginning and 994.4 MB in the end (delta: 113.7 MB). Peak memory consumption was 212.3 MB. Max. memory is 11.5 GB. [2018-11-23 04:28:11,114 INFO L168 Benchmark]: Witness Printer took 11.52 ms. Allocated memory is still 1.3 GB. Free memory is still 994.4 MB. There was no memory consumed. Max. memory is 11.5 GB. [2018-11-23 04:28:11,116 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.15 ms. Allocated memory is still 1.0 GB. Free memory is still 980.2 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 181.91 ms. Allocated memory is still 1.0 GB. Free memory was 953.9 MB in the beginning and 940.3 MB in the end (delta: 13.6 MB). Peak memory consumption was 13.6 MB. Max. memory is 11.5 GB. * Boogie Procedure Inliner took 20.12 ms. Allocated memory is still 1.0 GB. Free memory is still 940.3 MB. There was no memory consumed. Max. memory is 11.5 GB. * Boogie Preprocessor took 61.59 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 140.5 MB). Free memory was 940.3 MB in the beginning and 1.1 GB in the end (delta: -197.8 MB). Peak memory consumption was 14.2 MB. Max. memory is 11.5 GB. * RCFGBuilder took 363.49 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 30.0 MB). Peak memory consumption was 30.0 MB. Max. memory is 11.5 GB. * TraceAbstraction took 18285.71 ms. Allocated memory was 1.2 GB in the beginning and 1.3 GB in the end (delta: 98.6 MB). Free memory was 1.1 GB in the beginning and 994.4 MB in the end (delta: 113.7 MB). Peak memory consumption was 212.3 MB. Max. memory is 11.5 GB. * Witness Printer took 11.52 ms. Allocated memory is still 1.3 GB. Free memory is still 994.4 MB. There was no memory consumed. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - UnprovableResult [Line: 97]: Unable to prove that integer overflow can never occur Unable to prove that integer overflow can never occur Reason: overapproximation of bitwiseAnd at line 77. Possible FailurePath: [L105] unsigned int a, b, r; [L107] a = __VERIFIER_nondet_uint() [L108] b = __VERIFIER_nondet_uint() [L110] CALL mp_add(a, b) VAL [\old(a)=0, \old(b)=2147483647] [L23] unsigned char a0, a1, a2, a3; [L24] unsigned char b0, b1, b2, b3; [L25] unsigned char r0, r1, r2, r3; [L26] unsigned short carry; [L27] unsigned short partial_sum; [L28] unsigned int r; [L29] unsigned char i; [L30] unsigned char na, nb; [L31] a0 = a [L32] a1 = a >> 8 [L33] a2 = a >> 16U [L34] a3 = a >> 24U [L35] b0 = b [L36] b1 = b >> 8U [L37] b2 = b >> 16U [L38] b3 = b >> 24U [L39] na = (unsigned char)4 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=4] [L40] COND TRUE a3 == (unsigned char)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=4] [L41] EXPR na - 1 [L41] na = na - 1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=3] [L42] COND TRUE a2 == (unsigned char)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=3] [L43] EXPR na - 1 [L43] na = na - 1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=2] [L44] COND TRUE a1 == (unsigned char)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=2] [L45] EXPR na - 1 [L45] na = na - 1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=1] [L49] nb = (unsigned char)4 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=1, nb=4] [L50] COND FALSE !(b3 == (unsigned char)0) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, na=1, nb=4] [L59] carry = (unsigned short)0 [L60] i = (unsigned char)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4] [L61] COND TRUE (i < na) || (i < nb) || (carry != (unsigned short)0) [L62] partial_sum = carry [L63] carry = (unsigned short)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L64] COND TRUE i < na VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L65] COND TRUE i == (unsigned char)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L65] EXPR partial_sum + a0 [L65] partial_sum = partial_sum + a0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L66] COND FALSE !(i == (unsigned char)1) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L67] COND FALSE !(i == (unsigned char)2) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L68] COND FALSE !(i == (unsigned char)3) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L70] COND TRUE i < nb VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L71] COND TRUE i == (unsigned char)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=0] [L71] EXPR partial_sum + b0 [L71] partial_sum = partial_sum + b0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=255] [L72] COND FALSE !(i == (unsigned char)1) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=255] [L73] COND FALSE !(i == (unsigned char)2) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=255] [L74] COND FALSE !(i == (unsigned char)3) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=0, na=1, nb=4, partial_sum=255] [L76] COND TRUE partial_sum > ((unsigned char)254) [L77] partial_sum = partial_sum & ((unsigned char)255) [L78] carry = (unsigned short)1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=0, na=1, nb=4] [L80] COND TRUE i == (unsigned char)0 [L80] r0 = (unsigned char)partial_sum VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=0, na=1, nb=4, partial_sum=1, r0=1] [L81] COND FALSE !(i == (unsigned char)1) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=0, na=1, nb=4, partial_sum=1, r0=1] [L82] COND FALSE !(i == (unsigned char)2) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=0, na=1, nb=4, partial_sum=1, r0=1] [L83] COND FALSE !(i == (unsigned char)3) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=0, na=1, nb=4, partial_sum=1, r0=1] [L85] EXPR i + (unsigned char)1 [L85] i = i + (unsigned char)1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=1, na=1, nb=4, partial_sum=1, r0=1] [L61] COND TRUE (i < na) || (i < nb) || (carry != (unsigned short)0) [L62] partial_sum = carry [L63] carry = (unsigned short)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=1, na=1, nb=4, partial_sum=1, r0=1] [L64] COND FALSE !(i < na) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=1, na=1, nb=4, partial_sum=1, r0=1] [L70] COND TRUE i < nb VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=1, na=1, nb=4, partial_sum=1, r0=1] [L71] COND FALSE !(i == (unsigned char)0) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=1, na=1, nb=4, partial_sum=1, r0=1] [L72] COND TRUE i == (unsigned char)1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=1, na=1, nb=4, partial_sum=1, r0=1] [L72] EXPR partial_sum + b1 [L72] partial_sum = partial_sum + b1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=1, na=1, nb=4, partial_sum=256, r0=1] [L73] COND FALSE !(i == (unsigned char)2) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=1, na=1, nb=4, partial_sum=256, r0=1] [L74] COND FALSE !(i == (unsigned char)3) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=1, na=1, nb=4, partial_sum=256, r0=1] [L76] COND TRUE partial_sum > ((unsigned char)254) [L77] partial_sum = partial_sum & ((unsigned char)255) [L78] carry = (unsigned short)1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=1, na=1, nb=4, r0=1] [L80] COND FALSE !(i == (unsigned char)0) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=1, na=1, nb=4, r0=1] [L81] COND TRUE i == (unsigned char)1 [L81] r1 = (unsigned char)partial_sum VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=1, na=1, nb=4, partial_sum=0, r0=1, r1=0] [L82] COND FALSE !(i == (unsigned char)2) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=1, na=1, nb=4, partial_sum=0, r0=1, r1=0] [L83] COND FALSE !(i == (unsigned char)3) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=1, na=1, nb=4, partial_sum=0, r0=1, r1=0] [L85] EXPR i + (unsigned char)1 [L85] i = i + (unsigned char)1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=2, na=1, nb=4, partial_sum=0, r0=1, r1=0] [L61] COND TRUE (i < na) || (i < nb) || (carry != (unsigned short)0) [L62] partial_sum = carry [L63] carry = (unsigned short)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=2, na=1, nb=4, partial_sum=1, r0=1, r1=0] [L64] COND FALSE !(i < na) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=2, na=1, nb=4, partial_sum=1, r0=1, r1=0] [L70] COND TRUE i < nb VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=2, na=1, nb=4, partial_sum=1, r0=1, r1=0] [L71] COND FALSE !(i == (unsigned char)0) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=2, na=1, nb=4, partial_sum=1, r0=1, r1=0] [L72] COND FALSE !(i == (unsigned char)1) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=2, na=1, nb=4, partial_sum=1, r0=1, r1=0] [L73] COND TRUE i == (unsigned char)2 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=2, na=1, nb=4, partial_sum=1, r0=1, r1=0] [L73] EXPR partial_sum + b2 [L73] partial_sum = partial_sum + b2 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=2, na=1, nb=4, partial_sum=256, r0=1, r1=0] [L74] COND FALSE !(i == (unsigned char)3) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=2, na=1, nb=4, partial_sum=256, r0=1, r1=0] [L76] COND TRUE partial_sum > ((unsigned char)254) [L77] partial_sum = partial_sum & ((unsigned char)255) [L78] carry = (unsigned short)1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=2, na=1, nb=4, r0=1, r1=0] [L80] COND FALSE !(i == (unsigned char)0) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=2, na=1, nb=4, r0=1, r1=0] [L81] COND FALSE !(i == (unsigned char)1) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=2, na=1, nb=4, r0=1, r1=0] [L82] COND TRUE i == (unsigned char)2 [L82] r2 = (unsigned char)partial_sum VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=2, na=1, nb=4, partial_sum=0, r0=1, r1=0, r2=0] [L83] COND FALSE !(i == (unsigned char)3) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=2, na=1, nb=4, partial_sum=0, r0=1, r1=0, r2=0] [L85] EXPR i + (unsigned char)1 [L85] i = i + (unsigned char)1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=1, i=3, na=1, nb=4, partial_sum=0, r0=1, r1=0, r2=0] [L61] COND TRUE (i < na) || (i < nb) || (carry != (unsigned short)0) [L62] partial_sum = carry [L63] carry = (unsigned short)0 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=1, r0=1, r1=0, r2=0] [L64] COND FALSE !(i < na) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=1, r0=1, r1=0, r2=0] [L70] COND TRUE i < nb VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=1, r0=1, r1=0, r2=0] [L71] COND FALSE !(i == (unsigned char)0) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=1, r0=1, r1=0, r2=0] [L72] COND FALSE !(i == (unsigned char)1) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=1, r0=1, r1=0, r2=0] [L73] COND FALSE !(i == (unsigned char)2) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=1, r0=1, r1=0, r2=0] [L74] COND TRUE i == (unsigned char)3 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=1, r0=1, r1=0, r2=0] [L74] EXPR partial_sum + b3 [L74] partial_sum = partial_sum + b3 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0] [L76] COND FALSE !(partial_sum > ((unsigned char)254)) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0] [L80] COND FALSE !(i == (unsigned char)0) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0] [L81] COND FALSE !(i == (unsigned char)1) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0] [L82] COND FALSE !(i == (unsigned char)2) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0] [L83] COND TRUE i == (unsigned char)3 [L83] r3 = (unsigned char)partial_sum VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=3, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0, r3=128] [L85] EXPR i + (unsigned char)1 [L85] i = i + (unsigned char)1 VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=4, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0, r3=128] [L61] COND FALSE !((i < na) || (i < nb) || (carry != (unsigned short)0)) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=4, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0, r3=128] [L88] COND FALSE !(i < (unsigned char)4) VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=4, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0, r3=128] [L97] r1 << 8U VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=4, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0, r3=128] [L97] r2 << 16U VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=4, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0, r3=128] [L97] r3 << 24U VAL [\old(a)=0, \old(b)=2147483647, a=0, a0=0, a1=0, a2=0, a3=0, b=2147483647, b0=-2147483649, b1=-8388609, b2=-32769, b3=-129, carry=0, i=4, na=1, nb=4, partial_sum=128, r0=1, r1=0, r2=0, r3=128] - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 126 locations, 38 error locations. UNSAFE Result, 18.2s OverallTime, 21 OverallIterations, 4 TraceHistogramMax, 14.4s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 2219 SDtfs, 4817 SDslu, 5352 SDs, 0 SdLazy, 6008 SolverSat, 553 SolverUnsat, 31 SolverUnknown, 0 SolverNotchecked, 12.1s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 388 GetRequests, 245 SyntacticMatches, 9 SemanticMatches, 134 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 165 ImplicationChecksByTransitivity, 2.4s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=4321occurred in iteration=18, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s AbstIntTime, 0 AbstIntIterations, 0 AbstIntStrong, NaN AbsIntWeakeningRatio, NaN AbsIntAvgWeakeningVarsNumRemoved, NaN AbsIntAvgWeakenedConjuncts, 0.0s DumpTime, AutomataMinimizationStatistics: 0.5s AutomataMinimizationTime, 20 MinimizatonAttempts, 3928 StatesRemovedByMinimization, 17 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TraceCheckStatistics: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 2.0s InterpolantComputationTime, 1504 NumberOfCodeBlocks, 1504 NumberOfCodeBlocksAsserted, 24 NumberOfCheckSat, 1385 ConstructedInterpolants, 28 QuantifiedInterpolants, 305534 SizeOfPredicates, 6 NumberOfNonLiveVariables, 445 ConjunctsInSsa, 13 ConjunctsInUnsatCore, 23 InterpolantComputations, 20 PerfectInterpolantSequences, 1201/1220 InterpolantCoveringCapability, InvariantSynthesisStatistics: No data available, InterpolantConsolidationStatistics: No data available, ReuseStatistics: No data available RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces Received shutdown request...