/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound5.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 05:58:15,279 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 05:58:15,281 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 05:58:15,320 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 05:58:15,320 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 05:58:15,321 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 05:58:15,323 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 05:58:15,325 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 05:58:15,326 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 05:58:15,329 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 05:58:15,330 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 05:58:15,331 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 05:58:15,331 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 05:58:15,332 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 05:58:15,333 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 05:58:15,335 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 05:58:15,336 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 05:58:15,336 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 05:58:15,337 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 05:58:15,341 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 05:58:15,343 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 05:58:15,344 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 05:58:15,344 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 05:58:15,345 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 05:58:15,345 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 05:58:15,350 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 05:58:15,350 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 05:58:15,350 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 05:58:15,351 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 05:58:15,351 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 05:58:15,352 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 05:58:15,352 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 05:58:15,353 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 05:58:15,353 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 05:58:15,354 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 05:58:15,354 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 05:58:15,354 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 05:58:15,355 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 05:58:15,355 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 05:58:15,355 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 05:58:15,355 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 05:58:15,356 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 05:58:15,357 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-08 05:58:15,365 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 05:58:15,365 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 05:58:15,366 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 05:58:15,366 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-08 05:58:15,366 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 05:58:15,366 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-08 05:58:15,366 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 05:58:15,366 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 05:58:15,366 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 05:58:15,367 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 05:58:15,367 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-08 05:58:15,367 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 05:58:15,367 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 05:58:15,367 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 05:58:15,367 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 05:58:15,367 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 05:58:15,367 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 05:58:15,367 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 05:58:15,367 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 05:58:15,368 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 05:58:15,368 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 05:58:15,368 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 05:58:15,368 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 05:58:15,368 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 05:58:15,368 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-08 05:58:15,368 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-08 05:58:15,550 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 05:58:15,565 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 05:58:15,567 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 05:58:15,567 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 05:58:15,568 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 05:58:15,569 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound5.c [2022-04-08 05:58:15,638 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c0005707b/83e4f3e29635432383ecb38c8a1d452b/FLAG8bf6ba7bb [2022-04-08 05:58:15,962 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 05:58:15,962 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound5.c [2022-04-08 05:58:15,966 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c0005707b/83e4f3e29635432383ecb38c8a1d452b/FLAG8bf6ba7bb [2022-04-08 05:58:15,979 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c0005707b/83e4f3e29635432383ecb38c8a1d452b [2022-04-08 05:58:15,981 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 05:58:15,982 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 05:58:15,983 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 05:58:15,983 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 05:58:15,994 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 05:58:15,995 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 05:58:15" (1/1) ... [2022-04-08 05:58:15,996 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@58d7c74e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:58:15, skipping insertion in model container [2022-04-08 05:58:15,996 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 05:58:15" (1/1) ... [2022-04-08 05:58:16,000 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 05:58:16,013 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 05:58:16,136 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound5.c[490,503] [2022-04-08 05:58:16,161 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 05:58:16,166 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 05:58:16,172 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound5.c[490,503] [2022-04-08 05:58:16,185 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 05:58:16,192 INFO L208 MainTranslator]: Completed translation [2022-04-08 05:58:16,193 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:58:16 WrapperNode [2022-04-08 05:58:16,193 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 05:58:16,193 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 05:58:16,194 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 05:58:16,194 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 05:58:16,200 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:58:16" (1/1) ... [2022-04-08 05:58:16,201 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:58:16" (1/1) ... [2022-04-08 05:58:16,207 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:58:16" (1/1) ... [2022-04-08 05:58:16,208 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:58:16" (1/1) ... [2022-04-08 05:58:16,215 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:58:16" (1/1) ... [2022-04-08 05:58:16,219 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:58:16" (1/1) ... [2022-04-08 05:58:16,220 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:58:16" (1/1) ... [2022-04-08 05:58:16,222 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 05:58:16,222 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 05:58:16,222 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 05:58:16,222 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 05:58:16,223 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:58:16" (1/1) ... [2022-04-08 05:58:16,228 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 05:58:16,235 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:58:16,272 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-08 05:58:16,317 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-08 05:58:16,333 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 05:58:16,333 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 05:58:16,333 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 05:58:16,333 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 05:58:16,333 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 05:58:16,333 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 05:58:16,333 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 05:58:16,333 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 05:58:16,334 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 05:58:16,334 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 05:58:16,336 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 05:58:16,336 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 05:58:16,336 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 05:58:16,336 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 05:58:16,336 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 05:58:16,337 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 05:58:16,337 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 05:58:16,337 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 05:58:16,337 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 05:58:16,337 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 05:58:16,377 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 05:58:16,379 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 05:58:16,501 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 05:58:16,505 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 05:58:16,506 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-08 05:58:16,507 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 05:58:16 BoogieIcfgContainer [2022-04-08 05:58:16,507 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 05:58:16,508 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 05:58:16,508 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 05:58:16,510 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 05:58:16,510 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 05:58:15" (1/3) ... [2022-04-08 05:58:16,511 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2bff536c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 05:58:16, skipping insertion in model container [2022-04-08 05:58:16,511 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 05:58:16" (2/3) ... [2022-04-08 05:58:16,511 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2bff536c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 05:58:16, skipping insertion in model container [2022-04-08 05:58:16,511 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 05:58:16" (3/3) ... [2022-04-08 05:58:16,512 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll_valuebound5.c [2022-04-08 05:58:16,515 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 05:58:16,515 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 05:58:16,539 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 05:58:16,543 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-08 05:58:16,543 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 05:58:16,562 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 24 states have internal predecessors, (35), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 05:58:16,569 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-08 05:58:16,569 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:58:16,570 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:58:16,570 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:58:16,574 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:58:16,574 INFO L85 PathProgramCache]: Analyzing trace with hash 1237885594, now seen corresponding path program 1 times [2022-04-08 05:58:16,580 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:16,580 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [815806151] [2022-04-08 05:58:16,599 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:58:16,599 INFO L85 PathProgramCache]: Analyzing trace with hash 1237885594, now seen corresponding path program 2 times [2022-04-08 05:58:16,601 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:58:16,602 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [793819215] [2022-04-08 05:58:16,602 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:58:16,602 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:58:16,677 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:58:16,741 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 05:58:16,745 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:58:16,760 INFO L290 TraceCheckUtils]: 0: Hoare triple {64#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {43#true} is VALID [2022-04-08 05:58:16,760 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-08 05:58:16,761 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #112#return; {43#true} is VALID [2022-04-08 05:58:16,761 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 05:58:16,764 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:58:16,771 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:58:16,772 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:58:16,772 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:58:16,772 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-08 05:58:16,773 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-08 05:58:16,774 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:58:16,783 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:58:16,783 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:58:16,784 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:58:16,784 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-08 05:58:16,784 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-08 05:58:16,786 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:58:16,792 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:58:16,793 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:58:16,793 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:58:16,793 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #98#return; {44#false} is VALID [2022-04-08 05:58:16,793 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-08 05:58:16,796 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:58:16,807 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:58:16,808 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:58:16,808 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:58:16,808 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #100#return; {44#false} is VALID [2022-04-08 05:58:16,811 INFO L272 TraceCheckUtils]: 0: Hoare triple {43#true} call ULTIMATE.init(); {64#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 05:58:16,811 INFO L290 TraceCheckUtils]: 1: Hoare triple {64#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {43#true} is VALID [2022-04-08 05:58:16,811 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-08 05:58:16,811 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #112#return; {43#true} is VALID [2022-04-08 05:58:16,812 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret6 := main(); {43#true} is VALID [2022-04-08 05:58:16,812 INFO L290 TraceCheckUtils]: 5: Hoare triple {43#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {43#true} is VALID [2022-04-08 05:58:16,812 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {43#true} is VALID [2022-04-08 05:58:16,812 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:58:16,813 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:58:16,814 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:58:16,814 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-08 05:58:16,814 INFO L290 TraceCheckUtils]: 11: Hoare triple {44#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {44#false} is VALID [2022-04-08 05:58:16,814 INFO L272 TraceCheckUtils]: 12: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {43#true} is VALID [2022-04-08 05:58:16,814 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:58:16,815 INFO L290 TraceCheckUtils]: 14: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:58:16,815 INFO L290 TraceCheckUtils]: 15: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:58:16,815 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-08 05:58:16,816 INFO L272 TraceCheckUtils]: 17: Hoare triple {44#false} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-08 05:58:16,816 INFO L290 TraceCheckUtils]: 18: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:58:16,816 INFO L290 TraceCheckUtils]: 19: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:58:16,817 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:58:16,817 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {44#false} {44#false} #98#return; {44#false} is VALID [2022-04-08 05:58:16,817 INFO L272 TraceCheckUtils]: 22: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-08 05:58:16,817 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 05:58:16,818 INFO L290 TraceCheckUtils]: 24: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 05:58:16,818 INFO L290 TraceCheckUtils]: 25: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 05:58:16,819 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {44#false} {44#false} #100#return; {44#false} is VALID [2022-04-08 05:58:16,819 INFO L290 TraceCheckUtils]: 27: Hoare triple {44#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {44#false} is VALID [2022-04-08 05:58:16,819 INFO L290 TraceCheckUtils]: 28: Hoare triple {44#false} assume false; {44#false} is VALID [2022-04-08 05:58:16,819 INFO L272 TraceCheckUtils]: 29: Hoare triple {44#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {44#false} is VALID [2022-04-08 05:58:16,819 INFO L290 TraceCheckUtils]: 30: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-08 05:58:16,820 INFO L290 TraceCheckUtils]: 31: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-08 05:58:16,820 INFO L290 TraceCheckUtils]: 32: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-08 05:58:16,820 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 05:58:16,821 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:58:16,821 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [793819215] [2022-04-08 05:58:16,821 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [793819215] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:58:16,821 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:58:16,822 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 05:58:16,823 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:58:16,824 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [815806151] [2022-04-08 05:58:16,824 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [815806151] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:58:16,824 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:58:16,824 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 05:58:16,824 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1657406046] [2022-04-08 05:58:16,825 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:58:16,829 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-08 05:58:16,830 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:58:16,832 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:58:16,855 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:16,855 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 05:58:16,855 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:16,871 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 05:58:16,872 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 05:58:16,874 INFO L87 Difference]: Start difference. First operand has 40 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 24 states have internal predecessors, (35), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:58:17,043 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:17,044 INFO L93 Difference]: Finished difference Result 73 states and 115 transitions. [2022-04-08 05:58:17,044 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 05:58:17,044 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-08 05:58:17,044 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:58:17,045 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:58:17,057 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 115 transitions. [2022-04-08 05:58:17,058 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:58:17,063 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 115 transitions. [2022-04-08 05:58:17,063 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 115 transitions. [2022-04-08 05:58:17,168 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:17,185 INFO L225 Difference]: With dead ends: 73 [2022-04-08 05:58:17,185 INFO L226 Difference]: Without dead ends: 35 [2022-04-08 05:58:17,189 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 05:58:17,193 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 24 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 21 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:58:17,195 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 43 Invalid, 21 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:58:17,206 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-08 05:58:17,226 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-08 05:58:17,226 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:58:17,227 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 05:58:17,228 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 05:58:17,229 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 05:58:17,234 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:17,234 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-08 05:58:17,234 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-08 05:58:17,235 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:58:17,235 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:58:17,235 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 35 states. [2022-04-08 05:58:17,235 INFO L87 Difference]: Start difference. First operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 35 states. [2022-04-08 05:58:17,243 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:17,243 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-08 05:58:17,243 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-08 05:58:17,244 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:58:17,244 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:58:17,244 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:58:17,244 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:58:17,245 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 05:58:17,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 44 transitions. [2022-04-08 05:58:17,252 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 44 transitions. Word has length 33 [2022-04-08 05:58:17,252 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:58:17,252 INFO L478 AbstractCegarLoop]: Abstraction has 35 states and 44 transitions. [2022-04-08 05:58:17,252 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:58:17,253 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 44 transitions. [2022-04-08 05:58:17,294 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:17,295 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-08 05:58:17,296 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-08 05:58:17,296 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:58:17,296 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 05:58:17,296 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 05:58:17,297 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:58:17,298 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:58:17,298 INFO L85 PathProgramCache]: Analyzing trace with hash 1569470122, now seen corresponding path program 1 times [2022-04-08 05:58:17,298 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:17,298 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [741481797] [2022-04-08 05:58:17,298 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:58:17,299 INFO L85 PathProgramCache]: Analyzing trace with hash 1569470122, now seen corresponding path program 2 times [2022-04-08 05:58:17,299 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:58:17,299 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1288989714] [2022-04-08 05:58:17,299 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:58:17,299 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:58:17,344 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:58:17,344 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1961772281] [2022-04-08 05:58:17,344 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:58:17,344 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:58:17,345 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:58:17,371 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:58:17,388 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-08 05:58:17,444 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 05:58:17,445 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:58:17,447 INFO L263 TraceCheckSpWp]: Trace formula consists of 76 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 05:58:17,460 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:58:17,463 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:58:17,743 INFO L272 TraceCheckUtils]: 0: Hoare triple {353#true} call ULTIMATE.init(); {353#true} is VALID [2022-04-08 05:58:17,743 INFO L290 TraceCheckUtils]: 1: Hoare triple {353#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {353#true} is VALID [2022-04-08 05:58:17,743 INFO L290 TraceCheckUtils]: 2: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-08 05:58:17,743 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {353#true} {353#true} #112#return; {353#true} is VALID [2022-04-08 05:58:17,743 INFO L272 TraceCheckUtils]: 4: Hoare triple {353#true} call #t~ret6 := main(); {353#true} is VALID [2022-04-08 05:58:17,744 INFO L290 TraceCheckUtils]: 5: Hoare triple {353#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {353#true} is VALID [2022-04-08 05:58:17,744 INFO L272 TraceCheckUtils]: 6: Hoare triple {353#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {353#true} is VALID [2022-04-08 05:58:17,744 INFO L290 TraceCheckUtils]: 7: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-08 05:58:17,744 INFO L290 TraceCheckUtils]: 8: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-08 05:58:17,744 INFO L290 TraceCheckUtils]: 9: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-08 05:58:17,744 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {353#true} {353#true} #94#return; {353#true} is VALID [2022-04-08 05:58:17,744 INFO L290 TraceCheckUtils]: 11: Hoare triple {353#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {353#true} is VALID [2022-04-08 05:58:17,744 INFO L272 TraceCheckUtils]: 12: Hoare triple {353#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {353#true} is VALID [2022-04-08 05:58:17,745 INFO L290 TraceCheckUtils]: 13: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-08 05:58:17,745 INFO L290 TraceCheckUtils]: 14: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-08 05:58:17,745 INFO L290 TraceCheckUtils]: 15: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-08 05:58:17,745 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {353#true} {353#true} #96#return; {353#true} is VALID [2022-04-08 05:58:17,745 INFO L272 TraceCheckUtils]: 17: Hoare triple {353#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {353#true} is VALID [2022-04-08 05:58:17,745 INFO L290 TraceCheckUtils]: 18: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-08 05:58:17,745 INFO L290 TraceCheckUtils]: 19: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-08 05:58:17,745 INFO L290 TraceCheckUtils]: 20: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-08 05:58:17,746 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {353#true} {353#true} #98#return; {353#true} is VALID [2022-04-08 05:58:17,746 INFO L272 TraceCheckUtils]: 22: Hoare triple {353#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {353#true} is VALID [2022-04-08 05:58:17,746 INFO L290 TraceCheckUtils]: 23: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-08 05:58:17,746 INFO L290 TraceCheckUtils]: 24: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-08 05:58:17,746 INFO L290 TraceCheckUtils]: 25: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-08 05:58:17,746 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {353#true} {353#true} #100#return; {353#true} is VALID [2022-04-08 05:58:17,747 INFO L290 TraceCheckUtils]: 27: Hoare triple {353#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:17,747 INFO L290 TraceCheckUtils]: 28: Hoare triple {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:17,748 INFO L290 TraceCheckUtils]: 29: Hoare triple {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(0 != ~b~0); {446#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:17,749 INFO L272 TraceCheckUtils]: 30: Hoare triple {446#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {450#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:58:17,749 INFO L290 TraceCheckUtils]: 31: Hoare triple {450#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {454#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:58:17,749 INFO L290 TraceCheckUtils]: 32: Hoare triple {454#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {354#false} is VALID [2022-04-08 05:58:17,749 INFO L290 TraceCheckUtils]: 33: Hoare triple {354#false} assume !false; {354#false} is VALID [2022-04-08 05:58:17,750 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 05:58:17,750 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 05:58:17,750 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:58:17,750 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1288989714] [2022-04-08 05:58:17,750 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:58:17,750 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1961772281] [2022-04-08 05:58:17,750 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1961772281] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:58:17,751 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:58:17,751 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 05:58:17,751 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:58:17,751 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [741481797] [2022-04-08 05:58:17,751 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [741481797] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:58:17,752 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:58:17,752 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 05:58:17,752 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [752009471] [2022-04-08 05:58:17,752 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:58:17,752 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-08 05:58:17,753 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:58:17,753 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 05:58:17,769 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:17,769 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 05:58:17,769 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:17,769 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 05:58:17,770 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-08 05:58:17,770 INFO L87 Difference]: Start difference. First operand 35 states and 44 transitions. Second operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 05:58:18,022 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:18,022 INFO L93 Difference]: Finished difference Result 54 states and 69 transitions. [2022-04-08 05:58:18,022 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 05:58:18,022 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-08 05:58:18,023 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:58:18,023 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 05:58:18,030 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-08 05:58:18,030 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 05:58:18,034 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-08 05:58:18,035 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 69 transitions. [2022-04-08 05:58:18,081 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:18,083 INFO L225 Difference]: With dead ends: 54 [2022-04-08 05:58:18,083 INFO L226 Difference]: Without dead ends: 51 [2022-04-08 05:58:18,084 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 29 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-08 05:58:18,086 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 14 mSDsluCounter, 119 mSDsCounter, 0 mSdLazyCounter, 77 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 158 SdHoareTripleChecker+Invalid, 79 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 77 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:58:18,089 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 158 Invalid, 79 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 77 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:58:18,091 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-04-08 05:58:18,101 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2022-04-08 05:58:18,101 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:58:18,102 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 05:58:18,102 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 05:58:18,102 INFO L87 Difference]: Start difference. First operand 51 states. Second operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 05:58:18,105 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:18,105 INFO L93 Difference]: Finished difference Result 51 states and 65 transitions. [2022-04-08 05:58:18,105 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 65 transitions. [2022-04-08 05:58:18,105 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:58:18,106 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:58:18,106 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 51 states. [2022-04-08 05:58:18,106 INFO L87 Difference]: Start difference. First operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 51 states. [2022-04-08 05:58:18,108 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:18,109 INFO L93 Difference]: Finished difference Result 51 states and 65 transitions. [2022-04-08 05:58:18,109 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 65 transitions. [2022-04-08 05:58:18,112 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:58:18,112 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:58:18,112 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:58:18,112 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:58:18,112 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 05:58:18,114 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 64 transitions. [2022-04-08 05:58:18,114 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 64 transitions. Word has length 34 [2022-04-08 05:58:18,114 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:58:18,114 INFO L478 AbstractCegarLoop]: Abstraction has 50 states and 64 transitions. [2022-04-08 05:58:18,114 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 05:58:18,114 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 50 states and 64 transitions. [2022-04-08 05:58:18,170 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:18,170 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2022-04-08 05:58:18,171 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-08 05:58:18,171 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:58:18,171 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 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] [2022-04-08 05:58:18,203 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-08 05:58:18,406 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:58:18,406 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:58:18,407 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:58:18,407 INFO L85 PathProgramCache]: Analyzing trace with hash 584996456, now seen corresponding path program 1 times [2022-04-08 05:58:18,407 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:18,407 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [424912215] [2022-04-08 05:58:18,408 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:58:18,408 INFO L85 PathProgramCache]: Analyzing trace with hash 584996456, now seen corresponding path program 2 times [2022-04-08 05:58:18,408 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:58:18,408 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2005344234] [2022-04-08 05:58:18,408 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:58:18,408 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:58:18,427 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:58:18,427 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [346430682] [2022-04-08 05:58:18,427 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:58:18,427 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:58:18,427 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:58:18,428 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:58:18,447 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-08 05:58:18,483 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:58:18,484 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:58:18,484 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 05:58:18,495 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:58:18,496 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:58:18,673 INFO L272 TraceCheckUtils]: 0: Hoare triple {774#true} call ULTIMATE.init(); {774#true} is VALID [2022-04-08 05:58:18,674 INFO L290 TraceCheckUtils]: 1: Hoare triple {774#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {774#true} is VALID [2022-04-08 05:58:18,674 INFO L290 TraceCheckUtils]: 2: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-08 05:58:18,674 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {774#true} {774#true} #112#return; {774#true} is VALID [2022-04-08 05:58:18,674 INFO L272 TraceCheckUtils]: 4: Hoare triple {774#true} call #t~ret6 := main(); {774#true} is VALID [2022-04-08 05:58:18,674 INFO L290 TraceCheckUtils]: 5: Hoare triple {774#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {774#true} is VALID [2022-04-08 05:58:18,674 INFO L272 TraceCheckUtils]: 6: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {774#true} is VALID [2022-04-08 05:58:18,674 INFO L290 TraceCheckUtils]: 7: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-08 05:58:18,674 INFO L290 TraceCheckUtils]: 8: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-08 05:58:18,675 INFO L290 TraceCheckUtils]: 9: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-08 05:58:18,675 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {774#true} {774#true} #94#return; {774#true} is VALID [2022-04-08 05:58:18,675 INFO L290 TraceCheckUtils]: 11: Hoare triple {774#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {774#true} is VALID [2022-04-08 05:58:18,675 INFO L272 TraceCheckUtils]: 12: Hoare triple {774#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {774#true} is VALID [2022-04-08 05:58:18,675 INFO L290 TraceCheckUtils]: 13: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-08 05:58:18,675 INFO L290 TraceCheckUtils]: 14: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-08 05:58:18,675 INFO L290 TraceCheckUtils]: 15: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-08 05:58:18,675 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {774#true} {774#true} #96#return; {774#true} is VALID [2022-04-08 05:58:18,675 INFO L272 TraceCheckUtils]: 17: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-08 05:58:18,678 INFO L290 TraceCheckUtils]: 18: Hoare triple {774#true} ~cond := #in~cond; {833#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:58:18,679 INFO L290 TraceCheckUtils]: 19: Hoare triple {833#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:58:18,679 INFO L290 TraceCheckUtils]: 20: Hoare triple {837#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:58:18,683 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {837#(not (= |assume_abort_if_not_#in~cond| 0))} {774#true} #98#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-08 05:58:18,683 INFO L272 TraceCheckUtils]: 22: Hoare triple {844#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-08 05:58:18,683 INFO L290 TraceCheckUtils]: 23: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-08 05:58:18,684 INFO L290 TraceCheckUtils]: 24: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-08 05:58:18,684 INFO L290 TraceCheckUtils]: 25: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-08 05:58:18,684 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {774#true} {844#(<= 1 main_~x~0)} #100#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-08 05:58:18,685 INFO L290 TraceCheckUtils]: 27: Hoare triple {844#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {863#(<= 1 main_~a~0)} is VALID [2022-04-08 05:58:18,685 INFO L290 TraceCheckUtils]: 28: Hoare triple {863#(<= 1 main_~a~0)} assume !false; {863#(<= 1 main_~a~0)} is VALID [2022-04-08 05:58:18,685 INFO L290 TraceCheckUtils]: 29: Hoare triple {863#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:58:18,686 INFO L290 TraceCheckUtils]: 30: Hoare triple {870#(<= 1 main_~c~0)} assume !false; {870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:58:18,686 INFO L290 TraceCheckUtils]: 31: Hoare triple {870#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:58:18,687 INFO L290 TraceCheckUtils]: 32: Hoare triple {870#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {880#(<= 1 main_~b~0)} is VALID [2022-04-08 05:58:18,687 INFO L290 TraceCheckUtils]: 33: Hoare triple {880#(<= 1 main_~b~0)} assume !false; {880#(<= 1 main_~b~0)} is VALID [2022-04-08 05:58:18,687 INFO L290 TraceCheckUtils]: 34: Hoare triple {880#(<= 1 main_~b~0)} assume !(0 != ~b~0); {775#false} is VALID [2022-04-08 05:58:18,687 INFO L272 TraceCheckUtils]: 35: Hoare triple {775#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {775#false} is VALID [2022-04-08 05:58:18,687 INFO L290 TraceCheckUtils]: 36: Hoare triple {775#false} ~cond := #in~cond; {775#false} is VALID [2022-04-08 05:58:18,688 INFO L290 TraceCheckUtils]: 37: Hoare triple {775#false} assume 0 == ~cond; {775#false} is VALID [2022-04-08 05:58:18,688 INFO L290 TraceCheckUtils]: 38: Hoare triple {775#false} assume !false; {775#false} is VALID [2022-04-08 05:58:18,688 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 6 proven. 5 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-08 05:58:18,688 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:58:18,878 INFO L290 TraceCheckUtils]: 38: Hoare triple {775#false} assume !false; {775#false} is VALID [2022-04-08 05:58:18,878 INFO L290 TraceCheckUtils]: 37: Hoare triple {775#false} assume 0 == ~cond; {775#false} is VALID [2022-04-08 05:58:18,878 INFO L290 TraceCheckUtils]: 36: Hoare triple {775#false} ~cond := #in~cond; {775#false} is VALID [2022-04-08 05:58:18,878 INFO L272 TraceCheckUtils]: 35: Hoare triple {775#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {775#false} is VALID [2022-04-08 05:58:18,879 INFO L290 TraceCheckUtils]: 34: Hoare triple {880#(<= 1 main_~b~0)} assume !(0 != ~b~0); {775#false} is VALID [2022-04-08 05:58:18,879 INFO L290 TraceCheckUtils]: 33: Hoare triple {880#(<= 1 main_~b~0)} assume !false; {880#(<= 1 main_~b~0)} is VALID [2022-04-08 05:58:18,879 INFO L290 TraceCheckUtils]: 32: Hoare triple {870#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {880#(<= 1 main_~b~0)} is VALID [2022-04-08 05:58:18,880 INFO L290 TraceCheckUtils]: 31: Hoare triple {870#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:58:18,883 INFO L290 TraceCheckUtils]: 30: Hoare triple {870#(<= 1 main_~c~0)} assume !false; {870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:58:18,884 INFO L290 TraceCheckUtils]: 29: Hoare triple {863#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {870#(<= 1 main_~c~0)} is VALID [2022-04-08 05:58:18,886 INFO L290 TraceCheckUtils]: 28: Hoare triple {863#(<= 1 main_~a~0)} assume !false; {863#(<= 1 main_~a~0)} is VALID [2022-04-08 05:58:18,886 INFO L290 TraceCheckUtils]: 27: Hoare triple {844#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {863#(<= 1 main_~a~0)} is VALID [2022-04-08 05:58:18,887 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {774#true} {844#(<= 1 main_~x~0)} #100#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-08 05:58:18,887 INFO L290 TraceCheckUtils]: 25: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-08 05:58:18,887 INFO L290 TraceCheckUtils]: 24: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-08 05:58:18,887 INFO L290 TraceCheckUtils]: 23: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-08 05:58:18,887 INFO L272 TraceCheckUtils]: 22: Hoare triple {844#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-08 05:58:18,888 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {837#(not (= |assume_abort_if_not_#in~cond| 0))} {774#true} #98#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-08 05:58:18,888 INFO L290 TraceCheckUtils]: 20: Hoare triple {837#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:58:18,888 INFO L290 TraceCheckUtils]: 19: Hoare triple {959#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:58:18,889 INFO L290 TraceCheckUtils]: 18: Hoare triple {774#true} ~cond := #in~cond; {959#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-08 05:58:18,889 INFO L272 TraceCheckUtils]: 17: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-08 05:58:18,889 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {774#true} {774#true} #96#return; {774#true} is VALID [2022-04-08 05:58:18,889 INFO L290 TraceCheckUtils]: 15: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-08 05:58:18,889 INFO L290 TraceCheckUtils]: 14: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-08 05:58:18,889 INFO L290 TraceCheckUtils]: 13: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-08 05:58:18,889 INFO L272 TraceCheckUtils]: 12: Hoare triple {774#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {774#true} is VALID [2022-04-08 05:58:18,889 INFO L290 TraceCheckUtils]: 11: Hoare triple {774#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {774#true} is VALID [2022-04-08 05:58:18,889 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {774#true} {774#true} #94#return; {774#true} is VALID [2022-04-08 05:58:18,890 INFO L290 TraceCheckUtils]: 9: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-08 05:58:18,890 INFO L290 TraceCheckUtils]: 8: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-08 05:58:18,890 INFO L290 TraceCheckUtils]: 7: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-08 05:58:18,890 INFO L272 TraceCheckUtils]: 6: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {774#true} is VALID [2022-04-08 05:58:18,890 INFO L290 TraceCheckUtils]: 5: Hoare triple {774#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {774#true} is VALID [2022-04-08 05:58:18,890 INFO L272 TraceCheckUtils]: 4: Hoare triple {774#true} call #t~ret6 := main(); {774#true} is VALID [2022-04-08 05:58:18,890 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {774#true} {774#true} #112#return; {774#true} is VALID [2022-04-08 05:58:18,890 INFO L290 TraceCheckUtils]: 2: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-08 05:58:18,890 INFO L290 TraceCheckUtils]: 1: Hoare triple {774#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {774#true} is VALID [2022-04-08 05:58:18,890 INFO L272 TraceCheckUtils]: 0: Hoare triple {774#true} call ULTIMATE.init(); {774#true} is VALID [2022-04-08 05:58:18,890 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 6 proven. 5 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-08 05:58:18,891 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:58:18,891 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2005344234] [2022-04-08 05:58:18,891 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:58:18,891 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [346430682] [2022-04-08 05:58:18,891 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [346430682] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:58:18,891 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:58:18,891 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-08 05:58:18,891 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:58:18,891 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [424912215] [2022-04-08 05:58:18,891 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [424912215] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:58:18,891 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:58:18,892 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 05:58:18,892 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1724864224] [2022-04-08 05:58:18,892 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:58:18,892 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-08 05:58:18,892 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:58:18,892 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:58:18,912 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:18,912 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 05:58:18,912 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:18,913 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 05:58:18,913 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-08 05:58:18,913 INFO L87 Difference]: Start difference. First operand 50 states and 64 transitions. Second operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:58:19,424 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:19,425 INFO L93 Difference]: Finished difference Result 103 states and 143 transitions. [2022-04-08 05:58:19,425 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 05:58:19,425 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-08 05:58:19,425 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:58:19,425 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:58:19,427 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-08 05:58:19,428 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:58:19,430 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-08 05:58:19,430 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 108 transitions. [2022-04-08 05:58:19,499 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:19,501 INFO L225 Difference]: With dead ends: 103 [2022-04-08 05:58:19,501 INFO L226 Difference]: Without dead ends: 96 [2022-04-08 05:58:19,501 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 69 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2022-04-08 05:58:19,502 INFO L913 BasicCegarLoop]: 50 mSDtfsCounter, 68 mSDsluCounter, 182 mSDsCounter, 0 mSdLazyCounter, 148 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 232 SdHoareTripleChecker+Invalid, 197 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 148 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:58:19,502 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [72 Valid, 232 Invalid, 197 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 148 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:58:19,503 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2022-04-08 05:58:19,563 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 71. [2022-04-08 05:58:19,563 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:58:19,563 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 05:58:19,564 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 05:58:19,564 INFO L87 Difference]: Start difference. First operand 96 states. Second operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 05:58:19,568 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:19,568 INFO L93 Difference]: Finished difference Result 96 states and 136 transitions. [2022-04-08 05:58:19,568 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 136 transitions. [2022-04-08 05:58:19,568 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:58:19,569 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:58:19,569 INFO L74 IsIncluded]: Start isIncluded. First operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) Second operand 96 states. [2022-04-08 05:58:19,569 INFO L87 Difference]: Start difference. First operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) Second operand 96 states. [2022-04-08 05:58:19,573 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:19,573 INFO L93 Difference]: Finished difference Result 96 states and 136 transitions. [2022-04-08 05:58:19,573 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 136 transitions. [2022-04-08 05:58:19,573 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:58:19,573 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:58:19,573 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:58:19,573 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:58:19,574 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 05:58:19,576 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 95 transitions. [2022-04-08 05:58:19,576 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 95 transitions. Word has length 39 [2022-04-08 05:58:19,576 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:58:19,576 INFO L478 AbstractCegarLoop]: Abstraction has 71 states and 95 transitions. [2022-04-08 05:58:19,576 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 05:58:19,576 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 71 states and 95 transitions. [2022-04-08 05:58:19,658 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:19,659 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 95 transitions. [2022-04-08 05:58:19,659 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-08 05:58:19,659 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:58:19,659 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 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] [2022-04-08 05:58:19,693 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-08 05:58:19,875 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-08 05:58:19,876 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:58:19,876 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:58:19,876 INFO L85 PathProgramCache]: Analyzing trace with hash -974923140, now seen corresponding path program 1 times [2022-04-08 05:58:19,876 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:19,876 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [12746771] [2022-04-08 05:58:19,877 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:58:19,877 INFO L85 PathProgramCache]: Analyzing trace with hash -974923140, now seen corresponding path program 2 times [2022-04-08 05:58:19,877 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:58:19,877 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [160815183] [2022-04-08 05:58:19,877 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:58:19,877 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:58:19,891 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:58:19,891 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1211216975] [2022-04-08 05:58:19,892 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:58:19,892 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:58:19,892 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:58:19,893 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:58:19,894 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-08 05:58:19,931 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:58:19,931 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:58:19,932 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-08 05:58:19,946 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:58:19,947 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:58:20,401 INFO L272 TraceCheckUtils]: 0: Hoare triple {1566#true} call ULTIMATE.init(); {1566#true} is VALID [2022-04-08 05:58:20,402 INFO L290 TraceCheckUtils]: 1: Hoare triple {1566#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {1566#true} is VALID [2022-04-08 05:58:20,402 INFO L290 TraceCheckUtils]: 2: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-08 05:58:20,402 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1566#true} {1566#true} #112#return; {1566#true} is VALID [2022-04-08 05:58:20,402 INFO L272 TraceCheckUtils]: 4: Hoare triple {1566#true} call #t~ret6 := main(); {1566#true} is VALID [2022-04-08 05:58:20,402 INFO L290 TraceCheckUtils]: 5: Hoare triple {1566#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1566#true} is VALID [2022-04-08 05:58:20,402 INFO L272 TraceCheckUtils]: 6: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {1566#true} is VALID [2022-04-08 05:58:20,402 INFO L290 TraceCheckUtils]: 7: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-08 05:58:20,402 INFO L290 TraceCheckUtils]: 8: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-08 05:58:20,402 INFO L290 TraceCheckUtils]: 9: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-08 05:58:20,403 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1566#true} {1566#true} #94#return; {1566#true} is VALID [2022-04-08 05:58:20,403 INFO L290 TraceCheckUtils]: 11: Hoare triple {1566#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1566#true} is VALID [2022-04-08 05:58:20,403 INFO L272 TraceCheckUtils]: 12: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {1566#true} is VALID [2022-04-08 05:58:20,403 INFO L290 TraceCheckUtils]: 13: Hoare triple {1566#true} ~cond := #in~cond; {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:58:20,403 INFO L290 TraceCheckUtils]: 14: Hoare triple {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:58:20,405 INFO L290 TraceCheckUtils]: 15: Hoare triple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:58:20,405 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} {1566#true} #96#return; {1621#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 05:58:20,405 INFO L272 TraceCheckUtils]: 17: Hoare triple {1621#(and (<= 0 main_~y~0) (<= main_~y~0 5))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-08 05:58:20,406 INFO L290 TraceCheckUtils]: 18: Hoare triple {1566#true} ~cond := #in~cond; {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:58:20,406 INFO L290 TraceCheckUtils]: 19: Hoare triple {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:58:20,406 INFO L290 TraceCheckUtils]: 20: Hoare triple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:58:20,408 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} {1621#(and (<= 0 main_~y~0) (<= main_~y~0 5))} #98#return; {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 05:58:20,408 INFO L272 TraceCheckUtils]: 22: Hoare triple {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 5))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-08 05:58:20,408 INFO L290 TraceCheckUtils]: 23: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-08 05:58:20,409 INFO L290 TraceCheckUtils]: 24: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-08 05:58:20,409 INFO L290 TraceCheckUtils]: 25: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-08 05:58:20,409 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1566#true} {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 5))} #100#return; {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 05:58:20,410 INFO L290 TraceCheckUtils]: 27: Hoare triple {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 5))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 05:58:20,410 INFO L290 TraceCheckUtils]: 28: Hoare triple {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5))} assume !false; {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 05:58:20,410 INFO L290 TraceCheckUtils]: 29: Hoare triple {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:58:20,411 INFO L290 TraceCheckUtils]: 30: Hoare triple {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} assume !false; {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:58:20,411 INFO L290 TraceCheckUtils]: 31: Hoare triple {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:58:20,412 INFO L290 TraceCheckUtils]: 32: Hoare triple {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 05:58:20,412 INFO L290 TraceCheckUtils]: 33: Hoare triple {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} assume !false; {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 05:58:20,415 INFO L290 TraceCheckUtils]: 34: Hoare triple {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 05:58:20,415 INFO L290 TraceCheckUtils]: 35: Hoare triple {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} assume !false; {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 05:58:20,416 INFO L290 TraceCheckUtils]: 36: Hoare triple {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0) (<= main_~y~0 5))} is VALID [2022-04-08 05:58:20,416 INFO L290 TraceCheckUtils]: 37: Hoare triple {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0) (<= main_~y~0 5))} assume !false; {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0) (<= main_~y~0 5))} is VALID [2022-04-08 05:58:20,417 INFO L272 TraceCheckUtils]: 38: Hoare triple {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:58:20,417 INFO L290 TraceCheckUtils]: 39: Hoare triple {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1698#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:58:20,417 INFO L290 TraceCheckUtils]: 40: Hoare triple {1698#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1567#false} is VALID [2022-04-08 05:58:20,418 INFO L290 TraceCheckUtils]: 41: Hoare triple {1567#false} assume !false; {1567#false} is VALID [2022-04-08 05:58:20,418 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 6 proven. 10 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-08 05:58:20,418 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:58:20,716 INFO L290 TraceCheckUtils]: 41: Hoare triple {1567#false} assume !false; {1567#false} is VALID [2022-04-08 05:58:20,717 INFO L290 TraceCheckUtils]: 40: Hoare triple {1698#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1567#false} is VALID [2022-04-08 05:58:20,717 INFO L290 TraceCheckUtils]: 39: Hoare triple {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1698#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:58:20,718 INFO L272 TraceCheckUtils]: 38: Hoare triple {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:58:20,718 INFO L290 TraceCheckUtils]: 37: Hoare triple {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:58:20,719 INFO L290 TraceCheckUtils]: 36: Hoare triple {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:58:20,719 INFO L290 TraceCheckUtils]: 35: Hoare triple {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} assume !false; {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-08 05:58:20,720 INFO L290 TraceCheckUtils]: 34: Hoare triple {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-08 05:58:20,720 INFO L290 TraceCheckUtils]: 33: Hoare triple {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:58:20,720 INFO L290 TraceCheckUtils]: 32: Hoare triple {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 05:58:20,721 INFO L290 TraceCheckUtils]: 31: Hoare triple {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:58:20,721 INFO L290 TraceCheckUtils]: 30: Hoare triple {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:58:20,721 INFO L290 TraceCheckUtils]: 29: Hoare triple {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:58:20,722 INFO L290 TraceCheckUtils]: 28: Hoare triple {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} assume !false; {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} is VALID [2022-04-08 05:58:20,722 INFO L290 TraceCheckUtils]: 27: Hoare triple {1566#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} is VALID [2022-04-08 05:58:20,722 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1566#true} {1566#true} #100#return; {1566#true} is VALID [2022-04-08 05:58:20,722 INFO L290 TraceCheckUtils]: 25: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-08 05:58:20,722 INFO L290 TraceCheckUtils]: 24: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-08 05:58:20,722 INFO L290 TraceCheckUtils]: 23: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-08 05:58:20,723 INFO L272 TraceCheckUtils]: 22: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-08 05:58:20,723 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1566#true} {1566#true} #98#return; {1566#true} is VALID [2022-04-08 05:58:20,723 INFO L290 TraceCheckUtils]: 20: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-08 05:58:20,723 INFO L290 TraceCheckUtils]: 19: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-08 05:58:20,723 INFO L290 TraceCheckUtils]: 18: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-08 05:58:20,723 INFO L272 TraceCheckUtils]: 17: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-08 05:58:20,723 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1566#true} {1566#true} #96#return; {1566#true} is VALID [2022-04-08 05:58:20,723 INFO L290 TraceCheckUtils]: 15: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-08 05:58:20,723 INFO L290 TraceCheckUtils]: 14: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-08 05:58:20,723 INFO L290 TraceCheckUtils]: 13: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-08 05:58:20,723 INFO L272 TraceCheckUtils]: 12: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {1566#true} is VALID [2022-04-08 05:58:20,723 INFO L290 TraceCheckUtils]: 11: Hoare triple {1566#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1566#true} is VALID [2022-04-08 05:58:20,723 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1566#true} {1566#true} #94#return; {1566#true} is VALID [2022-04-08 05:58:20,724 INFO L290 TraceCheckUtils]: 9: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-08 05:58:20,724 INFO L290 TraceCheckUtils]: 8: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-08 05:58:20,724 INFO L290 TraceCheckUtils]: 7: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-08 05:58:20,724 INFO L272 TraceCheckUtils]: 6: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {1566#true} is VALID [2022-04-08 05:58:20,724 INFO L290 TraceCheckUtils]: 5: Hoare triple {1566#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1566#true} is VALID [2022-04-08 05:58:20,728 INFO L272 TraceCheckUtils]: 4: Hoare triple {1566#true} call #t~ret6 := main(); {1566#true} is VALID [2022-04-08 05:58:20,728 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1566#true} {1566#true} #112#return; {1566#true} is VALID [2022-04-08 05:58:20,729 INFO L290 TraceCheckUtils]: 2: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-08 05:58:20,731 INFO L290 TraceCheckUtils]: 1: Hoare triple {1566#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {1566#true} is VALID [2022-04-08 05:58:20,731 INFO L272 TraceCheckUtils]: 0: Hoare triple {1566#true} call ULTIMATE.init(); {1566#true} is VALID [2022-04-08 05:58:20,732 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 05:58:20,732 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:58:20,732 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [160815183] [2022-04-08 05:58:20,732 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:58:20,732 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1211216975] [2022-04-08 05:58:20,732 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1211216975] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:58:20,732 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:58:20,733 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9] total 18 [2022-04-08 05:58:20,733 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:58:20,733 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [12746771] [2022-04-08 05:58:20,733 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [12746771] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:58:20,733 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:58:20,733 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 05:58:20,734 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1119179746] [2022-04-08 05:58:20,734 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:58:20,735 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 42 [2022-04-08 05:58:20,735 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:58:20,735 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 05:58:20,754 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:20,754 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 05:58:20,754 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:20,755 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 05:58:20,756 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=60, Invalid=246, Unknown=0, NotChecked=0, Total=306 [2022-04-08 05:58:20,756 INFO L87 Difference]: Start difference. First operand 71 states and 95 transitions. Second operand has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 05:58:22,002 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:22,002 INFO L93 Difference]: Finished difference Result 112 states and 151 transitions. [2022-04-08 05:58:22,002 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 05:58:22,003 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 42 [2022-04-08 05:58:22,003 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:58:22,003 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 05:58:22,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 117 transitions. [2022-04-08 05:58:22,005 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 05:58:22,007 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 117 transitions. [2022-04-08 05:58:22,008 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 117 transitions. [2022-04-08 05:58:22,102 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:22,105 INFO L225 Difference]: With dead ends: 112 [2022-04-08 05:58:22,105 INFO L226 Difference]: Without dead ends: 110 [2022-04-08 05:58:22,106 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 66 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 81 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=96, Invalid=410, Unknown=0, NotChecked=0, Total=506 [2022-04-08 05:58:22,106 INFO L913 BasicCegarLoop]: 52 mSDtfsCounter, 89 mSDsluCounter, 193 mSDsCounter, 0 mSdLazyCounter, 358 mSolverCounterSat, 56 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 98 SdHoareTripleChecker+Valid, 245 SdHoareTripleChecker+Invalid, 414 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 56 IncrementalHoareTripleChecker+Valid, 358 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 05:58:22,106 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [98 Valid, 245 Invalid, 414 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [56 Valid, 358 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 05:58:22,107 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 110 states. [2022-04-08 05:58:22,254 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 110 to 93. [2022-04-08 05:58:22,255 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:58:22,255 INFO L82 GeneralOperation]: Start isEquivalent. First operand 110 states. Second operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 05:58:22,255 INFO L74 IsIncluded]: Start isIncluded. First operand 110 states. Second operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 05:58:22,256 INFO L87 Difference]: Start difference. First operand 110 states. Second operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 05:58:22,259 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:22,259 INFO L93 Difference]: Finished difference Result 110 states and 149 transitions. [2022-04-08 05:58:22,259 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 149 transitions. [2022-04-08 05:58:22,259 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:58:22,259 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:58:22,260 INFO L74 IsIncluded]: Start isIncluded. First operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) Second operand 110 states. [2022-04-08 05:58:22,260 INFO L87 Difference]: Start difference. First operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) Second operand 110 states. [2022-04-08 05:58:22,263 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:22,263 INFO L93 Difference]: Finished difference Result 110 states and 149 transitions. [2022-04-08 05:58:22,263 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 149 transitions. [2022-04-08 05:58:22,263 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:58:22,263 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:58:22,264 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:58:22,264 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:58:22,264 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 05:58:22,266 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93 states to 93 states and 122 transitions. [2022-04-08 05:58:22,266 INFO L78 Accepts]: Start accepts. Automaton has 93 states and 122 transitions. Word has length 42 [2022-04-08 05:58:22,266 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:58:22,266 INFO L478 AbstractCegarLoop]: Abstraction has 93 states and 122 transitions. [2022-04-08 05:58:22,267 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 05:58:22,267 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 93 states and 122 transitions. [2022-04-08 05:58:22,376 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:22,376 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 122 transitions. [2022-04-08 05:58:22,377 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-08 05:58:22,377 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:58:22,377 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 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] [2022-04-08 05:58:22,393 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-08 05:58:22,593 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:58:22,595 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:58:22,596 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:58:22,596 INFO L85 PathProgramCache]: Analyzing trace with hash 81990170, now seen corresponding path program 1 times [2022-04-08 05:58:22,596 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:22,596 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [565223515] [2022-04-08 05:58:22,596 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:58:22,596 INFO L85 PathProgramCache]: Analyzing trace with hash 81990170, now seen corresponding path program 2 times [2022-04-08 05:58:22,596 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:58:22,596 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1174067625] [2022-04-08 05:58:22,597 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:58:22,597 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:58:22,614 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:58:22,614 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [98277977] [2022-04-08 05:58:22,614 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:58:22,614 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:58:22,614 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:58:22,615 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:58:22,642 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-08 05:58:22,664 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:58:22,664 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:58:22,665 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-08 05:58:22,675 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:58:22,675 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:58:22,902 INFO L272 TraceCheckUtils]: 0: Hoare triple {2475#true} call ULTIMATE.init(); {2475#true} is VALID [2022-04-08 05:58:22,902 INFO L290 TraceCheckUtils]: 1: Hoare triple {2475#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {2475#true} is VALID [2022-04-08 05:58:22,902 INFO L290 TraceCheckUtils]: 2: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 05:58:22,902 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2475#true} {2475#true} #112#return; {2475#true} is VALID [2022-04-08 05:58:22,902 INFO L272 TraceCheckUtils]: 4: Hoare triple {2475#true} call #t~ret6 := main(); {2475#true} is VALID [2022-04-08 05:58:22,902 INFO L290 TraceCheckUtils]: 5: Hoare triple {2475#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2475#true} is VALID [2022-04-08 05:58:22,902 INFO L272 TraceCheckUtils]: 6: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {2475#true} is VALID [2022-04-08 05:58:22,902 INFO L290 TraceCheckUtils]: 7: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 05:58:22,902 INFO L290 TraceCheckUtils]: 8: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 05:58:22,903 INFO L290 TraceCheckUtils]: 9: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 05:58:22,903 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2475#true} {2475#true} #94#return; {2475#true} is VALID [2022-04-08 05:58:22,903 INFO L290 TraceCheckUtils]: 11: Hoare triple {2475#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2475#true} is VALID [2022-04-08 05:58:22,903 INFO L272 TraceCheckUtils]: 12: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {2475#true} is VALID [2022-04-08 05:58:22,903 INFO L290 TraceCheckUtils]: 13: Hoare triple {2475#true} ~cond := #in~cond; {2519#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:58:22,904 INFO L290 TraceCheckUtils]: 14: Hoare triple {2519#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2523#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:58:22,904 INFO L290 TraceCheckUtils]: 15: Hoare triple {2523#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2523#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:58:22,904 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2523#(not (= |assume_abort_if_not_#in~cond| 0))} {2475#true} #96#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 05:58:22,904 INFO L272 TraceCheckUtils]: 17: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 5))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-08 05:58:22,905 INFO L290 TraceCheckUtils]: 18: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 05:58:22,905 INFO L290 TraceCheckUtils]: 19: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 05:58:22,905 INFO L290 TraceCheckUtils]: 20: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 05:58:22,905 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2475#true} {2530#(and (<= 0 main_~y~0) (<= main_~y~0 5))} #98#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 05:58:22,905 INFO L272 TraceCheckUtils]: 22: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 5))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-08 05:58:22,905 INFO L290 TraceCheckUtils]: 23: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 05:58:22,905 INFO L290 TraceCheckUtils]: 24: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 05:58:22,905 INFO L290 TraceCheckUtils]: 25: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 05:58:22,906 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2475#true} {2530#(and (<= 0 main_~y~0) (<= main_~y~0 5))} #100#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 05:58:22,906 INFO L290 TraceCheckUtils]: 27: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 5))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2564#(<= 0 main_~b~0)} is VALID [2022-04-08 05:58:22,906 INFO L290 TraceCheckUtils]: 28: Hoare triple {2564#(<= 0 main_~b~0)} assume !false; {2564#(<= 0 main_~b~0)} is VALID [2022-04-08 05:58:22,907 INFO L290 TraceCheckUtils]: 29: Hoare triple {2564#(<= 0 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:58:22,907 INFO L290 TraceCheckUtils]: 30: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !false; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:58:22,907 INFO L290 TraceCheckUtils]: 31: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:58:22,908 INFO L290 TraceCheckUtils]: 32: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !false; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:58:22,908 INFO L272 TraceCheckUtils]: 33: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2475#true} is VALID [2022-04-08 05:58:22,908 INFO L290 TraceCheckUtils]: 34: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 05:58:22,908 INFO L290 TraceCheckUtils]: 35: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 05:58:22,908 INFO L290 TraceCheckUtils]: 36: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 05:58:22,909 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2475#true} {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #102#return; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:58:22,909 INFO L272 TraceCheckUtils]: 38: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2475#true} is VALID [2022-04-08 05:58:22,909 INFO L290 TraceCheckUtils]: 39: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 05:58:22,909 INFO L290 TraceCheckUtils]: 40: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 05:58:22,909 INFO L290 TraceCheckUtils]: 41: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 05:58:22,909 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {2475#true} {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #104#return; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:58:22,910 INFO L272 TraceCheckUtils]: 43: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:58:22,910 INFO L290 TraceCheckUtils]: 44: Hoare triple {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2618#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:58:22,911 INFO L290 TraceCheckUtils]: 45: Hoare triple {2618#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2476#false} is VALID [2022-04-08 05:58:22,911 INFO L290 TraceCheckUtils]: 46: Hoare triple {2476#false} assume !false; {2476#false} is VALID [2022-04-08 05:58:22,911 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 7 proven. 6 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-08 05:58:22,911 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:58:23,084 INFO L290 TraceCheckUtils]: 46: Hoare triple {2476#false} assume !false; {2476#false} is VALID [2022-04-08 05:58:23,085 INFO L290 TraceCheckUtils]: 45: Hoare triple {2618#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2476#false} is VALID [2022-04-08 05:58:23,085 INFO L290 TraceCheckUtils]: 44: Hoare triple {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2618#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:58:23,085 INFO L272 TraceCheckUtils]: 43: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:58:23,086 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {2475#true} {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #104#return; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:58:23,086 INFO L290 TraceCheckUtils]: 41: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 05:58:23,086 INFO L290 TraceCheckUtils]: 40: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 05:58:23,086 INFO L290 TraceCheckUtils]: 39: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 05:58:23,086 INFO L272 TraceCheckUtils]: 38: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2475#true} is VALID [2022-04-08 05:58:23,087 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2475#true} {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #102#return; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:58:23,087 INFO L290 TraceCheckUtils]: 36: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 05:58:23,087 INFO L290 TraceCheckUtils]: 35: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 05:58:23,087 INFO L290 TraceCheckUtils]: 34: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 05:58:23,087 INFO L272 TraceCheckUtils]: 33: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2475#true} is VALID [2022-04-08 05:58:23,088 INFO L290 TraceCheckUtils]: 32: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:58:23,088 INFO L290 TraceCheckUtils]: 31: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:58:23,089 INFO L290 TraceCheckUtils]: 30: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:58:23,089 INFO L290 TraceCheckUtils]: 29: Hoare triple {2475#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 05:58:23,089 INFO L290 TraceCheckUtils]: 28: Hoare triple {2475#true} assume !false; {2475#true} is VALID [2022-04-08 05:58:23,089 INFO L290 TraceCheckUtils]: 27: Hoare triple {2475#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2475#true} is VALID [2022-04-08 05:58:23,089 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2475#true} {2475#true} #100#return; {2475#true} is VALID [2022-04-08 05:58:23,089 INFO L290 TraceCheckUtils]: 25: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 05:58:23,089 INFO L290 TraceCheckUtils]: 24: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 05:58:23,089 INFO L290 TraceCheckUtils]: 23: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 05:58:23,089 INFO L272 TraceCheckUtils]: 22: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-08 05:58:23,089 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2475#true} {2475#true} #98#return; {2475#true} is VALID [2022-04-08 05:58:23,089 INFO L290 TraceCheckUtils]: 20: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 05:58:23,090 INFO L290 TraceCheckUtils]: 19: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 05:58:23,090 INFO L290 TraceCheckUtils]: 18: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 05:58:23,090 INFO L272 TraceCheckUtils]: 17: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-08 05:58:23,090 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2475#true} {2475#true} #96#return; {2475#true} is VALID [2022-04-08 05:58:23,090 INFO L290 TraceCheckUtils]: 15: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 05:58:23,090 INFO L290 TraceCheckUtils]: 14: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 05:58:23,090 INFO L290 TraceCheckUtils]: 13: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 05:58:23,090 INFO L272 TraceCheckUtils]: 12: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {2475#true} is VALID [2022-04-08 05:58:23,090 INFO L290 TraceCheckUtils]: 11: Hoare triple {2475#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2475#true} is VALID [2022-04-08 05:58:23,090 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2475#true} {2475#true} #94#return; {2475#true} is VALID [2022-04-08 05:58:23,090 INFO L290 TraceCheckUtils]: 9: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 05:58:23,090 INFO L290 TraceCheckUtils]: 8: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 05:58:23,090 INFO L290 TraceCheckUtils]: 7: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 05:58:23,090 INFO L272 TraceCheckUtils]: 6: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {2475#true} is VALID [2022-04-08 05:58:23,091 INFO L290 TraceCheckUtils]: 5: Hoare triple {2475#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2475#true} is VALID [2022-04-08 05:58:23,091 INFO L272 TraceCheckUtils]: 4: Hoare triple {2475#true} call #t~ret6 := main(); {2475#true} is VALID [2022-04-08 05:58:23,091 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2475#true} {2475#true} #112#return; {2475#true} is VALID [2022-04-08 05:58:23,091 INFO L290 TraceCheckUtils]: 2: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 05:58:23,091 INFO L290 TraceCheckUtils]: 1: Hoare triple {2475#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {2475#true} is VALID [2022-04-08 05:58:23,091 INFO L272 TraceCheckUtils]: 0: Hoare triple {2475#true} call ULTIMATE.init(); {2475#true} is VALID [2022-04-08 05:58:23,091 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 05:58:23,091 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:58:23,091 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1174067625] [2022-04-08 05:58:23,091 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:58:23,091 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [98277977] [2022-04-08 05:58:23,091 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [98277977] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 05:58:23,091 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 05:58:23,092 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-04-08 05:58:23,092 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:58:23,092 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [565223515] [2022-04-08 05:58:23,092 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [565223515] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:58:23,092 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:58:23,092 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:58:23,092 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1156331918] [2022-04-08 05:58:23,092 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:58:23,092 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 47 [2022-04-08 05:58:23,093 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:58:23,093 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 05:58:23,113 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:23,113 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:58:23,113 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:23,113 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:58:23,113 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=71, Unknown=0, NotChecked=0, Total=90 [2022-04-08 05:58:23,113 INFO L87 Difference]: Start difference. First operand 93 states and 122 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 05:58:23,516 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:23,516 INFO L93 Difference]: Finished difference Result 130 states and 179 transitions. [2022-04-08 05:58:23,516 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:58:23,517 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 47 [2022-04-08 05:58:23,517 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:58:23,517 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 05:58:23,518 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 05:58:23,518 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 05:58:23,519 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 05:58:23,519 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-08 05:58:23,565 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:23,567 INFO L225 Difference]: With dead ends: 130 [2022-04-08 05:58:23,567 INFO L226 Difference]: Without dead ends: 128 [2022-04-08 05:58:23,568 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 84 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-08 05:58:23,568 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 8 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:58:23,568 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 141 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:58:23,569 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 128 states. [2022-04-08 05:58:23,806 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 128 to 123. [2022-04-08 05:58:23,806 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:58:23,807 INFO L82 GeneralOperation]: Start isEquivalent. First operand 128 states. Second operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 05:58:23,807 INFO L74 IsIncluded]: Start isIncluded. First operand 128 states. Second operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 05:58:23,807 INFO L87 Difference]: Start difference. First operand 128 states. Second operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 05:58:23,811 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:23,811 INFO L93 Difference]: Finished difference Result 128 states and 177 transitions. [2022-04-08 05:58:23,811 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 177 transitions. [2022-04-08 05:58:23,811 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:58:23,811 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:58:23,812 INFO L74 IsIncluded]: Start isIncluded. First operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 128 states. [2022-04-08 05:58:23,812 INFO L87 Difference]: Start difference. First operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 128 states. [2022-04-08 05:58:23,816 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:23,816 INFO L93 Difference]: Finished difference Result 128 states and 177 transitions. [2022-04-08 05:58:23,816 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 177 transitions. [2022-04-08 05:58:23,816 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:58:23,816 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:58:23,816 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:58:23,816 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:58:23,817 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 05:58:23,820 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 123 states and 172 transitions. [2022-04-08 05:58:23,820 INFO L78 Accepts]: Start accepts. Automaton has 123 states and 172 transitions. Word has length 47 [2022-04-08 05:58:23,820 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:58:23,820 INFO L478 AbstractCegarLoop]: Abstraction has 123 states and 172 transitions. [2022-04-08 05:58:23,820 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 05:58:23,821 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 123 states and 172 transitions. [2022-04-08 05:58:24,002 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 172 edges. 172 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:24,003 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 172 transitions. [2022-04-08 05:58:24,003 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-08 05:58:24,003 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:58:24,003 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 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] [2022-04-08 05:58:24,022 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-08 05:58:24,204 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:58:24,204 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:58:24,204 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:58:24,204 INFO L85 PathProgramCache]: Analyzing trace with hash 1524769911, now seen corresponding path program 1 times [2022-04-08 05:58:24,204 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:24,205 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1249974422] [2022-04-08 05:58:24,205 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:58:24,205 INFO L85 PathProgramCache]: Analyzing trace with hash 1524769911, now seen corresponding path program 2 times [2022-04-08 05:58:24,205 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:58:24,205 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [864325484] [2022-04-08 05:58:24,205 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:58:24,205 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:58:24,219 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:58:24,221 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1359031621] [2022-04-08 05:58:24,222 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:58:24,222 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:58:24,222 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:58:24,223 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:58:24,224 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-08 05:58:24,261 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:58:24,261 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:58:24,262 INFO L263 TraceCheckSpWp]: Trace formula consists of 148 conjuncts, 35 conjunts are in the unsatisfiable core [2022-04-08 05:58:24,269 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:58:24,270 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:58:24,568 INFO L272 TraceCheckUtils]: 0: Hoare triple {3530#true} call ULTIMATE.init(); {3530#true} is VALID [2022-04-08 05:58:24,569 INFO L290 TraceCheckUtils]: 1: Hoare triple {3530#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {3530#true} is VALID [2022-04-08 05:58:24,569 INFO L290 TraceCheckUtils]: 2: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 05:58:24,569 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3530#true} {3530#true} #112#return; {3530#true} is VALID [2022-04-08 05:58:24,569 INFO L272 TraceCheckUtils]: 4: Hoare triple {3530#true} call #t~ret6 := main(); {3530#true} is VALID [2022-04-08 05:58:24,569 INFO L290 TraceCheckUtils]: 5: Hoare triple {3530#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3530#true} is VALID [2022-04-08 05:58:24,569 INFO L272 TraceCheckUtils]: 6: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {3530#true} is VALID [2022-04-08 05:58:24,569 INFO L290 TraceCheckUtils]: 7: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 05:58:24,569 INFO L290 TraceCheckUtils]: 8: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 05:58:24,569 INFO L290 TraceCheckUtils]: 9: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 05:58:24,569 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3530#true} {3530#true} #94#return; {3530#true} is VALID [2022-04-08 05:58:24,569 INFO L290 TraceCheckUtils]: 11: Hoare triple {3530#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3530#true} is VALID [2022-04-08 05:58:24,569 INFO L272 TraceCheckUtils]: 12: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {3530#true} is VALID [2022-04-08 05:58:24,569 INFO L290 TraceCheckUtils]: 13: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 05:58:24,569 INFO L290 TraceCheckUtils]: 14: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 05:58:24,570 INFO L290 TraceCheckUtils]: 15: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 05:58:24,570 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3530#true} {3530#true} #96#return; {3530#true} is VALID [2022-04-08 05:58:24,570 INFO L272 TraceCheckUtils]: 17: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-08 05:58:24,570 INFO L290 TraceCheckUtils]: 18: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 05:58:24,570 INFO L290 TraceCheckUtils]: 19: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 05:58:24,570 INFO L290 TraceCheckUtils]: 20: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 05:58:24,570 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3530#true} {3530#true} #98#return; {3530#true} is VALID [2022-04-08 05:58:24,570 INFO L272 TraceCheckUtils]: 22: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-08 05:58:24,570 INFO L290 TraceCheckUtils]: 23: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 05:58:24,570 INFO L290 TraceCheckUtils]: 24: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 05:58:24,570 INFO L290 TraceCheckUtils]: 25: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 05:58:24,570 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3530#true} {3530#true} #100#return; {3530#true} is VALID [2022-04-08 05:58:24,571 INFO L290 TraceCheckUtils]: 27: Hoare triple {3530#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3616#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:24,571 INFO L290 TraceCheckUtils]: 28: Hoare triple {3616#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {3616#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:24,572 INFO L290 TraceCheckUtils]: 29: Hoare triple {3616#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3623#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:24,572 INFO L290 TraceCheckUtils]: 30: Hoare triple {3623#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {3623#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:24,572 INFO L290 TraceCheckUtils]: 31: Hoare triple {3623#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {3623#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:24,573 INFO L290 TraceCheckUtils]: 32: Hoare triple {3623#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3633#(and (= main_~s~0 0) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:58:24,573 INFO L290 TraceCheckUtils]: 33: Hoare triple {3633#(and (= main_~s~0 0) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {3633#(and (= main_~s~0 0) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:58:24,574 INFO L290 TraceCheckUtils]: 34: Hoare triple {3633#(and (= main_~s~0 0) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:58:24,574 INFO L290 TraceCheckUtils]: 35: Hoare triple {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:58:24,574 INFO L290 TraceCheckUtils]: 36: Hoare triple {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:58:24,575 INFO L290 TraceCheckUtils]: 37: Hoare triple {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:58:24,575 INFO L272 TraceCheckUtils]: 38: Hoare triple {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3530#true} is VALID [2022-04-08 05:58:24,575 INFO L290 TraceCheckUtils]: 39: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 05:58:24,575 INFO L290 TraceCheckUtils]: 40: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 05:58:24,575 INFO L290 TraceCheckUtils]: 41: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 05:58:24,576 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {3530#true} {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #102#return; {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 05:58:24,577 INFO L272 TraceCheckUtils]: 43: Hoare triple {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3668#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:58:24,577 INFO L290 TraceCheckUtils]: 44: Hoare triple {3668#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3672#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:58:24,577 INFO L290 TraceCheckUtils]: 45: Hoare triple {3672#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3531#false} is VALID [2022-04-08 05:58:24,577 INFO L290 TraceCheckUtils]: 46: Hoare triple {3531#false} assume !false; {3531#false} is VALID [2022-04-08 05:58:24,578 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 2 proven. 4 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 05:58:24,578 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:58:24,782 INFO L290 TraceCheckUtils]: 46: Hoare triple {3531#false} assume !false; {3531#false} is VALID [2022-04-08 05:58:24,782 INFO L290 TraceCheckUtils]: 45: Hoare triple {3672#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3531#false} is VALID [2022-04-08 05:58:24,783 INFO L290 TraceCheckUtils]: 44: Hoare triple {3668#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3672#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:58:24,783 INFO L272 TraceCheckUtils]: 43: Hoare triple {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3668#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:58:24,784 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {3530#true} {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:58:24,784 INFO L290 TraceCheckUtils]: 41: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 05:58:24,784 INFO L290 TraceCheckUtils]: 40: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 05:58:24,784 INFO L290 TraceCheckUtils]: 39: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 05:58:24,784 INFO L272 TraceCheckUtils]: 38: Hoare triple {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3530#true} is VALID [2022-04-08 05:58:24,785 INFO L290 TraceCheckUtils]: 37: Hoare triple {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:58:24,785 INFO L290 TraceCheckUtils]: 36: Hoare triple {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:58:24,785 INFO L290 TraceCheckUtils]: 35: Hoare triple {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:58:24,786 INFO L290 TraceCheckUtils]: 34: Hoare triple {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:58:24,786 INFO L290 TraceCheckUtils]: 33: Hoare triple {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:58:25,756 INFO L290 TraceCheckUtils]: 32: Hoare triple {3722#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:58:25,757 INFO L290 TraceCheckUtils]: 31: Hoare triple {3722#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {3722#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 05:58:25,757 INFO L290 TraceCheckUtils]: 30: Hoare triple {3722#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !false; {3722#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 05:58:25,757 INFO L290 TraceCheckUtils]: 29: Hoare triple {3732#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 0) main_~a~0 (* main_~y~0 main_~s~0 0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3722#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 05:58:25,758 INFO L290 TraceCheckUtils]: 28: Hoare triple {3732#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 0) main_~a~0 (* main_~y~0 main_~s~0 0)))} assume !false; {3732#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 0) main_~a~0 (* main_~y~0 main_~s~0 0)))} is VALID [2022-04-08 05:58:25,758 INFO L290 TraceCheckUtils]: 27: Hoare triple {3530#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3732#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 0) main_~a~0 (* main_~y~0 main_~s~0 0)))} is VALID [2022-04-08 05:58:25,758 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3530#true} {3530#true} #100#return; {3530#true} is VALID [2022-04-08 05:58:25,758 INFO L290 TraceCheckUtils]: 25: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 05:58:25,758 INFO L290 TraceCheckUtils]: 24: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 05:58:25,759 INFO L290 TraceCheckUtils]: 23: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 05:58:25,759 INFO L272 TraceCheckUtils]: 22: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-08 05:58:25,759 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3530#true} {3530#true} #98#return; {3530#true} is VALID [2022-04-08 05:58:25,759 INFO L290 TraceCheckUtils]: 20: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 05:58:25,759 INFO L290 TraceCheckUtils]: 19: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 05:58:25,759 INFO L290 TraceCheckUtils]: 18: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 05:58:25,759 INFO L272 TraceCheckUtils]: 17: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-08 05:58:25,759 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3530#true} {3530#true} #96#return; {3530#true} is VALID [2022-04-08 05:58:25,759 INFO L290 TraceCheckUtils]: 15: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 05:58:25,759 INFO L290 TraceCheckUtils]: 14: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 05:58:25,759 INFO L290 TraceCheckUtils]: 13: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 05:58:25,759 INFO L272 TraceCheckUtils]: 12: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {3530#true} is VALID [2022-04-08 05:58:25,759 INFO L290 TraceCheckUtils]: 11: Hoare triple {3530#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3530#true} is VALID [2022-04-08 05:58:25,759 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3530#true} {3530#true} #94#return; {3530#true} is VALID [2022-04-08 05:58:25,759 INFO L290 TraceCheckUtils]: 9: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 05:58:25,759 INFO L290 TraceCheckUtils]: 8: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 05:58:25,760 INFO L290 TraceCheckUtils]: 7: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 05:58:25,760 INFO L272 TraceCheckUtils]: 6: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {3530#true} is VALID [2022-04-08 05:58:25,760 INFO L290 TraceCheckUtils]: 5: Hoare triple {3530#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3530#true} is VALID [2022-04-08 05:58:25,760 INFO L272 TraceCheckUtils]: 4: Hoare triple {3530#true} call #t~ret6 := main(); {3530#true} is VALID [2022-04-08 05:58:25,760 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3530#true} {3530#true} #112#return; {3530#true} is VALID [2022-04-08 05:58:25,760 INFO L290 TraceCheckUtils]: 2: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 05:58:25,760 INFO L290 TraceCheckUtils]: 1: Hoare triple {3530#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {3530#true} is VALID [2022-04-08 05:58:25,760 INFO L272 TraceCheckUtils]: 0: Hoare triple {3530#true} call ULTIMATE.init(); {3530#true} is VALID [2022-04-08 05:58:25,760 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 2 proven. 4 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 05:58:25,760 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:58:25,760 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [864325484] [2022-04-08 05:58:25,760 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:58:25,760 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1359031621] [2022-04-08 05:58:25,761 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1359031621] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:58:25,761 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:58:25,761 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-08 05:58:25,761 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:58:25,761 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1249974422] [2022-04-08 05:58:25,761 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1249974422] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:58:25,761 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:58:25,761 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 05:58:25,761 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [617854205] [2022-04-08 05:58:25,761 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:58:25,762 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 47 [2022-04-08 05:58:25,762 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:58:25,762 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 05:58:25,787 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:25,788 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 05:58:25,788 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:25,788 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 05:58:25,788 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-08 05:58:25,788 INFO L87 Difference]: Start difference. First operand 123 states and 172 transitions. Second operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 05:58:26,549 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:26,551 INFO L93 Difference]: Finished difference Result 137 states and 184 transitions. [2022-04-08 05:58:26,551 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 05:58:26,551 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 47 [2022-04-08 05:58:26,551 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:58:26,551 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 05:58:26,553 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 101 transitions. [2022-04-08 05:58:26,553 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 05:58:26,555 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 101 transitions. [2022-04-08 05:58:26,555 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 101 transitions. [2022-04-08 05:58:26,632 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:26,635 INFO L225 Difference]: With dead ends: 137 [2022-04-08 05:58:26,635 INFO L226 Difference]: Without dead ends: 135 [2022-04-08 05:58:26,635 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 95 GetRequests, 83 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=119, Unknown=0, NotChecked=0, Total=156 [2022-04-08 05:58:26,636 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 32 mSDsluCounter, 182 mSDsCounter, 0 mSdLazyCounter, 206 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 40 SdHoareTripleChecker+Valid, 233 SdHoareTripleChecker+Invalid, 221 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 206 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 05:58:26,636 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [40 Valid, 233 Invalid, 221 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 206 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 05:58:26,637 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 135 states. [2022-04-08 05:58:26,841 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 135 to 131. [2022-04-08 05:58:26,841 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:58:26,842 INFO L82 GeneralOperation]: Start isEquivalent. First operand 135 states. Second operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 05:58:26,842 INFO L74 IsIncluded]: Start isIncluded. First operand 135 states. Second operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 05:58:26,842 INFO L87 Difference]: Start difference. First operand 135 states. Second operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 05:58:26,846 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:26,846 INFO L93 Difference]: Finished difference Result 135 states and 182 transitions. [2022-04-08 05:58:26,847 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 182 transitions. [2022-04-08 05:58:26,850 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:58:26,850 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:58:26,850 INFO L74 IsIncluded]: Start isIncluded. First operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 135 states. [2022-04-08 05:58:26,851 INFO L87 Difference]: Start difference. First operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 135 states. [2022-04-08 05:58:26,854 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:26,854 INFO L93 Difference]: Finished difference Result 135 states and 182 transitions. [2022-04-08 05:58:26,854 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 182 transitions. [2022-04-08 05:58:26,855 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:58:26,855 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:58:26,855 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:58:26,855 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:58:26,855 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 05:58:26,858 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 178 transitions. [2022-04-08 05:58:26,859 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 178 transitions. Word has length 47 [2022-04-08 05:58:26,859 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:58:26,859 INFO L478 AbstractCegarLoop]: Abstraction has 131 states and 178 transitions. [2022-04-08 05:58:26,859 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 05:58:26,859 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 131 states and 178 transitions. [2022-04-08 05:58:27,055 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 178 edges. 178 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:27,056 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 178 transitions. [2022-04-08 05:58:27,056 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-08 05:58:27,056 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:58:27,056 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 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] [2022-04-08 05:58:27,072 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-08 05:58:27,256 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:58:27,257 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:58:27,257 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:58:27,257 INFO L85 PathProgramCache]: Analyzing trace with hash 1836145722, now seen corresponding path program 3 times [2022-04-08 05:58:27,257 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:27,257 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [744744070] [2022-04-08 05:58:27,258 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:58:27,258 INFO L85 PathProgramCache]: Analyzing trace with hash 1836145722, now seen corresponding path program 4 times [2022-04-08 05:58:27,258 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:58:27,258 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1425311800] [2022-04-08 05:58:27,258 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:58:27,258 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:58:27,273 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:58:27,273 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1648580846] [2022-04-08 05:58:27,273 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:58:27,273 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:58:27,274 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:58:27,274 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:58:27,275 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-08 05:58:27,309 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:58:27,310 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:58:27,310 INFO L263 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 05:58:27,318 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:58:27,321 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:58:27,436 INFO L272 TraceCheckUtils]: 0: Hoare triple {4632#true} call ULTIMATE.init(); {4632#true} is VALID [2022-04-08 05:58:27,436 INFO L290 TraceCheckUtils]: 1: Hoare triple {4632#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {4632#true} is VALID [2022-04-08 05:58:27,436 INFO L290 TraceCheckUtils]: 2: Hoare triple {4632#true} assume true; {4632#true} is VALID [2022-04-08 05:58:27,436 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4632#true} {4632#true} #112#return; {4632#true} is VALID [2022-04-08 05:58:27,436 INFO L272 TraceCheckUtils]: 4: Hoare triple {4632#true} call #t~ret6 := main(); {4632#true} is VALID [2022-04-08 05:58:27,436 INFO L290 TraceCheckUtils]: 5: Hoare triple {4632#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {4632#true} is VALID [2022-04-08 05:58:27,436 INFO L272 TraceCheckUtils]: 6: Hoare triple {4632#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {4632#true} is VALID [2022-04-08 05:58:27,436 INFO L290 TraceCheckUtils]: 7: Hoare triple {4632#true} ~cond := #in~cond; {4632#true} is VALID [2022-04-08 05:58:27,436 INFO L290 TraceCheckUtils]: 8: Hoare triple {4632#true} assume !(0 == ~cond); {4632#true} is VALID [2022-04-08 05:58:27,437 INFO L290 TraceCheckUtils]: 9: Hoare triple {4632#true} assume true; {4632#true} is VALID [2022-04-08 05:58:27,437 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4632#true} {4632#true} #94#return; {4632#true} is VALID [2022-04-08 05:58:27,437 INFO L290 TraceCheckUtils]: 11: Hoare triple {4632#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4632#true} is VALID [2022-04-08 05:58:27,437 INFO L272 TraceCheckUtils]: 12: Hoare triple {4632#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {4632#true} is VALID [2022-04-08 05:58:27,437 INFO L290 TraceCheckUtils]: 13: Hoare triple {4632#true} ~cond := #in~cond; {4632#true} is VALID [2022-04-08 05:58:27,437 INFO L290 TraceCheckUtils]: 14: Hoare triple {4632#true} assume !(0 == ~cond); {4632#true} is VALID [2022-04-08 05:58:27,437 INFO L290 TraceCheckUtils]: 15: Hoare triple {4632#true} assume true; {4632#true} is VALID [2022-04-08 05:58:27,437 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4632#true} {4632#true} #96#return; {4632#true} is VALID [2022-04-08 05:58:27,437 INFO L272 TraceCheckUtils]: 17: Hoare triple {4632#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4632#true} is VALID [2022-04-08 05:58:27,437 INFO L290 TraceCheckUtils]: 18: Hoare triple {4632#true} ~cond := #in~cond; {4632#true} is VALID [2022-04-08 05:58:27,437 INFO L290 TraceCheckUtils]: 19: Hoare triple {4632#true} assume !(0 == ~cond); {4632#true} is VALID [2022-04-08 05:58:27,437 INFO L290 TraceCheckUtils]: 20: Hoare triple {4632#true} assume true; {4632#true} is VALID [2022-04-08 05:58:27,437 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4632#true} {4632#true} #98#return; {4632#true} is VALID [2022-04-08 05:58:27,438 INFO L272 TraceCheckUtils]: 22: Hoare triple {4632#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4632#true} is VALID [2022-04-08 05:58:27,438 INFO L290 TraceCheckUtils]: 23: Hoare triple {4632#true} ~cond := #in~cond; {4632#true} is VALID [2022-04-08 05:58:27,438 INFO L290 TraceCheckUtils]: 24: Hoare triple {4632#true} assume !(0 == ~cond); {4632#true} is VALID [2022-04-08 05:58:27,438 INFO L290 TraceCheckUtils]: 25: Hoare triple {4632#true} assume true; {4632#true} is VALID [2022-04-08 05:58:27,438 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4632#true} {4632#true} #100#return; {4632#true} is VALID [2022-04-08 05:58:27,438 INFO L290 TraceCheckUtils]: 27: Hoare triple {4632#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4632#true} is VALID [2022-04-08 05:58:27,438 INFO L290 TraceCheckUtils]: 28: Hoare triple {4632#true} assume !false; {4632#true} is VALID [2022-04-08 05:58:27,439 INFO L290 TraceCheckUtils]: 29: Hoare triple {4632#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4632#true} is VALID [2022-04-08 05:58:27,439 INFO L290 TraceCheckUtils]: 30: Hoare triple {4632#true} assume !false; {4632#true} is VALID [2022-04-08 05:58:27,451 INFO L290 TraceCheckUtils]: 31: Hoare triple {4632#true} assume !(~c~0 >= ~b~0); {4730#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:58:27,452 INFO L290 TraceCheckUtils]: 32: Hoare triple {4730#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4734#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:58:27,452 INFO L290 TraceCheckUtils]: 33: Hoare triple {4734#(< main_~b~0 main_~a~0)} assume !false; {4734#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:58:27,452 INFO L290 TraceCheckUtils]: 34: Hoare triple {4734#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4741#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:58:27,453 INFO L290 TraceCheckUtils]: 35: Hoare triple {4741#(< main_~b~0 main_~c~0)} assume !false; {4741#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:58:27,453 INFO L290 TraceCheckUtils]: 36: Hoare triple {4741#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {4633#false} is VALID [2022-04-08 05:58:27,453 INFO L290 TraceCheckUtils]: 37: Hoare triple {4633#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4633#false} is VALID [2022-04-08 05:58:27,453 INFO L290 TraceCheckUtils]: 38: Hoare triple {4633#false} assume !false; {4633#false} is VALID [2022-04-08 05:58:27,453 INFO L290 TraceCheckUtils]: 39: Hoare triple {4633#false} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4633#false} is VALID [2022-04-08 05:58:27,453 INFO L290 TraceCheckUtils]: 40: Hoare triple {4633#false} assume !false; {4633#false} is VALID [2022-04-08 05:58:27,453 INFO L290 TraceCheckUtils]: 41: Hoare triple {4633#false} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4633#false} is VALID [2022-04-08 05:58:27,453 INFO L290 TraceCheckUtils]: 42: Hoare triple {4633#false} assume !false; {4633#false} is VALID [2022-04-08 05:58:27,454 INFO L272 TraceCheckUtils]: 43: Hoare triple {4633#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4633#false} is VALID [2022-04-08 05:58:27,454 INFO L290 TraceCheckUtils]: 44: Hoare triple {4633#false} ~cond := #in~cond; {4633#false} is VALID [2022-04-08 05:58:27,454 INFO L290 TraceCheckUtils]: 45: Hoare triple {4633#false} assume 0 == ~cond; {4633#false} is VALID [2022-04-08 05:58:27,454 INFO L290 TraceCheckUtils]: 46: Hoare triple {4633#false} assume !false; {4633#false} is VALID [2022-04-08 05:58:27,454 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 13 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 05:58:27,454 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 05:58:27,454 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:58:27,454 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1425311800] [2022-04-08 05:58:27,454 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:58:27,454 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1648580846] [2022-04-08 05:58:27,454 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1648580846] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:58:27,454 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:58:27,454 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:58:27,455 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:58:27,455 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [744744070] [2022-04-08 05:58:27,455 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [744744070] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:58:27,455 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:58:27,455 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:58:27,455 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2029705807] [2022-04-08 05:58:27,455 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:58:27,456 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 47 [2022-04-08 05:58:27,456 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:58:27,456 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 05:58:27,486 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:27,486 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:58:27,486 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:27,486 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:58:27,486 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 05:58:27,487 INFO L87 Difference]: Start difference. First operand 131 states and 178 transitions. Second operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 05:58:27,927 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:27,927 INFO L93 Difference]: Finished difference Result 170 states and 230 transitions. [2022-04-08 05:58:27,927 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 05:58:27,928 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 47 [2022-04-08 05:58:27,930 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:58:27,930 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 05:58:27,933 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 102 transitions. [2022-04-08 05:58:27,933 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 05:58:27,935 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 102 transitions. [2022-04-08 05:58:27,935 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 102 transitions. [2022-04-08 05:58:28,002 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:28,005 INFO L225 Difference]: With dead ends: 170 [2022-04-08 05:58:28,005 INFO L226 Difference]: Without dead ends: 114 [2022-04-08 05:58:28,006 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 49 GetRequests, 44 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-04-08 05:58:28,006 INFO L913 BasicCegarLoop]: 57 mSDtfsCounter, 18 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 82 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 155 SdHoareTripleChecker+Invalid, 91 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 82 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 05:58:28,006 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 155 Invalid, 91 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 82 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 05:58:28,007 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 114 states. [2022-04-08 05:58:28,198 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 114 to 106. [2022-04-08 05:58:28,198 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:58:28,198 INFO L82 GeneralOperation]: Start isEquivalent. First operand 114 states. Second operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-08 05:58:28,199 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-08 05:58:28,199 INFO L87 Difference]: Start difference. First operand 114 states. Second operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-08 05:58:28,201 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:28,202 INFO L93 Difference]: Finished difference Result 114 states and 146 transitions. [2022-04-08 05:58:28,202 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 146 transitions. [2022-04-08 05:58:28,202 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:58:28,202 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:58:28,202 INFO L74 IsIncluded]: Start isIncluded. First operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) Second operand 114 states. [2022-04-08 05:58:28,202 INFO L87 Difference]: Start difference. First operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) Second operand 114 states. [2022-04-08 05:58:28,205 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:28,205 INFO L93 Difference]: Finished difference Result 114 states and 146 transitions. [2022-04-08 05:58:28,205 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 146 transitions. [2022-04-08 05:58:28,205 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:58:28,205 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:58:28,205 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:58:28,205 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:58:28,206 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-08 05:58:28,208 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 137 transitions. [2022-04-08 05:58:28,208 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 137 transitions. Word has length 47 [2022-04-08 05:58:28,208 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:58:28,208 INFO L478 AbstractCegarLoop]: Abstraction has 106 states and 137 transitions. [2022-04-08 05:58:28,209 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 05:58:28,209 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 106 states and 137 transitions. [2022-04-08 05:58:28,371 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:28,371 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 137 transitions. [2022-04-08 05:58:28,372 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-08 05:58:28,372 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:58:28,372 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 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] [2022-04-08 05:58:28,388 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-08 05:58:28,572 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:58:28,573 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:58:28,573 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:58:28,573 INFO L85 PathProgramCache]: Analyzing trace with hash -1952108775, now seen corresponding path program 1 times [2022-04-08 05:58:28,573 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:28,573 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1864730706] [2022-04-08 05:58:28,573 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:58:28,573 INFO L85 PathProgramCache]: Analyzing trace with hash -1952108775, now seen corresponding path program 2 times [2022-04-08 05:58:28,573 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:58:28,574 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1649356697] [2022-04-08 05:58:28,574 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:58:28,574 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:58:28,608 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:58:28,608 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1708382552] [2022-04-08 05:58:28,608 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:58:28,608 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:58:28,608 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:58:28,614 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:58:28,615 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-08 05:58:28,649 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:58:28,650 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:58:28,650 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 05:58:28,658 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:58:28,658 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:58:28,762 INFO L272 TraceCheckUtils]: 0: Hoare triple {5562#true} call ULTIMATE.init(); {5562#true} is VALID [2022-04-08 05:58:28,762 INFO L290 TraceCheckUtils]: 1: Hoare triple {5562#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {5562#true} is VALID [2022-04-08 05:58:28,762 INFO L290 TraceCheckUtils]: 2: Hoare triple {5562#true} assume true; {5562#true} is VALID [2022-04-08 05:58:28,762 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5562#true} {5562#true} #112#return; {5562#true} is VALID [2022-04-08 05:58:28,762 INFO L272 TraceCheckUtils]: 4: Hoare triple {5562#true} call #t~ret6 := main(); {5562#true} is VALID [2022-04-08 05:58:28,762 INFO L290 TraceCheckUtils]: 5: Hoare triple {5562#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {5562#true} is VALID [2022-04-08 05:58:28,763 INFO L272 TraceCheckUtils]: 6: Hoare triple {5562#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {5562#true} is VALID [2022-04-08 05:58:28,763 INFO L290 TraceCheckUtils]: 7: Hoare triple {5562#true} ~cond := #in~cond; {5562#true} is VALID [2022-04-08 05:58:28,763 INFO L290 TraceCheckUtils]: 8: Hoare triple {5562#true} assume !(0 == ~cond); {5562#true} is VALID [2022-04-08 05:58:28,763 INFO L290 TraceCheckUtils]: 9: Hoare triple {5562#true} assume true; {5562#true} is VALID [2022-04-08 05:58:28,763 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5562#true} {5562#true} #94#return; {5562#true} is VALID [2022-04-08 05:58:28,763 INFO L290 TraceCheckUtils]: 11: Hoare triple {5562#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5562#true} is VALID [2022-04-08 05:58:28,763 INFO L272 TraceCheckUtils]: 12: Hoare triple {5562#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {5562#true} is VALID [2022-04-08 05:58:28,763 INFO L290 TraceCheckUtils]: 13: Hoare triple {5562#true} ~cond := #in~cond; {5562#true} is VALID [2022-04-08 05:58:28,763 INFO L290 TraceCheckUtils]: 14: Hoare triple {5562#true} assume !(0 == ~cond); {5562#true} is VALID [2022-04-08 05:58:28,763 INFO L290 TraceCheckUtils]: 15: Hoare triple {5562#true} assume true; {5562#true} is VALID [2022-04-08 05:58:28,763 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5562#true} {5562#true} #96#return; {5562#true} is VALID [2022-04-08 05:58:28,763 INFO L272 TraceCheckUtils]: 17: Hoare triple {5562#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5562#true} is VALID [2022-04-08 05:58:28,763 INFO L290 TraceCheckUtils]: 18: Hoare triple {5562#true} ~cond := #in~cond; {5562#true} is VALID [2022-04-08 05:58:28,763 INFO L290 TraceCheckUtils]: 19: Hoare triple {5562#true} assume !(0 == ~cond); {5562#true} is VALID [2022-04-08 05:58:28,763 INFO L290 TraceCheckUtils]: 20: Hoare triple {5562#true} assume true; {5562#true} is VALID [2022-04-08 05:58:28,764 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5562#true} {5562#true} #98#return; {5562#true} is VALID [2022-04-08 05:58:28,764 INFO L272 TraceCheckUtils]: 22: Hoare triple {5562#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5562#true} is VALID [2022-04-08 05:58:28,764 INFO L290 TraceCheckUtils]: 23: Hoare triple {5562#true} ~cond := #in~cond; {5562#true} is VALID [2022-04-08 05:58:28,764 INFO L290 TraceCheckUtils]: 24: Hoare triple {5562#true} assume !(0 == ~cond); {5562#true} is VALID [2022-04-08 05:58:28,764 INFO L290 TraceCheckUtils]: 25: Hoare triple {5562#true} assume true; {5562#true} is VALID [2022-04-08 05:58:28,764 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5562#true} {5562#true} #100#return; {5562#true} is VALID [2022-04-08 05:58:28,764 INFO L290 TraceCheckUtils]: 27: Hoare triple {5562#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5562#true} is VALID [2022-04-08 05:58:28,764 INFO L290 TraceCheckUtils]: 28: Hoare triple {5562#true} assume !false; {5562#true} is VALID [2022-04-08 05:58:28,764 INFO L290 TraceCheckUtils]: 29: Hoare triple {5562#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5562#true} is VALID [2022-04-08 05:58:28,764 INFO L290 TraceCheckUtils]: 30: Hoare triple {5562#true} assume !false; {5562#true} is VALID [2022-04-08 05:58:28,767 INFO L290 TraceCheckUtils]: 31: Hoare triple {5562#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-08 05:58:28,767 INFO L290 TraceCheckUtils]: 32: Hoare triple {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !false; {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-08 05:58:28,767 INFO L272 TraceCheckUtils]: 33: Hoare triple {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5562#true} is VALID [2022-04-08 05:58:28,767 INFO L290 TraceCheckUtils]: 34: Hoare triple {5562#true} ~cond := #in~cond; {5562#true} is VALID [2022-04-08 05:58:28,767 INFO L290 TraceCheckUtils]: 35: Hoare triple {5562#true} assume !(0 == ~cond); {5562#true} is VALID [2022-04-08 05:58:28,767 INFO L290 TraceCheckUtils]: 36: Hoare triple {5562#true} assume true; {5562#true} is VALID [2022-04-08 05:58:28,768 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {5562#true} {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #102#return; {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-08 05:58:28,768 INFO L272 TraceCheckUtils]: 38: Hoare triple {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5562#true} is VALID [2022-04-08 05:58:28,768 INFO L290 TraceCheckUtils]: 39: Hoare triple {5562#true} ~cond := #in~cond; {5562#true} is VALID [2022-04-08 05:58:28,768 INFO L290 TraceCheckUtils]: 40: Hoare triple {5562#true} assume !(0 == ~cond); {5562#true} is VALID [2022-04-08 05:58:28,768 INFO L290 TraceCheckUtils]: 41: Hoare triple {5562#true} assume true; {5562#true} is VALID [2022-04-08 05:58:28,769 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {5562#true} {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #104#return; {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-08 05:58:28,769 INFO L272 TraceCheckUtils]: 43: Hoare triple {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5562#true} is VALID [2022-04-08 05:58:28,769 INFO L290 TraceCheckUtils]: 44: Hoare triple {5562#true} ~cond := #in~cond; {5562#true} is VALID [2022-04-08 05:58:28,769 INFO L290 TraceCheckUtils]: 45: Hoare triple {5562#true} assume !(0 == ~cond); {5562#true} is VALID [2022-04-08 05:58:28,769 INFO L290 TraceCheckUtils]: 46: Hoare triple {5562#true} assume true; {5562#true} is VALID [2022-04-08 05:58:28,770 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {5562#true} {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #106#return; {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-08 05:58:28,770 INFO L272 TraceCheckUtils]: 48: Hoare triple {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {5712#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:58:28,770 INFO L290 TraceCheckUtils]: 49: Hoare triple {5712#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5716#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:58:28,771 INFO L290 TraceCheckUtils]: 50: Hoare triple {5716#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5563#false} is VALID [2022-04-08 05:58:28,771 INFO L290 TraceCheckUtils]: 51: Hoare triple {5563#false} assume !false; {5563#false} is VALID [2022-04-08 05:58:28,771 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-08 05:58:28,771 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 05:58:28,771 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:58:28,771 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1649356697] [2022-04-08 05:58:28,771 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:58:28,771 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1708382552] [2022-04-08 05:58:28,771 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1708382552] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:58:28,771 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:58:28,771 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:58:28,772 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:58:28,772 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1864730706] [2022-04-08 05:58:28,772 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1864730706] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:58:28,772 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:58:28,772 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:58:28,772 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [886414847] [2022-04-08 05:58:28,772 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:58:28,773 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 52 [2022-04-08 05:58:28,773 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:58:28,773 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 05:58:28,795 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:28,795 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:58:28,795 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:28,796 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:58:28,796 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 05:58:28,796 INFO L87 Difference]: Start difference. First operand 106 states and 137 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 05:58:29,246 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:29,246 INFO L93 Difference]: Finished difference Result 158 states and 221 transitions. [2022-04-08 05:58:29,246 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:58:29,246 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 52 [2022-04-08 05:58:29,246 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:58:29,246 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 05:58:29,247 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 05:58:29,247 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 05:58:29,248 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 05:58:29,248 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-08 05:58:29,292 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:29,294 INFO L225 Difference]: With dead ends: 158 [2022-04-08 05:58:29,294 INFO L226 Difference]: Without dead ends: 156 [2022-04-08 05:58:29,294 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 52 GetRequests, 48 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-08 05:58:29,295 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 9 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 156 SdHoareTripleChecker+Invalid, 50 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:58:29,295 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 156 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:58:29,295 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 156 states. [2022-04-08 05:58:29,561 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 156 to 140. [2022-04-08 05:58:29,562 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:58:29,562 INFO L82 GeneralOperation]: Start isEquivalent. First operand 156 states. Second operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 05:58:29,562 INFO L74 IsIncluded]: Start isIncluded. First operand 156 states. Second operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 05:58:29,563 INFO L87 Difference]: Start difference. First operand 156 states. Second operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 05:58:29,566 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:29,567 INFO L93 Difference]: Finished difference Result 156 states and 219 transitions. [2022-04-08 05:58:29,567 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 219 transitions. [2022-04-08 05:58:29,567 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:58:29,567 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:58:29,568 INFO L74 IsIncluded]: Start isIncluded. First operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) Second operand 156 states. [2022-04-08 05:58:29,568 INFO L87 Difference]: Start difference. First operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) Second operand 156 states. [2022-04-08 05:58:29,572 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:58:29,572 INFO L93 Difference]: Finished difference Result 156 states and 219 transitions. [2022-04-08 05:58:29,572 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 219 transitions. [2022-04-08 05:58:29,573 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:58:29,573 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:58:29,573 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:58:29,573 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:58:29,573 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 05:58:29,577 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 140 states to 140 states and 194 transitions. [2022-04-08 05:58:29,577 INFO L78 Accepts]: Start accepts. Automaton has 140 states and 194 transitions. Word has length 52 [2022-04-08 05:58:29,577 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:58:29,577 INFO L478 AbstractCegarLoop]: Abstraction has 140 states and 194 transitions. [2022-04-08 05:58:29,577 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 05:58:29,577 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 140 states and 194 transitions. [2022-04-08 05:58:29,821 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 194 edges. 194 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:58:29,822 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 194 transitions. [2022-04-08 05:58:29,822 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-04-08 05:58:29,822 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:58:29,822 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 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] [2022-04-08 05:58:29,842 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-08 05:58:30,023 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:58:30,023 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:58:30,023 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:58:30,023 INFO L85 PathProgramCache]: Analyzing trace with hash 188363668, now seen corresponding path program 1 times [2022-04-08 05:58:30,023 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:58:30,024 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [703564733] [2022-04-08 05:58:30,024 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:58:30,024 INFO L85 PathProgramCache]: Analyzing trace with hash 188363668, now seen corresponding path program 2 times [2022-04-08 05:58:30,024 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:58:30,024 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1603603441] [2022-04-08 05:58:30,024 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:58:30,024 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:58:30,069 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:58:30,069 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [888824154] [2022-04-08 05:58:30,069 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:58:30,069 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:58:30,069 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:58:30,072 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:58:30,081 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-08 05:58:30,120 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:58:30,120 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:58:30,121 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 57 conjunts are in the unsatisfiable core [2022-04-08 05:58:30,131 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:58:30,132 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:58:30,729 INFO L272 TraceCheckUtils]: 0: Hoare triple {6632#true} call ULTIMATE.init(); {6632#true} is VALID [2022-04-08 05:58:30,730 INFO L290 TraceCheckUtils]: 1: Hoare triple {6632#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {6632#true} is VALID [2022-04-08 05:58:30,730 INFO L290 TraceCheckUtils]: 2: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 05:58:30,730 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6632#true} {6632#true} #112#return; {6632#true} is VALID [2022-04-08 05:58:30,730 INFO L272 TraceCheckUtils]: 4: Hoare triple {6632#true} call #t~ret6 := main(); {6632#true} is VALID [2022-04-08 05:58:30,730 INFO L290 TraceCheckUtils]: 5: Hoare triple {6632#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {6632#true} is VALID [2022-04-08 05:58:30,730 INFO L272 TraceCheckUtils]: 6: Hoare triple {6632#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {6632#true} is VALID [2022-04-08 05:58:30,730 INFO L290 TraceCheckUtils]: 7: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 05:58:30,730 INFO L290 TraceCheckUtils]: 8: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 05:58:30,730 INFO L290 TraceCheckUtils]: 9: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 05:58:30,730 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6632#true} {6632#true} #94#return; {6632#true} is VALID [2022-04-08 05:58:30,730 INFO L290 TraceCheckUtils]: 11: Hoare triple {6632#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6632#true} is VALID [2022-04-08 05:58:30,730 INFO L272 TraceCheckUtils]: 12: Hoare triple {6632#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {6632#true} is VALID [2022-04-08 05:58:30,730 INFO L290 TraceCheckUtils]: 13: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 05:58:30,730 INFO L290 TraceCheckUtils]: 14: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 05:58:30,730 INFO L290 TraceCheckUtils]: 15: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 05:58:30,731 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6632#true} {6632#true} #96#return; {6632#true} is VALID [2022-04-08 05:58:30,731 INFO L272 TraceCheckUtils]: 17: Hoare triple {6632#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6632#true} is VALID [2022-04-08 05:58:30,731 INFO L290 TraceCheckUtils]: 18: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 05:58:30,731 INFO L290 TraceCheckUtils]: 19: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 05:58:30,731 INFO L290 TraceCheckUtils]: 20: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 05:58:30,731 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6632#true} {6632#true} #98#return; {6632#true} is VALID [2022-04-08 05:58:30,731 INFO L272 TraceCheckUtils]: 22: Hoare triple {6632#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6632#true} is VALID [2022-04-08 05:58:30,731 INFO L290 TraceCheckUtils]: 23: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 05:58:30,731 INFO L290 TraceCheckUtils]: 24: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 05:58:30,731 INFO L290 TraceCheckUtils]: 25: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 05:58:30,731 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6632#true} {6632#true} #100#return; {6632#true} is VALID [2022-04-08 05:58:30,732 INFO L290 TraceCheckUtils]: 27: Hoare triple {6632#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6718#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:30,732 INFO L290 TraceCheckUtils]: 28: Hoare triple {6718#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {6718#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:30,733 INFO L290 TraceCheckUtils]: 29: Hoare triple {6718#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {6725#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:30,733 INFO L290 TraceCheckUtils]: 30: Hoare triple {6725#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {6725#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:30,734 INFO L290 TraceCheckUtils]: 31: Hoare triple {6725#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {6732#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:30,734 INFO L290 TraceCheckUtils]: 32: Hoare triple {6732#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {6732#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:30,734 INFO L272 TraceCheckUtils]: 33: Hoare triple {6732#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6632#true} is VALID [2022-04-08 05:58:30,734 INFO L290 TraceCheckUtils]: 34: Hoare triple {6632#true} ~cond := #in~cond; {6742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:58:30,735 INFO L290 TraceCheckUtils]: 35: Hoare triple {6742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:58:30,735 INFO L290 TraceCheckUtils]: 36: Hoare triple {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:58:30,736 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} {6732#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:30,736 INFO L272 TraceCheckUtils]: 38: Hoare triple {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6632#true} is VALID [2022-04-08 05:58:30,736 INFO L290 TraceCheckUtils]: 39: Hoare triple {6632#true} ~cond := #in~cond; {6742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:58:30,736 INFO L290 TraceCheckUtils]: 40: Hoare triple {6742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:58:30,736 INFO L290 TraceCheckUtils]: 41: Hoare triple {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:58:30,737 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:30,737 INFO L272 TraceCheckUtils]: 43: Hoare triple {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6632#true} is VALID [2022-04-08 05:58:30,737 INFO L290 TraceCheckUtils]: 44: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 05:58:30,737 INFO L290 TraceCheckUtils]: 45: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 05:58:30,737 INFO L290 TraceCheckUtils]: 46: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 05:58:30,738 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6632#true} {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:30,738 INFO L272 TraceCheckUtils]: 48: Hoare triple {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {6632#true} is VALID [2022-04-08 05:58:30,738 INFO L290 TraceCheckUtils]: 49: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 05:58:30,738 INFO L290 TraceCheckUtils]: 50: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 05:58:30,738 INFO L290 TraceCheckUtils]: 51: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 05:58:30,739 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {6632#true} {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:30,739 INFO L290 TraceCheckUtils]: 53: Hoare triple {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:30,740 INFO L290 TraceCheckUtils]: 54: Hoare triple {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {6805#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:30,740 INFO L290 TraceCheckUtils]: 55: Hoare triple {6805#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {6805#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:30,740 INFO L290 TraceCheckUtils]: 56: Hoare triple {6805#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {6805#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 05:58:30,741 INFO L290 TraceCheckUtils]: 57: Hoare triple {6805#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {6815#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 05:58:30,741 INFO L290 TraceCheckUtils]: 58: Hoare triple {6815#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} assume !false; {6815#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 05:58:30,742 INFO L290 TraceCheckUtils]: 59: Hoare triple {6815#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {6822#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) 0))} is VALID [2022-04-08 05:58:30,742 INFO L272 TraceCheckUtils]: 60: Hoare triple {6822#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {6826#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:58:30,742 INFO L290 TraceCheckUtils]: 61: Hoare triple {6826#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6830#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:58:30,743 INFO L290 TraceCheckUtils]: 62: Hoare triple {6830#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6633#false} is VALID [2022-04-08 05:58:30,743 INFO L290 TraceCheckUtils]: 63: Hoare triple {6633#false} assume !false; {6633#false} is VALID [2022-04-08 05:58:30,743 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 6 proven. 18 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-08 05:58:30,743 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:59:11,539 INFO L290 TraceCheckUtils]: 63: Hoare triple {6633#false} assume !false; {6633#false} is VALID [2022-04-08 05:59:11,539 INFO L290 TraceCheckUtils]: 62: Hoare triple {6830#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6633#false} is VALID [2022-04-08 05:59:11,539 INFO L290 TraceCheckUtils]: 61: Hoare triple {6826#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6830#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:59:11,540 INFO L272 TraceCheckUtils]: 60: Hoare triple {6846#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {6826#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:59:11,540 INFO L290 TraceCheckUtils]: 59: Hoare triple {6850#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {6846#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:59:11,541 INFO L290 TraceCheckUtils]: 58: Hoare triple {6850#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {6850#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 05:59:12,207 INFO L290 TraceCheckUtils]: 57: Hoare triple {6857#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {6850#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 05:59:12,208 INFO L290 TraceCheckUtils]: 56: Hoare triple {6857#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {6857#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:59:12,209 INFO L290 TraceCheckUtils]: 55: Hoare triple {6857#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {6857#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:59:12,384 INFO L290 TraceCheckUtils]: 54: Hoare triple {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {6857#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:59:12,384 INFO L290 TraceCheckUtils]: 53: Hoare triple {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:59:12,385 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {6632#true} {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #108#return; {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:59:12,385 INFO L290 TraceCheckUtils]: 51: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 05:59:12,385 INFO L290 TraceCheckUtils]: 50: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 05:59:12,385 INFO L290 TraceCheckUtils]: 49: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 05:59:12,385 INFO L272 TraceCheckUtils]: 48: Hoare triple {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {6632#true} is VALID [2022-04-08 05:59:12,386 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6632#true} {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #106#return; {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:59:12,386 INFO L290 TraceCheckUtils]: 46: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 05:59:12,386 INFO L290 TraceCheckUtils]: 45: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 05:59:12,386 INFO L290 TraceCheckUtils]: 44: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 05:59:12,386 INFO L272 TraceCheckUtils]: 43: Hoare triple {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6632#true} is VALID [2022-04-08 05:59:12,387 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} {6904#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:59:12,388 INFO L290 TraceCheckUtils]: 41: Hoare triple {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:12,388 INFO L290 TraceCheckUtils]: 40: Hoare triple {6914#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:12,388 INFO L290 TraceCheckUtils]: 39: Hoare triple {6632#true} ~cond := #in~cond; {6914#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:59:12,388 INFO L272 TraceCheckUtils]: 38: Hoare triple {6904#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6632#true} is VALID [2022-04-08 05:59:12,389 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} {6921#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {6904#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:59:12,390 INFO L290 TraceCheckUtils]: 36: Hoare triple {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:12,390 INFO L290 TraceCheckUtils]: 35: Hoare triple {6914#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:12,390 INFO L290 TraceCheckUtils]: 34: Hoare triple {6632#true} ~cond := #in~cond; {6914#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:59:12,390 INFO L272 TraceCheckUtils]: 33: Hoare triple {6921#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6632#true} is VALID [2022-04-08 05:59:12,391 INFO L290 TraceCheckUtils]: 32: Hoare triple {6921#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {6921#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:59:12,392 INFO L290 TraceCheckUtils]: 31: Hoare triple {6940#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {6921#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 05:59:12,392 INFO L290 TraceCheckUtils]: 30: Hoare triple {6940#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !false; {6940#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-08 05:59:12,393 INFO L290 TraceCheckUtils]: 29: Hoare triple {6632#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {6940#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-08 05:59:12,393 INFO L290 TraceCheckUtils]: 28: Hoare triple {6632#true} assume !false; {6632#true} is VALID [2022-04-08 05:59:12,393 INFO L290 TraceCheckUtils]: 27: Hoare triple {6632#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6632#true} is VALID [2022-04-08 05:59:12,393 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6632#true} {6632#true} #100#return; {6632#true} is VALID [2022-04-08 05:59:12,393 INFO L290 TraceCheckUtils]: 25: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 05:59:12,393 INFO L290 TraceCheckUtils]: 24: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 05:59:12,393 INFO L290 TraceCheckUtils]: 23: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 05:59:12,393 INFO L272 TraceCheckUtils]: 22: Hoare triple {6632#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6632#true} is VALID [2022-04-08 05:59:12,393 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6632#true} {6632#true} #98#return; {6632#true} is VALID [2022-04-08 05:59:12,393 INFO L290 TraceCheckUtils]: 20: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L290 TraceCheckUtils]: 19: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L290 TraceCheckUtils]: 18: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L272 TraceCheckUtils]: 17: Hoare triple {6632#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6632#true} {6632#true} #96#return; {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L290 TraceCheckUtils]: 15: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L290 TraceCheckUtils]: 14: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L290 TraceCheckUtils]: 13: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L272 TraceCheckUtils]: 12: Hoare triple {6632#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L290 TraceCheckUtils]: 11: Hoare triple {6632#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6632#true} {6632#true} #94#return; {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L290 TraceCheckUtils]: 9: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L290 TraceCheckUtils]: 8: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L290 TraceCheckUtils]: 7: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L272 TraceCheckUtils]: 6: Hoare triple {6632#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L290 TraceCheckUtils]: 5: Hoare triple {6632#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L272 TraceCheckUtils]: 4: Hoare triple {6632#true} call #t~ret6 := main(); {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6632#true} {6632#true} #112#return; {6632#true} is VALID [2022-04-08 05:59:12,394 INFO L290 TraceCheckUtils]: 2: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 05:59:12,395 INFO L290 TraceCheckUtils]: 1: Hoare triple {6632#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {6632#true} is VALID [2022-04-08 05:59:12,395 INFO L272 TraceCheckUtils]: 0: Hoare triple {6632#true} call ULTIMATE.init(); {6632#true} is VALID [2022-04-08 05:59:12,395 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 8 proven. 16 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-08 05:59:12,395 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:59:12,395 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1603603441] [2022-04-08 05:59:12,395 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:59:12,395 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [888824154] [2022-04-08 05:59:12,395 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [888824154] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:59:12,395 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:59:12,395 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-08 05:59:12,396 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:59:12,396 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [703564733] [2022-04-08 05:59:12,396 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [703564733] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:59:12,396 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:59:12,396 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 05:59:12,396 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1857646385] [2022-04-08 05:59:12,396 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:59:12,396 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 64 [2022-04-08 05:59:12,396 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:59:12,397 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:59:12,433 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:12,433 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 05:59:12,433 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:59:12,434 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 05:59:12,434 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=349, Unknown=0, NotChecked=0, Total=420 [2022-04-08 05:59:12,434 INFO L87 Difference]: Start difference. First operand 140 states and 194 transitions. Second operand has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:59:14,603 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:14,603 INFO L93 Difference]: Finished difference Result 200 states and 283 transitions. [2022-04-08 05:59:14,603 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 05:59:14,603 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 64 [2022-04-08 05:59:14,603 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:59:14,603 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:59:14,610 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 131 transitions. [2022-04-08 05:59:14,610 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:59:14,614 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 131 transitions. [2022-04-08 05:59:14,614 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 131 transitions. [2022-04-08 05:59:14,733 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 131 edges. 131 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:14,736 INFO L225 Difference]: With dead ends: 200 [2022-04-08 05:59:14,736 INFO L226 Difference]: Without dead ends: 197 [2022-04-08 05:59:14,736 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 107 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 94 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=97, Invalid=503, Unknown=0, NotChecked=0, Total=600 [2022-04-08 05:59:14,737 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 47 mSDsluCounter, 284 mSDsCounter, 0 mSdLazyCounter, 678 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 63 SdHoareTripleChecker+Valid, 329 SdHoareTripleChecker+Invalid, 706 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 678 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-08 05:59:14,737 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [63 Valid, 329 Invalid, 706 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 678 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-08 05:59:14,737 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-08 05:59:15,080 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 193. [2022-04-08 05:59:15,080 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:59:15,081 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 05:59:15,083 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 05:59:15,083 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 05:59:15,088 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:15,089 INFO L93 Difference]: Finished difference Result 197 states and 279 transitions. [2022-04-08 05:59:15,089 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 279 transitions. [2022-04-08 05:59:15,089 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:59:15,089 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:59:15,090 INFO L74 IsIncluded]: Start isIncluded. First operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) Second operand 197 states. [2022-04-08 05:59:15,090 INFO L87 Difference]: Start difference. First operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) Second operand 197 states. [2022-04-08 05:59:15,096 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:15,096 INFO L93 Difference]: Finished difference Result 197 states and 279 transitions. [2022-04-08 05:59:15,096 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 279 transitions. [2022-04-08 05:59:15,097 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:59:15,097 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:59:15,097 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:59:15,097 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:59:15,098 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 05:59:15,102 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 193 states to 193 states and 275 transitions. [2022-04-08 05:59:15,102 INFO L78 Accepts]: Start accepts. Automaton has 193 states and 275 transitions. Word has length 64 [2022-04-08 05:59:15,102 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:59:15,102 INFO L478 AbstractCegarLoop]: Abstraction has 193 states and 275 transitions. [2022-04-08 05:59:15,102 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 05:59:15,103 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 193 states and 275 transitions. [2022-04-08 05:59:15,413 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 275 edges. 275 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:15,413 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 275 transitions. [2022-04-08 05:59:15,414 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-08 05:59:15,414 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:59:15,414 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 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, 1, 1, 1, 1, 1] [2022-04-08 05:59:15,432 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-04-08 05:59:15,633 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-08 05:59:15,633 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:59:15,634 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:59:15,634 INFO L85 PathProgramCache]: Analyzing trace with hash -368004398, now seen corresponding path program 3 times [2022-04-08 05:59:15,634 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:59:15,634 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [916947308] [2022-04-08 05:59:15,634 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:59:15,634 INFO L85 PathProgramCache]: Analyzing trace with hash -368004398, now seen corresponding path program 4 times [2022-04-08 05:59:15,634 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:59:15,634 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [509138116] [2022-04-08 05:59:15,634 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:59:15,634 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:59:15,647 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:59:15,647 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1949432384] [2022-04-08 05:59:15,647 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:59:15,647 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:59:15,647 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:59:15,648 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:59:15,650 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-08 05:59:15,687 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:59:15,688 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:59:15,688 INFO L263 TraceCheckSpWp]: Trace formula consists of 168 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-08 05:59:15,696 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:59:15,696 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:59:15,827 INFO L272 TraceCheckUtils]: 0: Hoare triple {8224#true} call ULTIMATE.init(); {8224#true} is VALID [2022-04-08 05:59:15,827 INFO L290 TraceCheckUtils]: 1: Hoare triple {8224#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {8224#true} is VALID [2022-04-08 05:59:15,827 INFO L290 TraceCheckUtils]: 2: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:15,827 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8224#true} {8224#true} #112#return; {8224#true} is VALID [2022-04-08 05:59:15,827 INFO L272 TraceCheckUtils]: 4: Hoare triple {8224#true} call #t~ret6 := main(); {8224#true} is VALID [2022-04-08 05:59:15,827 INFO L290 TraceCheckUtils]: 5: Hoare triple {8224#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8224#true} is VALID [2022-04-08 05:59:15,827 INFO L272 TraceCheckUtils]: 6: Hoare triple {8224#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {8224#true} is VALID [2022-04-08 05:59:15,827 INFO L290 TraceCheckUtils]: 7: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 05:59:15,827 INFO L290 TraceCheckUtils]: 8: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 05:59:15,827 INFO L290 TraceCheckUtils]: 9: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:15,827 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8224#true} {8224#true} #94#return; {8224#true} is VALID [2022-04-08 05:59:15,827 INFO L290 TraceCheckUtils]: 11: Hoare triple {8224#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8224#true} is VALID [2022-04-08 05:59:15,827 INFO L272 TraceCheckUtils]: 12: Hoare triple {8224#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {8224#true} is VALID [2022-04-08 05:59:15,827 INFO L290 TraceCheckUtils]: 13: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L290 TraceCheckUtils]: 14: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L290 TraceCheckUtils]: 15: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8224#true} {8224#true} #96#return; {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L272 TraceCheckUtils]: 17: Hoare triple {8224#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L290 TraceCheckUtils]: 18: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L290 TraceCheckUtils]: 19: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L290 TraceCheckUtils]: 20: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8224#true} {8224#true} #98#return; {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L272 TraceCheckUtils]: 22: Hoare triple {8224#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L290 TraceCheckUtils]: 23: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L290 TraceCheckUtils]: 24: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L290 TraceCheckUtils]: 25: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8224#true} {8224#true} #100#return; {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L290 TraceCheckUtils]: 27: Hoare triple {8224#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L290 TraceCheckUtils]: 28: Hoare triple {8224#true} assume !false; {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L290 TraceCheckUtils]: 29: Hoare triple {8224#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8224#true} is VALID [2022-04-08 05:59:15,828 INFO L290 TraceCheckUtils]: 30: Hoare triple {8224#true} assume !false; {8224#true} is VALID [2022-04-08 05:59:15,843 INFO L290 TraceCheckUtils]: 31: Hoare triple {8224#true} assume !(~c~0 >= ~b~0); {8322#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:59:15,844 INFO L290 TraceCheckUtils]: 32: Hoare triple {8322#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8326#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:59:15,844 INFO L290 TraceCheckUtils]: 33: Hoare triple {8326#(< main_~b~0 main_~a~0)} assume !false; {8326#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:59:15,844 INFO L290 TraceCheckUtils]: 34: Hoare triple {8326#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8333#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:59:15,845 INFO L290 TraceCheckUtils]: 35: Hoare triple {8333#(< main_~b~0 main_~c~0)} assume !false; {8333#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:59:15,845 INFO L290 TraceCheckUtils]: 36: Hoare triple {8333#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 05:59:15,845 INFO L290 TraceCheckUtils]: 37: Hoare triple {8340#(< main_~v~0 main_~c~0)} assume !false; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 05:59:15,845 INFO L272 TraceCheckUtils]: 38: Hoare triple {8340#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8224#true} is VALID [2022-04-08 05:59:15,845 INFO L290 TraceCheckUtils]: 39: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 05:59:15,845 INFO L290 TraceCheckUtils]: 40: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 05:59:15,846 INFO L290 TraceCheckUtils]: 41: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:15,846 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {8224#true} {8340#(< main_~v~0 main_~c~0)} #102#return; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 05:59:15,846 INFO L272 TraceCheckUtils]: 43: Hoare triple {8340#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8224#true} is VALID [2022-04-08 05:59:15,846 INFO L290 TraceCheckUtils]: 44: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 05:59:15,846 INFO L290 TraceCheckUtils]: 45: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 05:59:15,846 INFO L290 TraceCheckUtils]: 46: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:15,847 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8224#true} {8340#(< main_~v~0 main_~c~0)} #104#return; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 05:59:15,847 INFO L272 TraceCheckUtils]: 48: Hoare triple {8340#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8224#true} is VALID [2022-04-08 05:59:15,847 INFO L290 TraceCheckUtils]: 49: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 05:59:15,847 INFO L290 TraceCheckUtils]: 50: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 05:59:15,847 INFO L290 TraceCheckUtils]: 51: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:15,848 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {8224#true} {8340#(< main_~v~0 main_~c~0)} #106#return; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 05:59:15,848 INFO L272 TraceCheckUtils]: 53: Hoare triple {8340#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8224#true} is VALID [2022-04-08 05:59:15,848 INFO L290 TraceCheckUtils]: 54: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 05:59:15,848 INFO L290 TraceCheckUtils]: 55: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 05:59:15,848 INFO L290 TraceCheckUtils]: 56: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:15,848 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {8224#true} {8340#(< main_~v~0 main_~c~0)} #108#return; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 05:59:15,849 INFO L290 TraceCheckUtils]: 58: Hoare triple {8340#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 05:59:15,849 INFO L290 TraceCheckUtils]: 59: Hoare triple {8340#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {8410#(< 0 main_~c~0)} is VALID [2022-04-08 05:59:15,849 INFO L290 TraceCheckUtils]: 60: Hoare triple {8410#(< 0 main_~c~0)} assume !false; {8410#(< 0 main_~c~0)} is VALID [2022-04-08 05:59:15,850 INFO L290 TraceCheckUtils]: 61: Hoare triple {8410#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {8410#(< 0 main_~c~0)} is VALID [2022-04-08 05:59:15,850 INFO L290 TraceCheckUtils]: 62: Hoare triple {8410#(< 0 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8420#(< 0 main_~b~0)} is VALID [2022-04-08 05:59:15,850 INFO L290 TraceCheckUtils]: 63: Hoare triple {8420#(< 0 main_~b~0)} assume !false; {8420#(< 0 main_~b~0)} is VALID [2022-04-08 05:59:15,851 INFO L290 TraceCheckUtils]: 64: Hoare triple {8420#(< 0 main_~b~0)} assume !(0 != ~b~0); {8225#false} is VALID [2022-04-08 05:59:15,851 INFO L272 TraceCheckUtils]: 65: Hoare triple {8225#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {8225#false} is VALID [2022-04-08 05:59:15,851 INFO L290 TraceCheckUtils]: 66: Hoare triple {8225#false} ~cond := #in~cond; {8225#false} is VALID [2022-04-08 05:59:15,851 INFO L290 TraceCheckUtils]: 67: Hoare triple {8225#false} assume 0 == ~cond; {8225#false} is VALID [2022-04-08 05:59:15,851 INFO L290 TraceCheckUtils]: 68: Hoare triple {8225#false} assume !false; {8225#false} is VALID [2022-04-08 05:59:15,851 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-08 05:59:15,851 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:59:16,065 INFO L290 TraceCheckUtils]: 68: Hoare triple {8225#false} assume !false; {8225#false} is VALID [2022-04-08 05:59:16,066 INFO L290 TraceCheckUtils]: 67: Hoare triple {8225#false} assume 0 == ~cond; {8225#false} is VALID [2022-04-08 05:59:16,066 INFO L290 TraceCheckUtils]: 66: Hoare triple {8225#false} ~cond := #in~cond; {8225#false} is VALID [2022-04-08 05:59:16,066 INFO L272 TraceCheckUtils]: 65: Hoare triple {8225#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {8225#false} is VALID [2022-04-08 05:59:16,066 INFO L290 TraceCheckUtils]: 64: Hoare triple {8420#(< 0 main_~b~0)} assume !(0 != ~b~0); {8225#false} is VALID [2022-04-08 05:59:16,066 INFO L290 TraceCheckUtils]: 63: Hoare triple {8420#(< 0 main_~b~0)} assume !false; {8420#(< 0 main_~b~0)} is VALID [2022-04-08 05:59:16,067 INFO L290 TraceCheckUtils]: 62: Hoare triple {8410#(< 0 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8420#(< 0 main_~b~0)} is VALID [2022-04-08 05:59:16,067 INFO L290 TraceCheckUtils]: 61: Hoare triple {8410#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {8410#(< 0 main_~c~0)} is VALID [2022-04-08 05:59:16,067 INFO L290 TraceCheckUtils]: 60: Hoare triple {8410#(< 0 main_~c~0)} assume !false; {8410#(< 0 main_~c~0)} is VALID [2022-04-08 05:59:16,068 INFO L290 TraceCheckUtils]: 59: Hoare triple {8340#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {8410#(< 0 main_~c~0)} is VALID [2022-04-08 05:59:16,068 INFO L290 TraceCheckUtils]: 58: Hoare triple {8340#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 05:59:16,069 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {8224#true} {8340#(< main_~v~0 main_~c~0)} #108#return; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 05:59:16,069 INFO L290 TraceCheckUtils]: 56: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:16,069 INFO L290 TraceCheckUtils]: 55: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 05:59:16,069 INFO L290 TraceCheckUtils]: 54: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 05:59:16,069 INFO L272 TraceCheckUtils]: 53: Hoare triple {8340#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8224#true} is VALID [2022-04-08 05:59:16,069 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {8224#true} {8340#(< main_~v~0 main_~c~0)} #106#return; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 05:59:16,069 INFO L290 TraceCheckUtils]: 51: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:16,069 INFO L290 TraceCheckUtils]: 50: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 05:59:16,069 INFO L290 TraceCheckUtils]: 49: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 05:59:16,069 INFO L272 TraceCheckUtils]: 48: Hoare triple {8340#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8224#true} is VALID [2022-04-08 05:59:16,070 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8224#true} {8340#(< main_~v~0 main_~c~0)} #104#return; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 05:59:16,070 INFO L290 TraceCheckUtils]: 46: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:16,070 INFO L290 TraceCheckUtils]: 45: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 05:59:16,070 INFO L290 TraceCheckUtils]: 44: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 05:59:16,070 INFO L272 TraceCheckUtils]: 43: Hoare triple {8340#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8224#true} is VALID [2022-04-08 05:59:16,071 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {8224#true} {8340#(< main_~v~0 main_~c~0)} #102#return; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 05:59:16,071 INFO L290 TraceCheckUtils]: 41: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:16,071 INFO L290 TraceCheckUtils]: 40: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 05:59:16,071 INFO L290 TraceCheckUtils]: 39: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 05:59:16,071 INFO L272 TraceCheckUtils]: 38: Hoare triple {8340#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8224#true} is VALID [2022-04-08 05:59:16,083 INFO L290 TraceCheckUtils]: 37: Hoare triple {8340#(< main_~v~0 main_~c~0)} assume !false; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 05:59:16,083 INFO L290 TraceCheckUtils]: 36: Hoare triple {8333#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 05:59:16,084 INFO L290 TraceCheckUtils]: 35: Hoare triple {8333#(< main_~b~0 main_~c~0)} assume !false; {8333#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:59:16,084 INFO L290 TraceCheckUtils]: 34: Hoare triple {8326#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8333#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 05:59:16,084 INFO L290 TraceCheckUtils]: 33: Hoare triple {8326#(< main_~b~0 main_~a~0)} assume !false; {8326#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:59:16,085 INFO L290 TraceCheckUtils]: 32: Hoare triple {8322#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8326#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 05:59:16,085 INFO L290 TraceCheckUtils]: 31: Hoare triple {8224#true} assume !(~c~0 >= ~b~0); {8322#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 05:59:16,085 INFO L290 TraceCheckUtils]: 30: Hoare triple {8224#true} assume !false; {8224#true} is VALID [2022-04-08 05:59:16,085 INFO L290 TraceCheckUtils]: 29: Hoare triple {8224#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8224#true} is VALID [2022-04-08 05:59:16,085 INFO L290 TraceCheckUtils]: 28: Hoare triple {8224#true} assume !false; {8224#true} is VALID [2022-04-08 05:59:16,085 INFO L290 TraceCheckUtils]: 27: Hoare triple {8224#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8224#true} is VALID [2022-04-08 05:59:16,085 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8224#true} {8224#true} #100#return; {8224#true} is VALID [2022-04-08 05:59:16,085 INFO L290 TraceCheckUtils]: 25: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:16,085 INFO L290 TraceCheckUtils]: 24: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 05:59:16,085 INFO L290 TraceCheckUtils]: 23: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 05:59:16,085 INFO L272 TraceCheckUtils]: 22: Hoare triple {8224#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8224#true} is VALID [2022-04-08 05:59:16,085 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8224#true} {8224#true} #98#return; {8224#true} is VALID [2022-04-08 05:59:16,085 INFO L290 TraceCheckUtils]: 20: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:16,085 INFO L290 TraceCheckUtils]: 19: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L290 TraceCheckUtils]: 18: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L272 TraceCheckUtils]: 17: Hoare triple {8224#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8224#true} {8224#true} #96#return; {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L290 TraceCheckUtils]: 15: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L290 TraceCheckUtils]: 14: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L290 TraceCheckUtils]: 13: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L272 TraceCheckUtils]: 12: Hoare triple {8224#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L290 TraceCheckUtils]: 11: Hoare triple {8224#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8224#true} {8224#true} #94#return; {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L290 TraceCheckUtils]: 9: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L290 TraceCheckUtils]: 8: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L290 TraceCheckUtils]: 7: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L272 TraceCheckUtils]: 6: Hoare triple {8224#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L290 TraceCheckUtils]: 5: Hoare triple {8224#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L272 TraceCheckUtils]: 4: Hoare triple {8224#true} call #t~ret6 := main(); {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8224#true} {8224#true} #112#return; {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L290 TraceCheckUtils]: 2: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 05:59:16,086 INFO L290 TraceCheckUtils]: 1: Hoare triple {8224#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {8224#true} is VALID [2022-04-08 05:59:16,087 INFO L272 TraceCheckUtils]: 0: Hoare triple {8224#true} call ULTIMATE.init(); {8224#true} is VALID [2022-04-08 05:59:16,087 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-08 05:59:16,087 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:59:16,087 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [509138116] [2022-04-08 05:59:16,087 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:59:16,087 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1949432384] [2022-04-08 05:59:16,087 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1949432384] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:59:16,087 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:59:16,087 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-08 05:59:16,087 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:59:16,087 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [916947308] [2022-04-08 05:59:16,088 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [916947308] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:59:16,088 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:59:16,088 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 05:59:16,088 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1969180079] [2022-04-08 05:59:16,088 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:59:16,088 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 69 [2022-04-08 05:59:16,088 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:59:16,088 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 05:59:16,121 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:16,121 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 05:59:16,121 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:59:16,122 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 05:59:16,122 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-08 05:59:16,122 INFO L87 Difference]: Start difference. First operand 193 states and 275 transitions. Second operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 05:59:17,754 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:17,754 INFO L93 Difference]: Finished difference Result 288 states and 424 transitions. [2022-04-08 05:59:17,754 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 05:59:17,754 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 69 [2022-04-08 05:59:17,754 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:59:17,754 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 05:59:17,756 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 158 transitions. [2022-04-08 05:59:17,756 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 05:59:17,758 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 158 transitions. [2022-04-08 05:59:17,758 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 158 transitions. [2022-04-08 05:59:17,885 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:17,890 INFO L225 Difference]: With dead ends: 288 [2022-04-08 05:59:17,891 INFO L226 Difference]: Without dead ends: 281 [2022-04-08 05:59:17,891 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 134 SyntacticMatches, 2 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=249, Unknown=0, NotChecked=0, Total=342 [2022-04-08 05:59:17,891 INFO L913 BasicCegarLoop]: 87 mSDtfsCounter, 48 mSDsluCounter, 231 mSDsCounter, 0 mSdLazyCounter, 278 mSolverCounterSat, 84 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 318 SdHoareTripleChecker+Invalid, 362 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 84 IncrementalHoareTripleChecker+Valid, 278 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 05:59:17,891 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [52 Valid, 318 Invalid, 362 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [84 Valid, 278 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 05:59:17,892 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 281 states. [2022-04-08 05:59:18,345 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 281 to 208. [2022-04-08 05:59:18,346 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:59:18,346 INFO L82 GeneralOperation]: Start isEquivalent. First operand 281 states. Second operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 05:59:18,346 INFO L74 IsIncluded]: Start isIncluded. First operand 281 states. Second operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 05:59:18,347 INFO L87 Difference]: Start difference. First operand 281 states. Second operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 05:59:18,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:18,354 INFO L93 Difference]: Finished difference Result 281 states and 417 transitions. [2022-04-08 05:59:18,354 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 417 transitions. [2022-04-08 05:59:18,355 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:59:18,355 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:59:18,356 INFO L74 IsIncluded]: Start isIncluded. First operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 281 states. [2022-04-08 05:59:18,356 INFO L87 Difference]: Start difference. First operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 281 states. [2022-04-08 05:59:18,363 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:18,363 INFO L93 Difference]: Finished difference Result 281 states and 417 transitions. [2022-04-08 05:59:18,363 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 417 transitions. [2022-04-08 05:59:18,364 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:59:18,364 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:59:18,364 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:59:18,365 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:59:18,365 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 05:59:18,369 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 208 states to 208 states and 296 transitions. [2022-04-08 05:59:18,369 INFO L78 Accepts]: Start accepts. Automaton has 208 states and 296 transitions. Word has length 69 [2022-04-08 05:59:18,370 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:59:18,370 INFO L478 AbstractCegarLoop]: Abstraction has 208 states and 296 transitions. [2022-04-08 05:59:18,370 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 05:59:18,370 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 208 states and 296 transitions. [2022-04-08 05:59:18,815 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 296 edges. 296 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:18,816 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 296 transitions. [2022-04-08 05:59:18,816 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 75 [2022-04-08 05:59:18,816 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:59:18,816 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 4, 4, 4, 2, 2, 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] [2022-04-08 05:59:18,833 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-08 05:59:19,017 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-08 05:59:19,017 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:59:19,017 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:59:19,017 INFO L85 PathProgramCache]: Analyzing trace with hash -298771846, now seen corresponding path program 1 times [2022-04-08 05:59:19,017 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:59:19,017 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2000643757] [2022-04-08 05:59:19,018 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:59:19,018 INFO L85 PathProgramCache]: Analyzing trace with hash -298771846, now seen corresponding path program 2 times [2022-04-08 05:59:19,018 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:59:19,018 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1243200992] [2022-04-08 05:59:19,018 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:59:19,018 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:59:19,028 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:59:19,028 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1391350624] [2022-04-08 05:59:19,028 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:59:19,028 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:59:19,028 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:59:19,051 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:59:19,052 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-08 05:59:19,093 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:59:19,093 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:59:19,094 INFO L263 TraceCheckSpWp]: Trace formula consists of 186 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-08 05:59:19,102 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:59:19,104 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:59:19,986 INFO L272 TraceCheckUtils]: 0: Hoare triple {10226#true} call ULTIMATE.init(); {10226#true} is VALID [2022-04-08 05:59:19,987 INFO L290 TraceCheckUtils]: 1: Hoare triple {10226#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {10226#true} is VALID [2022-04-08 05:59:19,987 INFO L290 TraceCheckUtils]: 2: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:19,987 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10226#true} {10226#true} #112#return; {10226#true} is VALID [2022-04-08 05:59:19,987 INFO L272 TraceCheckUtils]: 4: Hoare triple {10226#true} call #t~ret6 := main(); {10226#true} is VALID [2022-04-08 05:59:19,987 INFO L290 TraceCheckUtils]: 5: Hoare triple {10226#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {10226#true} is VALID [2022-04-08 05:59:19,987 INFO L272 TraceCheckUtils]: 6: Hoare triple {10226#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:19,987 INFO L290 TraceCheckUtils]: 7: Hoare triple {10226#true} ~cond := #in~cond; {10252#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:59:19,987 INFO L290 TraceCheckUtils]: 8: Hoare triple {10252#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {10256#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:59:19,988 INFO L290 TraceCheckUtils]: 9: Hoare triple {10256#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {10256#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:59:19,988 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10256#(not (= |assume_abort_if_not_#in~cond| 0))} {10226#true} #94#return; {10263#(and (<= 0 main_~x~0) (<= main_~x~0 5))} is VALID [2022-04-08 05:59:19,988 INFO L290 TraceCheckUtils]: 11: Hoare triple {10263#(and (<= 0 main_~x~0) (<= main_~x~0 5))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10263#(and (<= 0 main_~x~0) (<= main_~x~0 5))} is VALID [2022-04-08 05:59:19,989 INFO L272 TraceCheckUtils]: 12: Hoare triple {10263#(and (<= 0 main_~x~0) (<= main_~x~0 5))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:19,989 INFO L290 TraceCheckUtils]: 13: Hoare triple {10226#true} ~cond := #in~cond; {10252#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 05:59:19,989 INFO L290 TraceCheckUtils]: 14: Hoare triple {10252#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {10256#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:59:19,989 INFO L290 TraceCheckUtils]: 15: Hoare triple {10256#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {10256#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 05:59:19,990 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {10256#(not (= |assume_abort_if_not_#in~cond| 0))} {10263#(and (<= 0 main_~x~0) (<= main_~x~0 5))} #96#return; {10282#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 5) (<= main_~y~0 5))} is VALID [2022-04-08 05:59:19,990 INFO L272 TraceCheckUtils]: 17: Hoare triple {10282#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 5) (<= main_~y~0 5))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:19,990 INFO L290 TraceCheckUtils]: 18: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:19,990 INFO L290 TraceCheckUtils]: 19: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:19,990 INFO L290 TraceCheckUtils]: 20: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:19,990 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10226#true} {10282#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 5) (<= main_~y~0 5))} #98#return; {10282#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 5) (<= main_~y~0 5))} is VALID [2022-04-08 05:59:19,990 INFO L272 TraceCheckUtils]: 22: Hoare triple {10282#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 5) (<= main_~y~0 5))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:19,990 INFO L290 TraceCheckUtils]: 23: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:19,991 INFO L290 TraceCheckUtils]: 24: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:19,991 INFO L290 TraceCheckUtils]: 25: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:19,991 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10226#true} {10282#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 5) (<= main_~y~0 5))} #100#return; {10282#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 5) (<= main_~y~0 5))} is VALID [2022-04-08 05:59:19,991 INFO L290 TraceCheckUtils]: 27: Hoare triple {10282#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 5) (<= main_~y~0 5))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10316#(and (<= main_~b~0 5) (<= 0 main_~b~0) (<= main_~a~0 5))} is VALID [2022-04-08 05:59:19,992 INFO L290 TraceCheckUtils]: 28: Hoare triple {10316#(and (<= main_~b~0 5) (<= 0 main_~b~0) (<= main_~a~0 5))} assume !false; {10316#(and (<= main_~b~0 5) (<= 0 main_~b~0) (<= main_~a~0 5))} is VALID [2022-04-08 05:59:19,992 INFO L290 TraceCheckUtils]: 29: Hoare triple {10316#(and (<= main_~b~0 5) (<= 0 main_~b~0) (<= main_~a~0 5))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {10323#(and (<= main_~c~0 5) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:59:19,992 INFO L290 TraceCheckUtils]: 30: Hoare triple {10323#(and (<= main_~c~0 5) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !false; {10323#(and (<= main_~c~0 5) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:59:19,993 INFO L290 TraceCheckUtils]: 31: Hoare triple {10323#(and (<= main_~c~0 5) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:59:19,993 INFO L290 TraceCheckUtils]: 32: Hoare triple {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !false; {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:59:19,993 INFO L272 TraceCheckUtils]: 33: Hoare triple {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:19,993 INFO L290 TraceCheckUtils]: 34: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:19,993 INFO L290 TraceCheckUtils]: 35: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:19,993 INFO L290 TraceCheckUtils]: 36: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,027 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {10226#true} {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #102#return; {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:59:20,028 INFO L272 TraceCheckUtils]: 38: Hoare triple {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,028 INFO L290 TraceCheckUtils]: 39: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,028 INFO L290 TraceCheckUtils]: 40: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,028 INFO L290 TraceCheckUtils]: 41: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,028 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {10226#true} {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #104#return; {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:59:20,028 INFO L272 TraceCheckUtils]: 43: Hoare triple {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,028 INFO L290 TraceCheckUtils]: 44: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,028 INFO L290 TraceCheckUtils]: 45: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,028 INFO L290 TraceCheckUtils]: 46: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,029 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10226#true} {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #106#return; {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:59:20,029 INFO L272 TraceCheckUtils]: 48: Hoare triple {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,029 INFO L290 TraceCheckUtils]: 49: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,029 INFO L290 TraceCheckUtils]: 50: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,029 INFO L290 TraceCheckUtils]: 51: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,029 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {10226#true} {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #108#return; {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:59:20,030 INFO L290 TraceCheckUtils]: 53: Hoare triple {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:59:20,030 INFO L290 TraceCheckUtils]: 54: Hoare triple {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !false; {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:59:20,030 INFO L272 TraceCheckUtils]: 55: Hoare triple {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,030 INFO L290 TraceCheckUtils]: 56: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,030 INFO L290 TraceCheckUtils]: 57: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,031 INFO L290 TraceCheckUtils]: 58: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,031 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10226#true} {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #102#return; {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:59:20,031 INFO L272 TraceCheckUtils]: 60: Hoare triple {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,031 INFO L290 TraceCheckUtils]: 61: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,031 INFO L290 TraceCheckUtils]: 62: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,031 INFO L290 TraceCheckUtils]: 63: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,031 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {10226#true} {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #104#return; {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:59:20,032 INFO L272 TraceCheckUtils]: 65: Hoare triple {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,032 INFO L290 TraceCheckUtils]: 66: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,032 INFO L290 TraceCheckUtils]: 67: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,032 INFO L290 TraceCheckUtils]: 68: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,032 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {10226#true} {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #106#return; {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 05:59:20,032 INFO L272 TraceCheckUtils]: 70: Hoare triple {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10449#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:59:20,033 INFO L290 TraceCheckUtils]: 71: Hoare triple {10449#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10453#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:59:20,033 INFO L290 TraceCheckUtils]: 72: Hoare triple {10453#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10227#false} is VALID [2022-04-08 05:59:20,033 INFO L290 TraceCheckUtils]: 73: Hoare triple {10227#false} assume !false; {10227#false} is VALID [2022-04-08 05:59:20,033 INFO L134 CoverageAnalysis]: Checked inductivity of 127 backedges. 14 proven. 17 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-04-08 05:59:20,033 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:59:20,237 INFO L290 TraceCheckUtils]: 73: Hoare triple {10227#false} assume !false; {10227#false} is VALID [2022-04-08 05:59:20,238 INFO L290 TraceCheckUtils]: 72: Hoare triple {10453#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10227#false} is VALID [2022-04-08 05:59:20,238 INFO L290 TraceCheckUtils]: 71: Hoare triple {10449#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10453#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:59:20,251 INFO L272 TraceCheckUtils]: 70: Hoare triple {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10449#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:59:20,252 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {10226#true} {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} #106#return; {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 05:59:20,252 INFO L290 TraceCheckUtils]: 68: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,252 INFO L290 TraceCheckUtils]: 67: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,252 INFO L290 TraceCheckUtils]: 66: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,252 INFO L272 TraceCheckUtils]: 65: Hoare triple {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,253 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {10226#true} {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} #104#return; {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 05:59:20,253 INFO L290 TraceCheckUtils]: 63: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,253 INFO L290 TraceCheckUtils]: 62: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,253 INFO L290 TraceCheckUtils]: 61: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,253 INFO L272 TraceCheckUtils]: 60: Hoare triple {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,253 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10226#true} {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 05:59:20,253 INFO L290 TraceCheckUtils]: 58: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,253 INFO L290 TraceCheckUtils]: 57: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,253 INFO L290 TraceCheckUtils]: 56: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,253 INFO L272 TraceCheckUtils]: 55: Hoare triple {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,254 INFO L290 TraceCheckUtils]: 54: Hoare triple {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !false; {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 05:59:20,256 INFO L290 TraceCheckUtils]: 53: Hoare triple {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 05:59:20,256 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {10226#true} {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} #108#return; {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-08 05:59:20,256 INFO L290 TraceCheckUtils]: 51: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,256 INFO L290 TraceCheckUtils]: 50: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,256 INFO L290 TraceCheckUtils]: 49: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,256 INFO L272 TraceCheckUtils]: 48: Hoare triple {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,257 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10226#true} {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} #106#return; {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-08 05:59:20,257 INFO L290 TraceCheckUtils]: 46: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,257 INFO L290 TraceCheckUtils]: 45: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,257 INFO L290 TraceCheckUtils]: 44: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,257 INFO L272 TraceCheckUtils]: 43: Hoare triple {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,257 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {10226#true} {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} #104#return; {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-08 05:59:20,257 INFO L290 TraceCheckUtils]: 41: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,257 INFO L290 TraceCheckUtils]: 40: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,257 INFO L290 TraceCheckUtils]: 39: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,257 INFO L272 TraceCheckUtils]: 38: Hoare triple {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,258 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {10226#true} {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} #102#return; {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-08 05:59:20,258 INFO L290 TraceCheckUtils]: 36: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,258 INFO L290 TraceCheckUtils]: 35: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,258 INFO L290 TraceCheckUtils]: 34: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,258 INFO L272 TraceCheckUtils]: 33: Hoare triple {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,258 INFO L290 TraceCheckUtils]: 32: Hoare triple {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} assume !false; {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-08 05:59:20,259 INFO L290 TraceCheckUtils]: 31: Hoare triple {10226#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-08 05:59:20,259 INFO L290 TraceCheckUtils]: 30: Hoare triple {10226#true} assume !false; {10226#true} is VALID [2022-04-08 05:59:20,259 INFO L290 TraceCheckUtils]: 29: Hoare triple {10226#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {10226#true} is VALID [2022-04-08 05:59:20,259 INFO L290 TraceCheckUtils]: 28: Hoare triple {10226#true} assume !false; {10226#true} is VALID [2022-04-08 05:59:20,259 INFO L290 TraceCheckUtils]: 27: Hoare triple {10226#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10226#true} is VALID [2022-04-08 05:59:20,259 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10226#true} {10226#true} #100#return; {10226#true} is VALID [2022-04-08 05:59:20,259 INFO L290 TraceCheckUtils]: 25: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,259 INFO L290 TraceCheckUtils]: 24: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,259 INFO L290 TraceCheckUtils]: 23: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,259 INFO L272 TraceCheckUtils]: 22: Hoare triple {10226#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,259 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10226#true} {10226#true} #98#return; {10226#true} is VALID [2022-04-08 05:59:20,259 INFO L290 TraceCheckUtils]: 20: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,259 INFO L290 TraceCheckUtils]: 19: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,259 INFO L290 TraceCheckUtils]: 18: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,259 INFO L272 TraceCheckUtils]: 17: Hoare triple {10226#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,259 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {10226#true} {10226#true} #96#return; {10226#true} is VALID [2022-04-08 05:59:20,259 INFO L290 TraceCheckUtils]: 15: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,260 INFO L290 TraceCheckUtils]: 14: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,260 INFO L290 TraceCheckUtils]: 13: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,260 INFO L272 TraceCheckUtils]: 12: Hoare triple {10226#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,260 INFO L290 TraceCheckUtils]: 11: Hoare triple {10226#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10226#true} is VALID [2022-04-08 05:59:20,260 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10226#true} {10226#true} #94#return; {10226#true} is VALID [2022-04-08 05:59:20,260 INFO L290 TraceCheckUtils]: 9: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,260 INFO L290 TraceCheckUtils]: 8: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 05:59:20,260 INFO L290 TraceCheckUtils]: 7: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 05:59:20,260 INFO L272 TraceCheckUtils]: 6: Hoare triple {10226#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {10226#true} is VALID [2022-04-08 05:59:20,260 INFO L290 TraceCheckUtils]: 5: Hoare triple {10226#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {10226#true} is VALID [2022-04-08 05:59:20,260 INFO L272 TraceCheckUtils]: 4: Hoare triple {10226#true} call #t~ret6 := main(); {10226#true} is VALID [2022-04-08 05:59:20,260 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10226#true} {10226#true} #112#return; {10226#true} is VALID [2022-04-08 05:59:20,260 INFO L290 TraceCheckUtils]: 2: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 05:59:20,260 INFO L290 TraceCheckUtils]: 1: Hoare triple {10226#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {10226#true} is VALID [2022-04-08 05:59:20,260 INFO L272 TraceCheckUtils]: 0: Hoare triple {10226#true} call ULTIMATE.init(); {10226#true} is VALID [2022-04-08 05:59:20,260 INFO L134 CoverageAnalysis]: Checked inductivity of 127 backedges. 19 proven. 0 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2022-04-08 05:59:20,261 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:59:20,261 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1243200992] [2022-04-08 05:59:20,261 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:59:20,261 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1391350624] [2022-04-08 05:59:20,261 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1391350624] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 05:59:20,261 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 05:59:20,261 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [12] total 14 [2022-04-08 05:59:20,261 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:59:20,261 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2000643757] [2022-04-08 05:59:20,261 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2000643757] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:59:20,261 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:59:20,261 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 05:59:20,261 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2084244688] [2022-04-08 05:59:20,261 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:59:20,262 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) Word has length 74 [2022-04-08 05:59:20,262 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:59:20,262 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-08 05:59:20,284 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:20,285 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 05:59:20,285 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:59:20,285 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 05:59:20,285 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=150, Unknown=0, NotChecked=0, Total=182 [2022-04-08 05:59:20,285 INFO L87 Difference]: Start difference. First operand 208 states and 296 transitions. Second operand has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-08 05:59:20,692 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:20,692 INFO L93 Difference]: Finished difference Result 214 states and 301 transitions. [2022-04-08 05:59:20,692 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 05:59:20,692 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) Word has length 74 [2022-04-08 05:59:20,692 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:59:20,692 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-08 05:59:20,693 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-08 05:59:20,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-08 05:59:20,693 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-08 05:59:20,694 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 53 transitions. [2022-04-08 05:59:20,718 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:20,721 INFO L225 Difference]: With dead ends: 214 [2022-04-08 05:59:20,721 INFO L226 Difference]: Without dead ends: 212 [2022-04-08 05:59:20,722 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 148 GetRequests, 134 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=174, Unknown=0, NotChecked=0, Total=210 [2022-04-08 05:59:20,722 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 13 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 48 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:59:20,722 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 139 Invalid, 48 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:59:20,722 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 212 states. [2022-04-08 05:59:21,089 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 212 to 212. [2022-04-08 05:59:21,089 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:59:21,089 INFO L82 GeneralOperation]: Start isEquivalent. First operand 212 states. Second operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 05:59:21,090 INFO L74 IsIncluded]: Start isIncluded. First operand 212 states. Second operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 05:59:21,090 INFO L87 Difference]: Start difference. First operand 212 states. Second operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 05:59:21,094 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:21,094 INFO L93 Difference]: Finished difference Result 212 states and 299 transitions. [2022-04-08 05:59:21,095 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-08 05:59:21,095 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:59:21,095 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:59:21,095 INFO L74 IsIncluded]: Start isIncluded. First operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 212 states. [2022-04-08 05:59:21,096 INFO L87 Difference]: Start difference. First operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 212 states. [2022-04-08 05:59:21,100 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:21,100 INFO L93 Difference]: Finished difference Result 212 states and 299 transitions. [2022-04-08 05:59:21,100 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-08 05:59:21,100 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:59:21,100 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:59:21,100 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:59:21,100 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:59:21,101 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 05:59:21,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 212 states to 212 states and 299 transitions. [2022-04-08 05:59:21,105 INFO L78 Accepts]: Start accepts. Automaton has 212 states and 299 transitions. Word has length 74 [2022-04-08 05:59:21,106 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:59:21,106 INFO L478 AbstractCegarLoop]: Abstraction has 212 states and 299 transitions. [2022-04-08 05:59:21,106 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-08 05:59:21,106 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 212 states and 299 transitions. [2022-04-08 05:59:21,779 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 299 edges. 299 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:21,780 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-08 05:59:21,780 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2022-04-08 05:59:21,780 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:59:21,780 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 4, 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] [2022-04-08 05:59:21,811 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-08 05:59:21,994 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-08 05:59:21,994 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:59:21,994 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:59:21,994 INFO L85 PathProgramCache]: Analyzing trace with hash -2089538094, now seen corresponding path program 1 times [2022-04-08 05:59:21,994 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:59:21,994 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [629131386] [2022-04-08 05:59:21,995 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:59:21,995 INFO L85 PathProgramCache]: Analyzing trace with hash -2089538094, now seen corresponding path program 2 times [2022-04-08 05:59:21,995 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:59:21,995 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1679902032] [2022-04-08 05:59:21,995 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:59:21,995 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:59:22,013 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:59:22,013 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [899323168] [2022-04-08 05:59:22,013 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 05:59:22,013 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:59:22,013 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:59:22,022 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:59:22,023 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-08 05:59:22,063 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 05:59:22,063 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:59:22,064 INFO L263 TraceCheckSpWp]: Trace formula consists of 209 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-08 05:59:22,072 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:59:22,073 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:59:22,180 INFO L272 TraceCheckUtils]: 0: Hoare triple {11961#true} call ULTIMATE.init(); {11961#true} is VALID [2022-04-08 05:59:22,180 INFO L290 TraceCheckUtils]: 1: Hoare triple {11961#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {11961#true} is VALID [2022-04-08 05:59:22,180 INFO L290 TraceCheckUtils]: 2: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 05:59:22,180 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11961#true} {11961#true} #112#return; {11961#true} is VALID [2022-04-08 05:59:22,180 INFO L272 TraceCheckUtils]: 4: Hoare triple {11961#true} call #t~ret6 := main(); {11961#true} is VALID [2022-04-08 05:59:22,180 INFO L290 TraceCheckUtils]: 5: Hoare triple {11961#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {11961#true} is VALID [2022-04-08 05:59:22,180 INFO L272 TraceCheckUtils]: 6: Hoare triple {11961#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {11961#true} is VALID [2022-04-08 05:59:22,180 INFO L290 TraceCheckUtils]: 7: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 05:59:22,180 INFO L290 TraceCheckUtils]: 8: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 05:59:22,180 INFO L290 TraceCheckUtils]: 9: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 05:59:22,180 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11961#true} {11961#true} #94#return; {11961#true} is VALID [2022-04-08 05:59:22,180 INFO L290 TraceCheckUtils]: 11: Hoare triple {11961#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11961#true} is VALID [2022-04-08 05:59:22,180 INFO L272 TraceCheckUtils]: 12: Hoare triple {11961#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {11961#true} is VALID [2022-04-08 05:59:22,180 INFO L290 TraceCheckUtils]: 13: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 05:59:22,180 INFO L290 TraceCheckUtils]: 14: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 05:59:22,180 INFO L290 TraceCheckUtils]: 15: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11961#true} {11961#true} #96#return; {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L272 TraceCheckUtils]: 17: Hoare triple {11961#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L290 TraceCheckUtils]: 18: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L290 TraceCheckUtils]: 19: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L290 TraceCheckUtils]: 20: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11961#true} {11961#true} #98#return; {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L272 TraceCheckUtils]: 22: Hoare triple {11961#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L290 TraceCheckUtils]: 23: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L290 TraceCheckUtils]: 24: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L290 TraceCheckUtils]: 25: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11961#true} {11961#true} #100#return; {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L290 TraceCheckUtils]: 27: Hoare triple {11961#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L290 TraceCheckUtils]: 28: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L290 TraceCheckUtils]: 29: Hoare triple {11961#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L290 TraceCheckUtils]: 30: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L290 TraceCheckUtils]: 31: Hoare triple {11961#true} assume !(~c~0 >= ~b~0); {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L290 TraceCheckUtils]: 32: Hoare triple {11961#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {11961#true} is VALID [2022-04-08 05:59:22,181 INFO L290 TraceCheckUtils]: 33: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 05:59:22,182 INFO L290 TraceCheckUtils]: 34: Hoare triple {11961#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11961#true} is VALID [2022-04-08 05:59:22,182 INFO L290 TraceCheckUtils]: 35: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 05:59:22,182 INFO L290 TraceCheckUtils]: 36: Hoare triple {11961#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11961#true} is VALID [2022-04-08 05:59:22,182 INFO L290 TraceCheckUtils]: 37: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 05:59:22,182 INFO L272 TraceCheckUtils]: 38: Hoare triple {11961#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11961#true} is VALID [2022-04-08 05:59:22,182 INFO L290 TraceCheckUtils]: 39: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 05:59:22,182 INFO L290 TraceCheckUtils]: 40: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 05:59:22,182 INFO L290 TraceCheckUtils]: 41: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 05:59:22,182 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {11961#true} {11961#true} #102#return; {11961#true} is VALID [2022-04-08 05:59:22,182 INFO L272 TraceCheckUtils]: 43: Hoare triple {11961#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11961#true} is VALID [2022-04-08 05:59:22,188 INFO L290 TraceCheckUtils]: 44: Hoare triple {11961#true} ~cond := #in~cond; {12098#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:59:22,188 INFO L290 TraceCheckUtils]: 45: Hoare triple {12098#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12102#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:22,188 INFO L290 TraceCheckUtils]: 46: Hoare triple {12102#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12102#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:22,189 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {12102#(not (= |__VERIFIER_assert_#in~cond| 0))} {11961#true} #104#return; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:59:22,189 INFO L272 TraceCheckUtils]: 48: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11961#true} is VALID [2022-04-08 05:59:22,189 INFO L290 TraceCheckUtils]: 49: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 05:59:22,189 INFO L290 TraceCheckUtils]: 50: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 05:59:22,189 INFO L290 TraceCheckUtils]: 51: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 05:59:22,190 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {11961#true} {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #106#return; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:59:22,190 INFO L272 TraceCheckUtils]: 53: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11961#true} is VALID [2022-04-08 05:59:22,190 INFO L290 TraceCheckUtils]: 54: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 05:59:22,190 INFO L290 TraceCheckUtils]: 55: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 05:59:22,190 INFO L290 TraceCheckUtils]: 56: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 05:59:22,191 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {11961#true} {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #108#return; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:59:22,191 INFO L290 TraceCheckUtils]: 58: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:59:22,192 INFO L290 TraceCheckUtils]: 59: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:59:22,192 INFO L290 TraceCheckUtils]: 60: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:59:22,192 INFO L290 TraceCheckUtils]: 61: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:59:22,193 INFO L290 TraceCheckUtils]: 62: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:59:22,194 INFO L290 TraceCheckUtils]: 63: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:59:22,194 INFO L290 TraceCheckUtils]: 64: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:59:22,194 INFO L290 TraceCheckUtils]: 65: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:59:22,195 INFO L290 TraceCheckUtils]: 66: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:59:22,195 INFO L290 TraceCheckUtils]: 67: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:59:22,196 INFO L272 TraceCheckUtils]: 68: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12174#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:59:22,198 INFO L290 TraceCheckUtils]: 69: Hoare triple {12174#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {12178#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:59:22,198 INFO L290 TraceCheckUtils]: 70: Hoare triple {12178#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11962#false} is VALID [2022-04-08 05:59:22,199 INFO L290 TraceCheckUtils]: 71: Hoare triple {11962#false} assume !false; {11962#false} is VALID [2022-04-08 05:59:22,199 INFO L134 CoverageAnalysis]: Checked inductivity of 77 backedges. 25 proven. 9 refuted. 0 times theorem prover too weak. 43 trivial. 0 not checked. [2022-04-08 05:59:22,199 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 05:59:39,687 INFO L290 TraceCheckUtils]: 71: Hoare triple {11962#false} assume !false; {11962#false} is VALID [2022-04-08 05:59:39,687 INFO L290 TraceCheckUtils]: 70: Hoare triple {12178#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11962#false} is VALID [2022-04-08 05:59:39,688 INFO L290 TraceCheckUtils]: 69: Hoare triple {12174#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {12178#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:59:39,688 INFO L272 TraceCheckUtils]: 68: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12174#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:59:39,689 INFO L290 TraceCheckUtils]: 67: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:59:39,689 INFO L290 TraceCheckUtils]: 66: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:59:39,689 INFO L290 TraceCheckUtils]: 65: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:59:39,690 INFO L290 TraceCheckUtils]: 64: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:59:39,690 INFO L290 TraceCheckUtils]: 63: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:59:39,690 INFO L290 TraceCheckUtils]: 62: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 05:59:39,691 INFO L290 TraceCheckUtils]: 61: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:59:39,691 INFO L290 TraceCheckUtils]: 60: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:59:39,691 INFO L290 TraceCheckUtils]: 59: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:59:39,692 INFO L290 TraceCheckUtils]: 58: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:59:39,692 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {11961#true} {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #108#return; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:59:39,692 INFO L290 TraceCheckUtils]: 56: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 05:59:39,692 INFO L290 TraceCheckUtils]: 55: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 05:59:39,692 INFO L290 TraceCheckUtils]: 54: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 05:59:39,692 INFO L272 TraceCheckUtils]: 53: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11961#true} is VALID [2022-04-08 05:59:39,693 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {11961#true} {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #106#return; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:59:39,693 INFO L290 TraceCheckUtils]: 51: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 05:59:39,693 INFO L290 TraceCheckUtils]: 50: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 05:59:39,693 INFO L290 TraceCheckUtils]: 49: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 05:59:39,693 INFO L272 TraceCheckUtils]: 48: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11961#true} is VALID [2022-04-08 05:59:39,694 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {12102#(not (= |__VERIFIER_assert_#in~cond| 0))} {11961#true} #104#return; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 05:59:39,694 INFO L290 TraceCheckUtils]: 46: Hoare triple {12102#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12102#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:39,694 INFO L290 TraceCheckUtils]: 45: Hoare triple {12266#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {12102#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:39,695 INFO L290 TraceCheckUtils]: 44: Hoare triple {11961#true} ~cond := #in~cond; {12266#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 05:59:39,695 INFO L272 TraceCheckUtils]: 43: Hoare triple {11961#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11961#true} is VALID [2022-04-08 05:59:39,695 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {11961#true} {11961#true} #102#return; {11961#true} is VALID [2022-04-08 05:59:39,695 INFO L290 TraceCheckUtils]: 41: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 05:59:39,695 INFO L290 TraceCheckUtils]: 40: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 05:59:39,695 INFO L290 TraceCheckUtils]: 39: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 05:59:39,695 INFO L272 TraceCheckUtils]: 38: Hoare triple {11961#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11961#true} is VALID [2022-04-08 05:59:39,695 INFO L290 TraceCheckUtils]: 37: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 05:59:39,695 INFO L290 TraceCheckUtils]: 36: Hoare triple {11961#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11961#true} is VALID [2022-04-08 05:59:39,695 INFO L290 TraceCheckUtils]: 35: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 05:59:39,695 INFO L290 TraceCheckUtils]: 34: Hoare triple {11961#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11961#true} is VALID [2022-04-08 05:59:39,695 INFO L290 TraceCheckUtils]: 33: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 05:59:39,695 INFO L290 TraceCheckUtils]: 32: Hoare triple {11961#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {11961#true} is VALID [2022-04-08 05:59:39,695 INFO L290 TraceCheckUtils]: 31: Hoare triple {11961#true} assume !(~c~0 >= ~b~0); {11961#true} is VALID [2022-04-08 05:59:39,695 INFO L290 TraceCheckUtils]: 30: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L290 TraceCheckUtils]: 29: Hoare triple {11961#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L290 TraceCheckUtils]: 28: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L290 TraceCheckUtils]: 27: Hoare triple {11961#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11961#true} {11961#true} #100#return; {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L290 TraceCheckUtils]: 25: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L290 TraceCheckUtils]: 24: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L290 TraceCheckUtils]: 23: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L272 TraceCheckUtils]: 22: Hoare triple {11961#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11961#true} {11961#true} #98#return; {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L290 TraceCheckUtils]: 20: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L290 TraceCheckUtils]: 19: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L290 TraceCheckUtils]: 18: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L272 TraceCheckUtils]: 17: Hoare triple {11961#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11961#true} {11961#true} #96#return; {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L290 TraceCheckUtils]: 15: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L290 TraceCheckUtils]: 14: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L290 TraceCheckUtils]: 13: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L272 TraceCheckUtils]: 12: Hoare triple {11961#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {11961#true} is VALID [2022-04-08 05:59:39,696 INFO L290 TraceCheckUtils]: 11: Hoare triple {11961#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11961#true} is VALID [2022-04-08 05:59:39,697 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11961#true} {11961#true} #94#return; {11961#true} is VALID [2022-04-08 05:59:39,697 INFO L290 TraceCheckUtils]: 9: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 05:59:39,697 INFO L290 TraceCheckUtils]: 8: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 05:59:39,697 INFO L290 TraceCheckUtils]: 7: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 05:59:39,697 INFO L272 TraceCheckUtils]: 6: Hoare triple {11961#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {11961#true} is VALID [2022-04-08 05:59:39,697 INFO L290 TraceCheckUtils]: 5: Hoare triple {11961#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {11961#true} is VALID [2022-04-08 05:59:39,697 INFO L272 TraceCheckUtils]: 4: Hoare triple {11961#true} call #t~ret6 := main(); {11961#true} is VALID [2022-04-08 05:59:39,697 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11961#true} {11961#true} #112#return; {11961#true} is VALID [2022-04-08 05:59:39,697 INFO L290 TraceCheckUtils]: 2: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 05:59:39,697 INFO L290 TraceCheckUtils]: 1: Hoare triple {11961#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {11961#true} is VALID [2022-04-08 05:59:39,697 INFO L272 TraceCheckUtils]: 0: Hoare triple {11961#true} call ULTIMATE.init(); {11961#true} is VALID [2022-04-08 05:59:39,697 INFO L134 CoverageAnalysis]: Checked inductivity of 77 backedges. 25 proven. 9 refuted. 0 times theorem prover too weak. 43 trivial. 0 not checked. [2022-04-08 05:59:39,697 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:59:39,697 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1679902032] [2022-04-08 05:59:39,697 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:59:39,698 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [899323168] [2022-04-08 05:59:39,698 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [899323168] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 05:59:39,698 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 05:59:39,698 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-08 05:59:39,698 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:59:39,698 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [629131386] [2022-04-08 05:59:39,698 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [629131386] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:59:39,698 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:59:39,698 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 05:59:39,698 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [57277309] [2022-04-08 05:59:39,698 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:59:39,698 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 72 [2022-04-08 05:59:39,699 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:59:39,699 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 05:59:39,735 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:39,735 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 05:59:39,735 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:59:39,736 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 05:59:39,736 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-08 05:59:39,736 INFO L87 Difference]: Start difference. First operand 212 states and 299 transitions. Second operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 05:59:40,733 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:40,733 INFO L93 Difference]: Finished difference Result 226 states and 310 transitions. [2022-04-08 05:59:40,734 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 05:59:40,734 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 72 [2022-04-08 05:59:40,734 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:59:40,734 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 05:59:40,735 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 58 transitions. [2022-04-08 05:59:40,735 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 05:59:40,735 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 58 transitions. [2022-04-08 05:59:40,735 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 58 transitions. [2022-04-08 05:59:40,779 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:40,782 INFO L225 Difference]: With dead ends: 226 [2022-04-08 05:59:40,782 INFO L226 Difference]: Without dead ends: 224 [2022-04-08 05:59:40,783 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 147 GetRequests, 136 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-08 05:59:40,783 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 21 mSDsluCounter, 140 mSDsCounter, 0 mSdLazyCounter, 112 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 173 SdHoareTripleChecker+Invalid, 122 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 112 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 05:59:40,783 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 173 Invalid, 122 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 112 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 05:59:40,784 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 224 states. [2022-04-08 05:59:41,251 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 224 to 224. [2022-04-08 05:59:41,251 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:59:41,252 INFO L82 GeneralOperation]: Start isEquivalent. First operand 224 states. Second operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 05:59:41,252 INFO L74 IsIncluded]: Start isIncluded. First operand 224 states. Second operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 05:59:41,252 INFO L87 Difference]: Start difference. First operand 224 states. Second operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 05:59:41,257 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:41,257 INFO L93 Difference]: Finished difference Result 224 states and 308 transitions. [2022-04-08 05:59:41,257 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-08 05:59:41,257 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:59:41,257 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:59:41,257 INFO L74 IsIncluded]: Start isIncluded. First operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 224 states. [2022-04-08 05:59:41,258 INFO L87 Difference]: Start difference. First operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 224 states. [2022-04-08 05:59:41,262 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:41,262 INFO L93 Difference]: Finished difference Result 224 states and 308 transitions. [2022-04-08 05:59:41,262 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-08 05:59:41,262 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:59:41,262 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:59:41,263 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:59:41,263 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:59:41,263 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 05:59:41,267 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 224 states to 224 states and 308 transitions. [2022-04-08 05:59:41,267 INFO L78 Accepts]: Start accepts. Automaton has 224 states and 308 transitions. Word has length 72 [2022-04-08 05:59:41,268 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:59:41,268 INFO L478 AbstractCegarLoop]: Abstraction has 224 states and 308 transitions. [2022-04-08 05:59:41,268 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 05:59:41,268 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 224 states and 308 transitions. [2022-04-08 05:59:41,802 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 308 edges. 308 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:41,802 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-08 05:59:41,803 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2022-04-08 05:59:41,803 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:59:41,803 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 4, 4, 4, 3, 2, 2, 2, 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] [2022-04-08 05:59:41,819 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Ended with exit code 0 [2022-04-08 05:59:42,003 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-08 05:59:42,004 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:59:42,004 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:59:42,004 INFO L85 PathProgramCache]: Analyzing trace with hash 1984914564, now seen corresponding path program 3 times [2022-04-08 05:59:42,004 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:59:42,004 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2052216637] [2022-04-08 05:59:42,004 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:59:42,004 INFO L85 PathProgramCache]: Analyzing trace with hash 1984914564, now seen corresponding path program 4 times [2022-04-08 05:59:42,005 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:59:42,005 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1995820864] [2022-04-08 05:59:42,005 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:59:42,005 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:59:42,015 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:59:42,015 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2070555583] [2022-04-08 05:59:42,016 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 05:59:42,016 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:59:42,016 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:59:42,016 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:59:42,017 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-08 05:59:42,057 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 05:59:42,057 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:59:42,058 INFO L263 TraceCheckSpWp]: Trace formula consists of 174 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-08 05:59:42,068 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:59:42,069 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:59:42,268 INFO L272 TraceCheckUtils]: 0: Hoare triple {13756#true} call ULTIMATE.init(); {13756#true} is VALID [2022-04-08 05:59:42,268 INFO L290 TraceCheckUtils]: 1: Hoare triple {13756#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {13756#true} is VALID [2022-04-08 05:59:42,268 INFO L290 TraceCheckUtils]: 2: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 05:59:42,268 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13756#true} {13756#true} #112#return; {13756#true} is VALID [2022-04-08 05:59:42,268 INFO L272 TraceCheckUtils]: 4: Hoare triple {13756#true} call #t~ret6 := main(); {13756#true} is VALID [2022-04-08 05:59:42,268 INFO L290 TraceCheckUtils]: 5: Hoare triple {13756#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {13756#true} is VALID [2022-04-08 05:59:42,268 INFO L272 TraceCheckUtils]: 6: Hoare triple {13756#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {13756#true} is VALID [2022-04-08 05:59:42,268 INFO L290 TraceCheckUtils]: 7: Hoare triple {13756#true} ~cond := #in~cond; {13756#true} is VALID [2022-04-08 05:59:42,268 INFO L290 TraceCheckUtils]: 8: Hoare triple {13756#true} assume !(0 == ~cond); {13756#true} is VALID [2022-04-08 05:59:42,268 INFO L290 TraceCheckUtils]: 9: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 05:59:42,268 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13756#true} {13756#true} #94#return; {13756#true} is VALID [2022-04-08 05:59:42,268 INFO L290 TraceCheckUtils]: 11: Hoare triple {13756#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {13756#true} is VALID [2022-04-08 05:59:42,268 INFO L272 TraceCheckUtils]: 12: Hoare triple {13756#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L290 TraceCheckUtils]: 13: Hoare triple {13756#true} ~cond := #in~cond; {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L290 TraceCheckUtils]: 14: Hoare triple {13756#true} assume !(0 == ~cond); {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L290 TraceCheckUtils]: 15: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {13756#true} {13756#true} #96#return; {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L272 TraceCheckUtils]: 17: Hoare triple {13756#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L290 TraceCheckUtils]: 18: Hoare triple {13756#true} ~cond := #in~cond; {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L290 TraceCheckUtils]: 19: Hoare triple {13756#true} assume !(0 == ~cond); {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L290 TraceCheckUtils]: 20: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {13756#true} {13756#true} #98#return; {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L272 TraceCheckUtils]: 22: Hoare triple {13756#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L290 TraceCheckUtils]: 23: Hoare triple {13756#true} ~cond := #in~cond; {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L290 TraceCheckUtils]: 24: Hoare triple {13756#true} assume !(0 == ~cond); {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L290 TraceCheckUtils]: 25: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {13756#true} {13756#true} #100#return; {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L290 TraceCheckUtils]: 27: Hoare triple {13756#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L290 TraceCheckUtils]: 28: Hoare triple {13756#true} assume !false; {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L290 TraceCheckUtils]: 29: Hoare triple {13756#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13756#true} is VALID [2022-04-08 05:59:42,269 INFO L290 TraceCheckUtils]: 30: Hoare triple {13756#true} assume !false; {13756#true} is VALID [2022-04-08 05:59:42,270 INFO L290 TraceCheckUtils]: 31: Hoare triple {13756#true} assume !(~c~0 >= ~b~0); {13756#true} is VALID [2022-04-08 05:59:42,270 INFO L290 TraceCheckUtils]: 32: Hoare triple {13756#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {13756#true} is VALID [2022-04-08 05:59:42,270 INFO L290 TraceCheckUtils]: 33: Hoare triple {13756#true} assume !false; {13756#true} is VALID [2022-04-08 05:59:42,270 INFO L290 TraceCheckUtils]: 34: Hoare triple {13756#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13756#true} is VALID [2022-04-08 05:59:42,270 INFO L290 TraceCheckUtils]: 35: Hoare triple {13756#true} assume !false; {13756#true} is VALID [2022-04-08 05:59:42,270 INFO L290 TraceCheckUtils]: 36: Hoare triple {13756#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {13869#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 05:59:42,270 INFO L290 TraceCheckUtils]: 37: Hoare triple {13869#(<= main_~v~0 main_~b~0)} assume !false; {13869#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 05:59:42,270 INFO L272 TraceCheckUtils]: 38: Hoare triple {13869#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13756#true} is VALID [2022-04-08 05:59:42,270 INFO L290 TraceCheckUtils]: 39: Hoare triple {13756#true} ~cond := #in~cond; {13756#true} is VALID [2022-04-08 05:59:42,270 INFO L290 TraceCheckUtils]: 40: Hoare triple {13756#true} assume !(0 == ~cond); {13756#true} is VALID [2022-04-08 05:59:42,271 INFO L290 TraceCheckUtils]: 41: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 05:59:42,271 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {13756#true} {13869#(<= main_~v~0 main_~b~0)} #102#return; {13869#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 05:59:42,271 INFO L272 TraceCheckUtils]: 43: Hoare triple {13869#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13756#true} is VALID [2022-04-08 05:59:42,271 INFO L290 TraceCheckUtils]: 44: Hoare triple {13756#true} ~cond := #in~cond; {13756#true} is VALID [2022-04-08 05:59:42,271 INFO L290 TraceCheckUtils]: 45: Hoare triple {13756#true} assume !(0 == ~cond); {13756#true} is VALID [2022-04-08 05:59:42,271 INFO L290 TraceCheckUtils]: 46: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 05:59:42,272 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {13756#true} {13869#(<= main_~v~0 main_~b~0)} #104#return; {13869#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 05:59:42,272 INFO L272 TraceCheckUtils]: 48: Hoare triple {13869#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13756#true} is VALID [2022-04-08 05:59:42,272 INFO L290 TraceCheckUtils]: 49: Hoare triple {13756#true} ~cond := #in~cond; {13756#true} is VALID [2022-04-08 05:59:42,272 INFO L290 TraceCheckUtils]: 50: Hoare triple {13756#true} assume !(0 == ~cond); {13756#true} is VALID [2022-04-08 05:59:42,272 INFO L290 TraceCheckUtils]: 51: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 05:59:42,273 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {13756#true} {13869#(<= main_~v~0 main_~b~0)} #106#return; {13869#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 05:59:42,273 INFO L272 TraceCheckUtils]: 53: Hoare triple {13869#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {13756#true} is VALID [2022-04-08 05:59:42,273 INFO L290 TraceCheckUtils]: 54: Hoare triple {13756#true} ~cond := #in~cond; {13756#true} is VALID [2022-04-08 05:59:42,273 INFO L290 TraceCheckUtils]: 55: Hoare triple {13756#true} assume !(0 == ~cond); {13756#true} is VALID [2022-04-08 05:59:42,273 INFO L290 TraceCheckUtils]: 56: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 05:59:42,273 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {13756#true} {13869#(<= main_~v~0 main_~b~0)} #108#return; {13869#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 05:59:42,274 INFO L290 TraceCheckUtils]: 58: Hoare triple {13869#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {13936#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-08 05:59:42,274 INFO L290 TraceCheckUtils]: 59: Hoare triple {13936#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {13940#(< main_~c~0 main_~b~0)} is VALID [2022-04-08 05:59:42,274 INFO L290 TraceCheckUtils]: 60: Hoare triple {13940#(< main_~c~0 main_~b~0)} assume !false; {13940#(< main_~c~0 main_~b~0)} is VALID [2022-04-08 05:59:42,275 INFO L290 TraceCheckUtils]: 61: Hoare triple {13940#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {13757#false} is VALID [2022-04-08 05:59:42,275 INFO L290 TraceCheckUtils]: 62: Hoare triple {13757#false} assume !false; {13757#false} is VALID [2022-04-08 05:59:42,275 INFO L272 TraceCheckUtils]: 63: Hoare triple {13757#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13757#false} is VALID [2022-04-08 05:59:42,275 INFO L290 TraceCheckUtils]: 64: Hoare triple {13757#false} ~cond := #in~cond; {13757#false} is VALID [2022-04-08 05:59:42,275 INFO L290 TraceCheckUtils]: 65: Hoare triple {13757#false} assume !(0 == ~cond); {13757#false} is VALID [2022-04-08 05:59:42,275 INFO L290 TraceCheckUtils]: 66: Hoare triple {13757#false} assume true; {13757#false} is VALID [2022-04-08 05:59:42,275 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {13757#false} {13757#false} #102#return; {13757#false} is VALID [2022-04-08 05:59:42,275 INFO L272 TraceCheckUtils]: 68: Hoare triple {13757#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13757#false} is VALID [2022-04-08 05:59:42,275 INFO L290 TraceCheckUtils]: 69: Hoare triple {13757#false} ~cond := #in~cond; {13757#false} is VALID [2022-04-08 05:59:42,275 INFO L290 TraceCheckUtils]: 70: Hoare triple {13757#false} assume !(0 == ~cond); {13757#false} is VALID [2022-04-08 05:59:42,275 INFO L290 TraceCheckUtils]: 71: Hoare triple {13757#false} assume true; {13757#false} is VALID [2022-04-08 05:59:42,275 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {13757#false} {13757#false} #104#return; {13757#false} is VALID [2022-04-08 05:59:42,275 INFO L272 TraceCheckUtils]: 73: Hoare triple {13757#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13757#false} is VALID [2022-04-08 05:59:42,275 INFO L290 TraceCheckUtils]: 74: Hoare triple {13757#false} ~cond := #in~cond; {13757#false} is VALID [2022-04-08 05:59:42,275 INFO L290 TraceCheckUtils]: 75: Hoare triple {13757#false} assume 0 == ~cond; {13757#false} is VALID [2022-04-08 05:59:42,275 INFO L290 TraceCheckUtils]: 76: Hoare triple {13757#false} assume !false; {13757#false} is VALID [2022-04-08 05:59:42,276 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 48 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-08 05:59:42,276 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 05:59:42,276 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 05:59:42,276 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1995820864] [2022-04-08 05:59:42,276 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 05:59:42,276 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2070555583] [2022-04-08 05:59:42,276 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2070555583] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:59:42,276 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:59:42,276 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:59:42,276 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 05:59:42,276 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2052216637] [2022-04-08 05:59:42,276 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2052216637] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 05:59:42,276 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 05:59:42,276 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 05:59:42,276 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [64269179] [2022-04-08 05:59:42,276 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 05:59:42,277 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) Word has length 77 [2022-04-08 05:59:42,277 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 05:59:42,277 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-08 05:59:42,314 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:42,314 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 05:59:42,314 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 05:59:42,314 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 05:59:42,314 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 05:59:42,314 INFO L87 Difference]: Start difference. First operand 224 states and 308 transitions. Second operand has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-08 05:59:43,016 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:43,016 INFO L93 Difference]: Finished difference Result 367 states and 500 transitions. [2022-04-08 05:59:43,016 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 05:59:43,016 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) Word has length 77 [2022-04-08 05:59:43,017 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 05:59:43,017 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-08 05:59:43,017 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 85 transitions. [2022-04-08 05:59:43,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-08 05:59:43,018 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 85 transitions. [2022-04-08 05:59:43,018 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 85 transitions. [2022-04-08 05:59:43,078 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:43,082 INFO L225 Difference]: With dead ends: 367 [2022-04-08 05:59:43,082 INFO L226 Difference]: Without dead ends: 230 [2022-04-08 05:59:43,083 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 74 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-08 05:59:43,083 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 3 mSDsluCounter, 94 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 3 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 57 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 05:59:43,083 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [3 Valid, 139 Invalid, 57 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 05:59:43,084 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 230 states. [2022-04-08 05:59:43,491 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 230 to 214. [2022-04-08 05:59:43,491 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 05:59:43,492 INFO L82 GeneralOperation]: Start isEquivalent. First operand 230 states. Second operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-08 05:59:43,492 INFO L74 IsIncluded]: Start isIncluded. First operand 230 states. Second operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-08 05:59:43,492 INFO L87 Difference]: Start difference. First operand 230 states. Second operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-08 05:59:43,497 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:43,497 INFO L93 Difference]: Finished difference Result 230 states and 305 transitions. [2022-04-08 05:59:43,497 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 305 transitions. [2022-04-08 05:59:43,497 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:59:43,497 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:59:43,498 INFO L74 IsIncluded]: Start isIncluded. First operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) Second operand 230 states. [2022-04-08 05:59:43,498 INFO L87 Difference]: Start difference. First operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) Second operand 230 states. [2022-04-08 05:59:43,502 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 05:59:43,502 INFO L93 Difference]: Finished difference Result 230 states and 305 transitions. [2022-04-08 05:59:43,502 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 305 transitions. [2022-04-08 05:59:43,502 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 05:59:43,502 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 05:59:43,502 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 05:59:43,502 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 05:59:43,503 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-08 05:59:43,507 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 214 states to 214 states and 289 transitions. [2022-04-08 05:59:43,507 INFO L78 Accepts]: Start accepts. Automaton has 214 states and 289 transitions. Word has length 77 [2022-04-08 05:59:43,507 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 05:59:43,507 INFO L478 AbstractCegarLoop]: Abstraction has 214 states and 289 transitions. [2022-04-08 05:59:43,510 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-08 05:59:43,510 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 214 states and 289 transitions. [2022-04-08 05:59:44,131 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 289 edges. 289 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 05:59:44,131 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 289 transitions. [2022-04-08 05:59:44,132 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2022-04-08 05:59:44,132 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 05:59:44,132 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 4, 4, 4, 4, 3, 3, 2, 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] [2022-04-08 05:59:44,150 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-08 05:59:44,332 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-08 05:59:44,332 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 05:59:44,332 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 05:59:44,332 INFO L85 PathProgramCache]: Analyzing trace with hash -867272991, now seen corresponding path program 5 times [2022-04-08 05:59:44,332 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 05:59:44,333 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1938434911] [2022-04-08 05:59:44,333 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 05:59:44,333 INFO L85 PathProgramCache]: Analyzing trace with hash -867272991, now seen corresponding path program 6 times [2022-04-08 05:59:44,333 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 05:59:44,333 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [678450933] [2022-04-08 05:59:44,333 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 05:59:44,333 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 05:59:44,342 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 05:59:44,342 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1753053947] [2022-04-08 05:59:44,342 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 05:59:44,342 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 05:59:44,343 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 05:59:44,348 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 05:59:44,349 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-08 05:59:44,408 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 05:59:44,408 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 05:59:44,409 INFO L263 TraceCheckSpWp]: Trace formula consists of 196 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-08 05:59:44,420 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 05:59:44,421 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 05:59:45,223 INFO L272 TraceCheckUtils]: 0: Hoare triple {15616#true} call ULTIMATE.init(); {15616#true} is VALID [2022-04-08 05:59:45,223 INFO L290 TraceCheckUtils]: 1: Hoare triple {15616#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {15616#true} is VALID [2022-04-08 05:59:45,223 INFO L290 TraceCheckUtils]: 2: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 05:59:45,223 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15616#true} {15616#true} #112#return; {15616#true} is VALID [2022-04-08 05:59:45,223 INFO L272 TraceCheckUtils]: 4: Hoare triple {15616#true} call #t~ret6 := main(); {15616#true} is VALID [2022-04-08 05:59:45,223 INFO L290 TraceCheckUtils]: 5: Hoare triple {15616#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {15616#true} is VALID [2022-04-08 05:59:45,223 INFO L272 TraceCheckUtils]: 6: Hoare triple {15616#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {15616#true} is VALID [2022-04-08 05:59:45,223 INFO L290 TraceCheckUtils]: 7: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L290 TraceCheckUtils]: 8: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L290 TraceCheckUtils]: 9: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15616#true} {15616#true} #94#return; {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L290 TraceCheckUtils]: 11: Hoare triple {15616#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L272 TraceCheckUtils]: 12: Hoare triple {15616#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L290 TraceCheckUtils]: 13: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L290 TraceCheckUtils]: 14: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L290 TraceCheckUtils]: 15: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {15616#true} {15616#true} #96#return; {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L272 TraceCheckUtils]: 17: Hoare triple {15616#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L290 TraceCheckUtils]: 18: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L290 TraceCheckUtils]: 19: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L290 TraceCheckUtils]: 20: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15616#true} {15616#true} #98#return; {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L272 TraceCheckUtils]: 22: Hoare triple {15616#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L290 TraceCheckUtils]: 23: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L290 TraceCheckUtils]: 24: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 05:59:45,224 INFO L290 TraceCheckUtils]: 25: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 05:59:45,225 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {15616#true} {15616#true} #100#return; {15616#true} is VALID [2022-04-08 05:59:45,225 INFO L290 TraceCheckUtils]: 27: Hoare triple {15616#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {15702#(and (= main_~r~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:59:45,225 INFO L290 TraceCheckUtils]: 28: Hoare triple {15702#(and (= main_~r~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {15702#(and (= main_~r~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:59:45,226 INFO L290 TraceCheckUtils]: 29: Hoare triple {15702#(and (= main_~r~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15709#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:59:45,226 INFO L290 TraceCheckUtils]: 30: Hoare triple {15709#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {15709#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:59:45,226 INFO L290 TraceCheckUtils]: 31: Hoare triple {15709#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {15709#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 05:59:45,227 INFO L290 TraceCheckUtils]: 32: Hoare triple {15709#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15719#(and (= main_~s~0 0) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 05:59:45,228 INFO L290 TraceCheckUtils]: 33: Hoare triple {15719#(and (= main_~s~0 0) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {15719#(and (= main_~s~0 0) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 05:59:45,228 INFO L290 TraceCheckUtils]: 34: Hoare triple {15719#(and (= main_~s~0 0) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15726#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 05:59:45,228 INFO L290 TraceCheckUtils]: 35: Hoare triple {15726#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} assume !false; {15726#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 05:59:45,229 INFO L290 TraceCheckUtils]: 36: Hoare triple {15726#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15733#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 05:59:45,229 INFO L290 TraceCheckUtils]: 37: Hoare triple {15733#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !false; {15733#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 05:59:45,229 INFO L272 TraceCheckUtils]: 38: Hoare triple {15733#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 05:59:45,229 INFO L290 TraceCheckUtils]: 39: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 05:59:45,229 INFO L290 TraceCheckUtils]: 40: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 05:59:45,230 INFO L290 TraceCheckUtils]: 41: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 05:59:45,230 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {15616#true} {15733#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #102#return; {15733#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 05:59:45,230 INFO L272 TraceCheckUtils]: 43: Hoare triple {15733#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 05:59:45,231 INFO L290 TraceCheckUtils]: 44: Hoare triple {15616#true} ~cond := #in~cond; {15758#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:59:45,231 INFO L290 TraceCheckUtils]: 45: Hoare triple {15758#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {15762#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:45,231 INFO L290 TraceCheckUtils]: 46: Hoare triple {15762#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15762#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 05:59:45,232 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {15762#(not (= |__VERIFIER_assert_#in~cond| 0))} {15733#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #104#return; {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 05:59:45,232 INFO L272 TraceCheckUtils]: 48: Hoare triple {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 05:59:45,232 INFO L290 TraceCheckUtils]: 49: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 05:59:45,232 INFO L290 TraceCheckUtils]: 50: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 05:59:45,232 INFO L290 TraceCheckUtils]: 51: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 05:59:45,233 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {15616#true} {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #106#return; {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 05:59:45,233 INFO L272 TraceCheckUtils]: 53: Hoare triple {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 05:59:45,233 INFO L290 TraceCheckUtils]: 54: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 05:59:45,233 INFO L290 TraceCheckUtils]: 55: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 05:59:45,233 INFO L290 TraceCheckUtils]: 56: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 05:59:45,234 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {15616#true} {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #108#return; {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 05:59:45,235 INFO L290 TraceCheckUtils]: 58: Hoare triple {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !(~c~0 >= 2 * ~v~0); {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 05:59:45,235 INFO L290 TraceCheckUtils]: 59: Hoare triple {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {15806#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-08 05:59:45,235 INFO L290 TraceCheckUtils]: 60: Hoare triple {15806#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !false; {15806#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-08 05:59:45,236 INFO L290 TraceCheckUtils]: 61: Hoare triple {15806#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {15806#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-08 05:59:45,237 INFO L290 TraceCheckUtils]: 62: Hoare triple {15806#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15816#(and (= main_~s~0 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (<= (+ main_~q~0 1) 0) (= main_~a~0 (* main_~x~0 (* (- 1) main_~q~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:59:45,238 INFO L290 TraceCheckUtils]: 63: Hoare triple {15816#(and (= main_~s~0 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (<= (+ main_~q~0 1) 0) (= main_~a~0 (* main_~x~0 (* (- 1) main_~q~0))) (= main_~a~0 main_~x~0))} assume !false; {15816#(and (= main_~s~0 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (<= (+ main_~q~0 1) 0) (= main_~a~0 (* main_~x~0 (* (- 1) main_~q~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 05:59:45,238 INFO L290 TraceCheckUtils]: 64: Hoare triple {15816#(and (= main_~s~0 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (<= (+ main_~q~0 1) 0) (= main_~a~0 (* main_~x~0 (* (- 1) main_~q~0))) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} is VALID [2022-04-08 05:59:45,239 INFO L290 TraceCheckUtils]: 65: Hoare triple {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} assume !false; {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} is VALID [2022-04-08 05:59:45,239 INFO L290 TraceCheckUtils]: 66: Hoare triple {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} is VALID [2022-04-08 05:59:45,239 INFO L290 TraceCheckUtils]: 67: Hoare triple {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} assume !false; {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} is VALID [2022-04-08 05:59:45,239 INFO L272 TraceCheckUtils]: 68: Hoare triple {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 05:59:45,240 INFO L290 TraceCheckUtils]: 69: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 05:59:45,240 INFO L290 TraceCheckUtils]: 70: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 05:59:45,240 INFO L290 TraceCheckUtils]: 71: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 05:59:45,240 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {15616#true} {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} #102#return; {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} is VALID [2022-04-08 05:59:45,241 INFO L272 TraceCheckUtils]: 73: Hoare triple {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15851#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 05:59:45,241 INFO L290 TraceCheckUtils]: 74: Hoare triple {15851#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15855#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 05:59:45,241 INFO L290 TraceCheckUtils]: 75: Hoare triple {15855#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15617#false} is VALID [2022-04-08 05:59:45,241 INFO L290 TraceCheckUtils]: 76: Hoare triple {15617#false} assume !false; {15617#false} is VALID [2022-04-08 05:59:45,242 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 12 proven. 32 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-08 05:59:45,242 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:00:16,738 INFO L290 TraceCheckUtils]: 76: Hoare triple {15617#false} assume !false; {15617#false} is VALID [2022-04-08 06:00:16,739 INFO L290 TraceCheckUtils]: 75: Hoare triple {15855#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15617#false} is VALID [2022-04-08 06:00:16,739 INFO L290 TraceCheckUtils]: 74: Hoare triple {15851#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15855#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:00:16,740 INFO L272 TraceCheckUtils]: 73: Hoare triple {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15851#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:00:16,741 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {15616#true} {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 06:00:16,741 INFO L290 TraceCheckUtils]: 71: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 06:00:16,741 INFO L290 TraceCheckUtils]: 70: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 06:00:16,741 INFO L290 TraceCheckUtils]: 69: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 06:00:16,741 INFO L272 TraceCheckUtils]: 68: Hoare triple {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 06:00:16,741 INFO L290 TraceCheckUtils]: 67: Hoare triple {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 06:00:16,742 INFO L290 TraceCheckUtils]: 66: Hoare triple {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 06:00:16,742 INFO L290 TraceCheckUtils]: 65: Hoare triple {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 06:00:16,742 INFO L290 TraceCheckUtils]: 64: Hoare triple {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 06:00:16,743 INFO L290 TraceCheckUtils]: 63: Hoare triple {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 06:00:18,744 WARN L290 TraceCheckUtils]: 62: Hoare triple {15905#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-08 06:00:18,745 INFO L290 TraceCheckUtils]: 61: Hoare triple {15905#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {15905#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 06:00:18,746 INFO L290 TraceCheckUtils]: 60: Hoare triple {15905#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !false; {15905#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 06:00:19,546 INFO L290 TraceCheckUtils]: 59: Hoare triple {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {15905#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 06:00:19,547 INFO L290 TraceCheckUtils]: 58: Hoare triple {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~c~0 >= 2 * ~v~0); {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 06:00:19,548 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {15616#true} {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #108#return; {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 06:00:19,548 INFO L290 TraceCheckUtils]: 56: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 06:00:19,548 INFO L290 TraceCheckUtils]: 55: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 06:00:19,548 INFO L290 TraceCheckUtils]: 54: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 06:00:19,548 INFO L272 TraceCheckUtils]: 53: Hoare triple {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 06:00:19,549 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {15616#true} {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #106#return; {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 06:00:19,549 INFO L290 TraceCheckUtils]: 51: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 06:00:19,549 INFO L290 TraceCheckUtils]: 50: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 06:00:19,549 INFO L290 TraceCheckUtils]: 49: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 06:00:19,549 INFO L272 TraceCheckUtils]: 48: Hoare triple {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 06:00:19,550 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {15762#(not (= |__VERIFIER_assert_#in~cond| 0))} {15952#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #104#return; {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 06:00:19,551 INFO L290 TraceCheckUtils]: 46: Hoare triple {15762#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15762#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:00:19,551 INFO L290 TraceCheckUtils]: 45: Hoare triple {15962#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {15762#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:00:19,551 INFO L290 TraceCheckUtils]: 44: Hoare triple {15616#true} ~cond := #in~cond; {15962#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:00:19,551 INFO L272 TraceCheckUtils]: 43: Hoare triple {15952#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 06:00:19,552 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {15616#true} {15952#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #102#return; {15952#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:00:19,552 INFO L290 TraceCheckUtils]: 41: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 06:00:19,552 INFO L290 TraceCheckUtils]: 40: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 06:00:19,552 INFO L290 TraceCheckUtils]: 39: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 06:00:19,552 INFO L272 TraceCheckUtils]: 38: Hoare triple {15952#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 06:00:19,553 INFO L290 TraceCheckUtils]: 37: Hoare triple {15952#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {15952#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:00:19,554 INFO L290 TraceCheckUtils]: 36: Hoare triple {15987#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15952#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:00:19,554 INFO L290 TraceCheckUtils]: 35: Hoare triple {15987#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {15987#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:00:19,555 INFO L290 TraceCheckUtils]: 34: Hoare triple {15994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15987#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:00:19,555 INFO L290 TraceCheckUtils]: 33: Hoare triple {15994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {15994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:00:21,250 INFO L290 TraceCheckUtils]: 32: Hoare triple {16001#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:00:21,251 INFO L290 TraceCheckUtils]: 31: Hoare triple {16001#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {16001#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:00:21,251 INFO L290 TraceCheckUtils]: 30: Hoare triple {16001#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {16001#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:00:21,252 INFO L290 TraceCheckUtils]: 29: Hoare triple {16011#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (- 1) main_~a~0) (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {16001#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:00:21,252 INFO L290 TraceCheckUtils]: 28: Hoare triple {16011#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (- 1) main_~a~0) (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0)))} assume !false; {16011#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (- 1) main_~a~0) (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0)))} is VALID [2022-04-08 06:00:21,253 INFO L290 TraceCheckUtils]: 27: Hoare triple {15616#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16011#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (- 1) main_~a~0) (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0)))} is VALID [2022-04-08 06:00:21,253 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {15616#true} {15616#true} #100#return; {15616#true} is VALID [2022-04-08 06:00:21,253 INFO L290 TraceCheckUtils]: 25: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 06:00:21,253 INFO L290 TraceCheckUtils]: 24: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 06:00:21,253 INFO L290 TraceCheckUtils]: 23: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 06:00:21,253 INFO L272 TraceCheckUtils]: 22: Hoare triple {15616#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15616#true} is VALID [2022-04-08 06:00:21,253 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15616#true} {15616#true} #98#return; {15616#true} is VALID [2022-04-08 06:00:21,253 INFO L290 TraceCheckUtils]: 20: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 06:00:21,253 INFO L290 TraceCheckUtils]: 19: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 06:00:21,253 INFO L290 TraceCheckUtils]: 18: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 06:00:21,253 INFO L272 TraceCheckUtils]: 17: Hoare triple {15616#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {15616#true} is VALID [2022-04-08 06:00:21,253 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {15616#true} {15616#true} #96#return; {15616#true} is VALID [2022-04-08 06:00:21,253 INFO L290 TraceCheckUtils]: 15: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 06:00:21,253 INFO L290 TraceCheckUtils]: 14: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 06:00:21,254 INFO L290 TraceCheckUtils]: 13: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 06:00:21,254 INFO L272 TraceCheckUtils]: 12: Hoare triple {15616#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {15616#true} is VALID [2022-04-08 06:00:21,254 INFO L290 TraceCheckUtils]: 11: Hoare triple {15616#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {15616#true} is VALID [2022-04-08 06:00:21,254 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15616#true} {15616#true} #94#return; {15616#true} is VALID [2022-04-08 06:00:21,254 INFO L290 TraceCheckUtils]: 9: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 06:00:21,254 INFO L290 TraceCheckUtils]: 8: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 06:00:21,254 INFO L290 TraceCheckUtils]: 7: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 06:00:21,254 INFO L272 TraceCheckUtils]: 6: Hoare triple {15616#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {15616#true} is VALID [2022-04-08 06:00:21,254 INFO L290 TraceCheckUtils]: 5: Hoare triple {15616#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {15616#true} is VALID [2022-04-08 06:00:21,254 INFO L272 TraceCheckUtils]: 4: Hoare triple {15616#true} call #t~ret6 := main(); {15616#true} is VALID [2022-04-08 06:00:21,254 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15616#true} {15616#true} #112#return; {15616#true} is VALID [2022-04-08 06:00:21,254 INFO L290 TraceCheckUtils]: 2: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 06:00:21,254 INFO L290 TraceCheckUtils]: 1: Hoare triple {15616#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {15616#true} is VALID [2022-04-08 06:00:21,254 INFO L272 TraceCheckUtils]: 0: Hoare triple {15616#true} call ULTIMATE.init(); {15616#true} is VALID [2022-04-08 06:00:21,255 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 18 proven. 26 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-08 06:00:21,255 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:00:21,255 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [678450933] [2022-04-08 06:00:21,255 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:00:21,255 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1753053947] [2022-04-08 06:00:21,255 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1753053947] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:00:21,255 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:00:21,255 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14] total 24 [2022-04-08 06:00:21,255 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:00:21,255 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1938434911] [2022-04-08 06:00:21,255 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1938434911] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:00:21,255 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:00:21,256 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-08 06:00:21,256 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [743823140] [2022-04-08 06:00:21,256 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:00:21,256 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 77 [2022-04-08 06:00:21,256 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:00:21,256 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 06:00:21,305 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:00:21,305 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-08 06:00:21,305 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:00:21,306 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-08 06:00:21,306 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=87, Invalid=465, Unknown=0, NotChecked=0, Total=552 [2022-04-08 06:00:21,306 INFO L87 Difference]: Start difference. First operand 214 states and 289 transitions. Second operand has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 06:00:24,049 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:00:24,049 INFO L93 Difference]: Finished difference Result 285 states and 377 transitions. [2022-04-08 06:00:24,049 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 06:00:24,049 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 77 [2022-04-08 06:00:24,050 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:00:24,050 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 06:00:24,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 148 transitions. [2022-04-08 06:00:24,052 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 06:00:24,054 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 148 transitions. [2022-04-08 06:00:24,054 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 148 transitions. [2022-04-08 06:00:24,198 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 148 edges. 148 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:00:24,203 INFO L225 Difference]: With dead ends: 285 [2022-04-08 06:00:24,203 INFO L226 Difference]: Without dead ends: 283 [2022-04-08 06:00:24,204 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 160 GetRequests, 130 SyntacticMatches, 1 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 117 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=150, Invalid=780, Unknown=0, NotChecked=0, Total=930 [2022-04-08 06:00:24,204 INFO L913 BasicCegarLoop]: 50 mSDtfsCounter, 60 mSDsluCounter, 304 mSDsCounter, 0 mSdLazyCounter, 747 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 354 SdHoareTripleChecker+Invalid, 796 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 747 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-08 06:00:24,204 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [72 Valid, 354 Invalid, 796 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 747 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-08 06:00:24,205 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 283 states. [2022-04-08 06:00:24,966 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 283 to 265. [2022-04-08 06:00:24,966 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:00:24,966 INFO L82 GeneralOperation]: Start isEquivalent. First operand 283 states. Second operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) [2022-04-08 06:00:24,967 INFO L74 IsIncluded]: Start isIncluded. First operand 283 states. Second operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) [2022-04-08 06:00:24,967 INFO L87 Difference]: Start difference. First operand 283 states. Second operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) [2022-04-08 06:00:24,973 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:00:24,973 INFO L93 Difference]: Finished difference Result 283 states and 375 transitions. [2022-04-08 06:00:24,973 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 375 transitions. [2022-04-08 06:00:24,973 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:00:24,973 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:00:24,974 INFO L74 IsIncluded]: Start isIncluded. First operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) Second operand 283 states. [2022-04-08 06:00:24,974 INFO L87 Difference]: Start difference. First operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) Second operand 283 states. [2022-04-08 06:00:24,979 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:00:24,979 INFO L93 Difference]: Finished difference Result 283 states and 375 transitions. [2022-04-08 06:00:24,979 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 375 transitions. [2022-04-08 06:00:24,980 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:00:24,980 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:00:24,980 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:00:24,980 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:00:24,980 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) [2022-04-08 06:00:24,985 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 265 states to 265 states and 357 transitions. [2022-04-08 06:00:24,986 INFO L78 Accepts]: Start accepts. Automaton has 265 states and 357 transitions. Word has length 77 [2022-04-08 06:00:24,986 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:00:24,986 INFO L478 AbstractCegarLoop]: Abstraction has 265 states and 357 transitions. [2022-04-08 06:00:24,986 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 06:00:24,986 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 265 states and 357 transitions. [2022-04-08 06:00:25,667 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 357 edges. 357 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:00:25,667 INFO L276 IsEmpty]: Start isEmpty. Operand 265 states and 357 transitions. [2022-04-08 06:00:25,668 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-08 06:00:25,668 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:00:25,668 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 2, 2, 2, 2, 2, 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] [2022-04-08 06:00:25,685 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-08 06:00:25,868 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-04-08 06:00:25,869 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:00:25,869 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:00:25,869 INFO L85 PathProgramCache]: Analyzing trace with hash -1679616651, now seen corresponding path program 1 times [2022-04-08 06:00:25,869 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:00:25,869 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [76200850] [2022-04-08 06:00:25,869 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:00:25,869 INFO L85 PathProgramCache]: Analyzing trace with hash -1679616651, now seen corresponding path program 2 times [2022-04-08 06:00:25,870 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:00:25,870 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [612774302] [2022-04-08 06:00:25,870 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:00:25,870 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:00:25,879 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:00:25,879 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1830516537] [2022-04-08 06:00:25,879 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:00:25,879 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:00:25,879 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:00:25,880 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:00:25,881 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-04-08 06:00:25,929 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:00:25,929 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:00:25,930 INFO L263 TraceCheckSpWp]: Trace formula consists of 219 conjuncts, 61 conjunts are in the unsatisfiable core [2022-04-08 06:00:25,938 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:00:25,939 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:00:26,689 INFO L272 TraceCheckUtils]: 0: Hoare triple {17781#true} call ULTIMATE.init(); {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L290 TraceCheckUtils]: 1: Hoare triple {17781#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L290 TraceCheckUtils]: 2: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17781#true} {17781#true} #112#return; {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L272 TraceCheckUtils]: 4: Hoare triple {17781#true} call #t~ret6 := main(); {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L290 TraceCheckUtils]: 5: Hoare triple {17781#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L272 TraceCheckUtils]: 6: Hoare triple {17781#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L290 TraceCheckUtils]: 7: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L290 TraceCheckUtils]: 8: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L290 TraceCheckUtils]: 9: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17781#true} {17781#true} #94#return; {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L290 TraceCheckUtils]: 11: Hoare triple {17781#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L272 TraceCheckUtils]: 12: Hoare triple {17781#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L290 TraceCheckUtils]: 13: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L290 TraceCheckUtils]: 14: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L290 TraceCheckUtils]: 15: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {17781#true} {17781#true} #96#return; {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L272 TraceCheckUtils]: 17: Hoare triple {17781#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:26,690 INFO L290 TraceCheckUtils]: 18: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:26,691 INFO L290 TraceCheckUtils]: 19: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:26,691 INFO L290 TraceCheckUtils]: 20: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:26,691 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17781#true} {17781#true} #98#return; {17781#true} is VALID [2022-04-08 06:00:26,691 INFO L272 TraceCheckUtils]: 22: Hoare triple {17781#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:26,691 INFO L290 TraceCheckUtils]: 23: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:26,691 INFO L290 TraceCheckUtils]: 24: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:26,691 INFO L290 TraceCheckUtils]: 25: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:26,691 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {17781#true} {17781#true} #100#return; {17781#true} is VALID [2022-04-08 06:00:26,691 INFO L290 TraceCheckUtils]: 27: Hoare triple {17781#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17867#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,691 INFO L290 TraceCheckUtils]: 28: Hoare triple {17867#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {17867#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,692 INFO L290 TraceCheckUtils]: 29: Hoare triple {17867#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17874#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,692 INFO L290 TraceCheckUtils]: 30: Hoare triple {17874#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {17874#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,692 INFO L290 TraceCheckUtils]: 31: Hoare triple {17874#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,693 INFO L290 TraceCheckUtils]: 32: Hoare triple {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,693 INFO L272 TraceCheckUtils]: 33: Hoare triple {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:26,693 INFO L290 TraceCheckUtils]: 34: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:26,693 INFO L290 TraceCheckUtils]: 35: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:26,693 INFO L290 TraceCheckUtils]: 36: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:26,693 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {17781#true} {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,693 INFO L272 TraceCheckUtils]: 38: Hoare triple {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:26,693 INFO L290 TraceCheckUtils]: 39: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:26,694 INFO L290 TraceCheckUtils]: 40: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:26,694 INFO L290 TraceCheckUtils]: 41: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:26,694 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {17781#true} {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,694 INFO L272 TraceCheckUtils]: 43: Hoare triple {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:26,694 INFO L290 TraceCheckUtils]: 44: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:26,694 INFO L290 TraceCheckUtils]: 45: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:26,694 INFO L290 TraceCheckUtils]: 46: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:26,695 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {17781#true} {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,695 INFO L272 TraceCheckUtils]: 48: Hoare triple {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:26,695 INFO L290 TraceCheckUtils]: 49: Hoare triple {17781#true} ~cond := #in~cond; {17936#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:00:26,695 INFO L290 TraceCheckUtils]: 50: Hoare triple {17936#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:00:26,695 INFO L290 TraceCheckUtils]: 51: Hoare triple {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:00:26,696 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,696 INFO L290 TraceCheckUtils]: 53: Hoare triple {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,697 INFO L290 TraceCheckUtils]: 54: Hoare triple {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,697 INFO L272 TraceCheckUtils]: 55: Hoare triple {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:26,697 INFO L290 TraceCheckUtils]: 56: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:26,697 INFO L290 TraceCheckUtils]: 57: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:26,697 INFO L290 TraceCheckUtils]: 58: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:26,697 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {17781#true} {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,697 INFO L272 TraceCheckUtils]: 60: Hoare triple {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:26,697 INFO L290 TraceCheckUtils]: 61: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:26,697 INFO L290 TraceCheckUtils]: 62: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:26,697 INFO L290 TraceCheckUtils]: 63: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:26,698 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {17781#true} {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,698 INFO L272 TraceCheckUtils]: 65: Hoare triple {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:26,698 INFO L290 TraceCheckUtils]: 66: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:26,698 INFO L290 TraceCheckUtils]: 67: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:26,698 INFO L290 TraceCheckUtils]: 68: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:26,699 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {17781#true} {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,699 INFO L272 TraceCheckUtils]: 70: Hoare triple {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:26,699 INFO L290 TraceCheckUtils]: 71: Hoare triple {17781#true} ~cond := #in~cond; {17936#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:00:26,699 INFO L290 TraceCheckUtils]: 72: Hoare triple {17936#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:00:26,699 INFO L290 TraceCheckUtils]: 73: Hoare triple {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:00:26,700 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,700 INFO L290 TraceCheckUtils]: 75: Hoare triple {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,701 INFO L290 TraceCheckUtils]: 76: Hoare triple {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {18020#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,701 INFO L290 TraceCheckUtils]: 77: Hoare triple {18020#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !false; {18020#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,701 INFO L290 TraceCheckUtils]: 78: Hoare triple {18020#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {18020#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 06:00:26,702 INFO L290 TraceCheckUtils]: 79: Hoare triple {18020#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18030#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~y~0))) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-08 06:00:26,702 INFO L290 TraceCheckUtils]: 80: Hoare triple {18030#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~y~0))) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !false; {18030#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~y~0))) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-08 06:00:26,702 INFO L290 TraceCheckUtils]: 81: Hoare triple {18030#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~y~0))) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !(0 != ~b~0); {18037#(and (= main_~p~0 0) (= (+ main_~x~0 (* (- 2) main_~y~0)) 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-08 06:00:26,703 INFO L272 TraceCheckUtils]: 82: Hoare triple {18037#(and (= main_~p~0 0) (= (+ main_~x~0 (* (- 2) main_~y~0)) 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {18041#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:00:26,703 INFO L290 TraceCheckUtils]: 83: Hoare triple {18041#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18045#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:00:26,703 INFO L290 TraceCheckUtils]: 84: Hoare triple {18045#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17782#false} is VALID [2022-04-08 06:00:26,703 INFO L290 TraceCheckUtils]: 85: Hoare triple {17782#false} assume !false; {17782#false} is VALID [2022-04-08 06:00:26,704 INFO L134 CoverageAnalysis]: Checked inductivity of 162 backedges. 41 proven. 21 refuted. 0 times theorem prover too weak. 100 trivial. 0 not checked. [2022-04-08 06:00:26,704 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:00:56,708 INFO L290 TraceCheckUtils]: 85: Hoare triple {17782#false} assume !false; {17782#false} is VALID [2022-04-08 06:00:56,709 INFO L290 TraceCheckUtils]: 84: Hoare triple {18045#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17782#false} is VALID [2022-04-08 06:00:56,709 INFO L290 TraceCheckUtils]: 83: Hoare triple {18041#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18045#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:00:56,710 INFO L272 TraceCheckUtils]: 82: Hoare triple {18061#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {18041#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:00:56,710 INFO L290 TraceCheckUtils]: 81: Hoare triple {18065#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {18061#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 06:00:56,710 INFO L290 TraceCheckUtils]: 80: Hoare triple {18065#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {18065#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 06:00:56,810 INFO L290 TraceCheckUtils]: 79: Hoare triple {18072#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18065#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 06:00:56,811 INFO L290 TraceCheckUtils]: 78: Hoare triple {18072#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {18072#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:00:56,812 INFO L290 TraceCheckUtils]: 77: Hoare triple {18072#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {18072#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:00:56,918 INFO L290 TraceCheckUtils]: 76: Hoare triple {18082#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {18072#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:00:56,919 INFO L290 TraceCheckUtils]: 75: Hoare triple {18082#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {18082#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:00:56,920 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #108#return; {18082#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:00:56,920 INFO L290 TraceCheckUtils]: 73: Hoare triple {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:00:56,920 INFO L290 TraceCheckUtils]: 72: Hoare triple {18099#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:00:56,920 INFO L290 TraceCheckUtils]: 71: Hoare triple {17781#true} ~cond := #in~cond; {18099#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:00:56,921 INFO L272 TraceCheckUtils]: 70: Hoare triple {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:56,921 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {17781#true} {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #106#return; {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:00:56,921 INFO L290 TraceCheckUtils]: 68: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:56,921 INFO L290 TraceCheckUtils]: 67: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:56,921 INFO L290 TraceCheckUtils]: 66: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:56,921 INFO L272 TraceCheckUtils]: 65: Hoare triple {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:56,922 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {17781#true} {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:00:56,922 INFO L290 TraceCheckUtils]: 63: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:56,922 INFO L290 TraceCheckUtils]: 62: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:56,922 INFO L290 TraceCheckUtils]: 61: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:56,922 INFO L272 TraceCheckUtils]: 60: Hoare triple {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:56,923 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {17781#true} {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:00:56,923 INFO L290 TraceCheckUtils]: 58: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:56,923 INFO L290 TraceCheckUtils]: 57: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:56,923 INFO L290 TraceCheckUtils]: 56: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:56,923 INFO L272 TraceCheckUtils]: 55: Hoare triple {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:56,923 INFO L290 TraceCheckUtils]: 54: Hoare triple {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:00:56,960 INFO L290 TraceCheckUtils]: 53: Hoare triple {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:00:56,961 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {17781#true} {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #108#return; {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-08 06:00:56,961 INFO L290 TraceCheckUtils]: 51: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:56,961 INFO L290 TraceCheckUtils]: 50: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:56,962 INFO L290 TraceCheckUtils]: 49: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:56,962 INFO L272 TraceCheckUtils]: 48: Hoare triple {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:56,962 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {17781#true} {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #106#return; {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-08 06:00:56,962 INFO L290 TraceCheckUtils]: 46: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:56,962 INFO L290 TraceCheckUtils]: 45: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:56,962 INFO L290 TraceCheckUtils]: 44: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:56,963 INFO L272 TraceCheckUtils]: 43: Hoare triple {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:56,992 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {17781#true} {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #104#return; {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-08 06:00:56,992 INFO L290 TraceCheckUtils]: 41: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:56,992 INFO L290 TraceCheckUtils]: 40: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:56,992 INFO L290 TraceCheckUtils]: 39: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:56,992 INFO L272 TraceCheckUtils]: 38: Hoare triple {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:56,993 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {17781#true} {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #102#return; {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-08 06:00:56,993 INFO L290 TraceCheckUtils]: 36: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:56,993 INFO L290 TraceCheckUtils]: 35: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:56,993 INFO L290 TraceCheckUtils]: 34: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:56,993 INFO L272 TraceCheckUtils]: 33: Hoare triple {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:56,993 INFO L290 TraceCheckUtils]: 32: Hoare triple {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !false; {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-08 06:00:56,994 INFO L290 TraceCheckUtils]: 31: Hoare triple {18221#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-08 06:00:56,995 INFO L290 TraceCheckUtils]: 30: Hoare triple {18221#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !false; {18221#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-08 06:00:56,995 INFO L290 TraceCheckUtils]: 29: Hoare triple {18228#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {18221#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-08 06:00:56,995 INFO L290 TraceCheckUtils]: 28: Hoare triple {18228#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {18228#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:00:56,996 INFO L290 TraceCheckUtils]: 27: Hoare triple {17781#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {18228#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:00:56,996 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {17781#true} {17781#true} #100#return; {17781#true} is VALID [2022-04-08 06:00:56,996 INFO L290 TraceCheckUtils]: 25: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:56,996 INFO L290 TraceCheckUtils]: 24: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:56,996 INFO L290 TraceCheckUtils]: 23: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:56,996 INFO L272 TraceCheckUtils]: 22: Hoare triple {17781#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:56,996 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17781#true} {17781#true} #98#return; {17781#true} is VALID [2022-04-08 06:00:56,996 INFO L290 TraceCheckUtils]: 20: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:56,996 INFO L290 TraceCheckUtils]: 19: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:56,996 INFO L290 TraceCheckUtils]: 18: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:56,996 INFO L272 TraceCheckUtils]: 17: Hoare triple {17781#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:56,996 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {17781#true} {17781#true} #96#return; {17781#true} is VALID [2022-04-08 06:00:56,997 INFO L290 TraceCheckUtils]: 15: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:56,997 INFO L290 TraceCheckUtils]: 14: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:56,997 INFO L290 TraceCheckUtils]: 13: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:56,997 INFO L272 TraceCheckUtils]: 12: Hoare triple {17781#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:56,997 INFO L290 TraceCheckUtils]: 11: Hoare triple {17781#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17781#true} is VALID [2022-04-08 06:00:56,997 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17781#true} {17781#true} #94#return; {17781#true} is VALID [2022-04-08 06:00:56,997 INFO L290 TraceCheckUtils]: 9: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:56,997 INFO L290 TraceCheckUtils]: 8: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 06:00:56,997 INFO L290 TraceCheckUtils]: 7: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 06:00:56,997 INFO L272 TraceCheckUtils]: 6: Hoare triple {17781#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {17781#true} is VALID [2022-04-08 06:00:56,997 INFO L290 TraceCheckUtils]: 5: Hoare triple {17781#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {17781#true} is VALID [2022-04-08 06:00:56,997 INFO L272 TraceCheckUtils]: 4: Hoare triple {17781#true} call #t~ret6 := main(); {17781#true} is VALID [2022-04-08 06:00:56,997 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17781#true} {17781#true} #112#return; {17781#true} is VALID [2022-04-08 06:00:56,997 INFO L290 TraceCheckUtils]: 2: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 06:00:56,997 INFO L290 TraceCheckUtils]: 1: Hoare triple {17781#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {17781#true} is VALID [2022-04-08 06:00:56,997 INFO L272 TraceCheckUtils]: 0: Hoare triple {17781#true} call ULTIMATE.init(); {17781#true} is VALID [2022-04-08 06:00:56,998 INFO L134 CoverageAnalysis]: Checked inductivity of 162 backedges. 36 proven. 11 refuted. 0 times theorem prover too weak. 115 trivial. 0 not checked. [2022-04-08 06:00:56,998 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:00:56,998 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [612774302] [2022-04-08 06:00:56,998 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:00:56,998 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1830516537] [2022-04-08 06:00:56,998 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1830516537] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:00:56,998 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:00:56,998 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 14] total 22 [2022-04-08 06:00:56,998 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:00:56,998 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [76200850] [2022-04-08 06:00:56,998 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [76200850] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:00:56,998 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:00:56,999 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 06:00:56,999 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [88089079] [2022-04-08 06:00:56,999 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:00:56,999 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) Word has length 86 [2022-04-08 06:00:56,999 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:00:56,999 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-08 06:00:57,091 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:00:57,091 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 06:00:57,091 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:00:57,091 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 06:00:57,092 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=389, Unknown=0, NotChecked=0, Total=462 [2022-04-08 06:00:57,092 INFO L87 Difference]: Start difference. First operand 265 states and 357 transitions. Second operand has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-08 06:01:00,393 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:01:00,393 INFO L93 Difference]: Finished difference Result 348 states and 475 transitions. [2022-04-08 06:01:00,393 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 06:01:00,393 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) Word has length 86 [2022-04-08 06:01:00,394 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:01:00,394 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-08 06:01:00,395 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 143 transitions. [2022-04-08 06:01:00,395 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-08 06:01:00,397 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 143 transitions. [2022-04-08 06:01:00,397 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 143 transitions. [2022-04-08 06:01:00,551 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 143 edges. 143 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:01:00,558 INFO L225 Difference]: With dead ends: 348 [2022-04-08 06:01:00,558 INFO L226 Difference]: Without dead ends: 345 [2022-04-08 06:01:00,559 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 178 GetRequests, 148 SyntacticMatches, 3 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 121 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=139, Invalid=673, Unknown=0, NotChecked=0, Total=812 [2022-04-08 06:01:00,561 INFO L913 BasicCegarLoop]: 52 mSDtfsCounter, 55 mSDsluCounter, 276 mSDsCounter, 0 mSdLazyCounter, 731 mSolverCounterSat, 59 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 63 SdHoareTripleChecker+Valid, 328 SdHoareTripleChecker+Invalid, 790 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 59 IncrementalHoareTripleChecker+Valid, 731 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:01:00,561 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [63 Valid, 328 Invalid, 790 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [59 Valid, 731 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-08 06:01:00,561 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 345 states. [2022-04-08 06:01:01,605 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 345 to 330. [2022-04-08 06:01:01,605 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:01:01,606 INFO L82 GeneralOperation]: Start isEquivalent. First operand 345 states. Second operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) [2022-04-08 06:01:01,606 INFO L74 IsIncluded]: Start isIncluded. First operand 345 states. Second operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) [2022-04-08 06:01:01,607 INFO L87 Difference]: Start difference. First operand 345 states. Second operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) [2022-04-08 06:01:01,614 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:01:01,614 INFO L93 Difference]: Finished difference Result 345 states and 471 transitions. [2022-04-08 06:01:01,614 INFO L276 IsEmpty]: Start isEmpty. Operand 345 states and 471 transitions. [2022-04-08 06:01:01,615 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:01:01,615 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:01:01,616 INFO L74 IsIncluded]: Start isIncluded. First operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) Second operand 345 states. [2022-04-08 06:01:01,616 INFO L87 Difference]: Start difference. First operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) Second operand 345 states. [2022-04-08 06:01:01,623 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:01:01,623 INFO L93 Difference]: Finished difference Result 345 states and 471 transitions. [2022-04-08 06:01:01,623 INFO L276 IsEmpty]: Start isEmpty. Operand 345 states and 471 transitions. [2022-04-08 06:01:01,624 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:01:01,624 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:01:01,624 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:01:01,624 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:01:01,624 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) [2022-04-08 06:01:01,632 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 330 states to 330 states and 456 transitions. [2022-04-08 06:01:01,632 INFO L78 Accepts]: Start accepts. Automaton has 330 states and 456 transitions. Word has length 86 [2022-04-08 06:01:01,632 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:01:01,632 INFO L478 AbstractCegarLoop]: Abstraction has 330 states and 456 transitions. [2022-04-08 06:01:01,632 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-08 06:01:01,632 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 330 states and 456 transitions. [2022-04-08 06:01:02,552 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 456 edges. 456 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:01:02,552 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 456 transitions. [2022-04-08 06:01:02,553 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-08 06:01:02,553 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:01:02,553 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 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] [2022-04-08 06:01:02,586 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-08 06:01:02,754 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:01:02,754 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:01:02,754 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:01:02,754 INFO L85 PathProgramCache]: Analyzing trace with hash -1455197645, now seen corresponding path program 3 times [2022-04-08 06:01:02,754 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:01:02,755 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [883696182] [2022-04-08 06:01:02,755 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:01:02,755 INFO L85 PathProgramCache]: Analyzing trace with hash -1455197645, now seen corresponding path program 4 times [2022-04-08 06:01:02,755 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:01:02,755 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [943260903] [2022-04-08 06:01:02,755 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:01:02,755 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:01:02,766 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:01:02,767 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1525674348] [2022-04-08 06:01:02,767 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:01:02,767 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:01:02,767 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:01:02,767 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:01:02,771 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-04-08 06:01:02,824 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:01:02,825 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:01:02,826 INFO L263 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 86 conjunts are in the unsatisfiable core [2022-04-08 06:01:02,840 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:01:02,841 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:01:04,350 INFO L272 TraceCheckUtils]: 0: Hoare triple {20378#true} call ULTIMATE.init(); {20378#true} is VALID [2022-04-08 06:01:04,350 INFO L290 TraceCheckUtils]: 1: Hoare triple {20378#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {20378#true} is VALID [2022-04-08 06:01:04,350 INFO L290 TraceCheckUtils]: 2: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:01:04,350 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20378#true} {20378#true} #112#return; {20378#true} is VALID [2022-04-08 06:01:04,350 INFO L272 TraceCheckUtils]: 4: Hoare triple {20378#true} call #t~ret6 := main(); {20378#true} is VALID [2022-04-08 06:01:04,350 INFO L290 TraceCheckUtils]: 5: Hoare triple {20378#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {20378#true} is VALID [2022-04-08 06:01:04,350 INFO L272 TraceCheckUtils]: 6: Hoare triple {20378#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L290 TraceCheckUtils]: 7: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L290 TraceCheckUtils]: 8: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L290 TraceCheckUtils]: 9: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20378#true} {20378#true} #94#return; {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L290 TraceCheckUtils]: 11: Hoare triple {20378#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L272 TraceCheckUtils]: 12: Hoare triple {20378#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L290 TraceCheckUtils]: 13: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L290 TraceCheckUtils]: 14: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L290 TraceCheckUtils]: 15: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {20378#true} {20378#true} #96#return; {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L272 TraceCheckUtils]: 17: Hoare triple {20378#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L290 TraceCheckUtils]: 18: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L290 TraceCheckUtils]: 19: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L290 TraceCheckUtils]: 20: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {20378#true} {20378#true} #98#return; {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L272 TraceCheckUtils]: 22: Hoare triple {20378#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L290 TraceCheckUtils]: 23: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L290 TraceCheckUtils]: 24: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:01:04,351 INFO L290 TraceCheckUtils]: 25: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:01:04,352 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {20378#true} {20378#true} #100#return; {20378#true} is VALID [2022-04-08 06:01:04,353 INFO L290 TraceCheckUtils]: 27: Hoare triple {20378#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {20464#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 06:01:04,353 INFO L290 TraceCheckUtils]: 28: Hoare triple {20464#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {20464#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 06:01:04,353 INFO L290 TraceCheckUtils]: 29: Hoare triple {20464#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {20471#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 06:01:04,354 INFO L290 TraceCheckUtils]: 30: Hoare triple {20471#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {20471#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 06:01:04,354 INFO L290 TraceCheckUtils]: 31: Hoare triple {20471#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {20478#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 06:01:04,355 INFO L290 TraceCheckUtils]: 32: Hoare triple {20478#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {20482#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 06:01:04,356 INFO L290 TraceCheckUtils]: 33: Hoare triple {20482#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {20482#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 06:01:04,356 INFO L290 TraceCheckUtils]: 34: Hoare triple {20482#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {20489#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 06:01:04,357 INFO L290 TraceCheckUtils]: 35: Hoare triple {20489#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {20489#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 06:01:04,357 INFO L290 TraceCheckUtils]: 36: Hoare triple {20489#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 06:01:04,358 INFO L290 TraceCheckUtils]: 37: Hoare triple {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !false; {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 06:01:04,358 INFO L272 TraceCheckUtils]: 38: Hoare triple {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:01:04,358 INFO L290 TraceCheckUtils]: 39: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:01:04,358 INFO L290 TraceCheckUtils]: 40: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:01:04,358 INFO L290 TraceCheckUtils]: 41: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:01:04,359 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {20378#true} {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #102#return; {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 06:01:04,359 INFO L272 TraceCheckUtils]: 43: Hoare triple {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:01:04,359 INFO L290 TraceCheckUtils]: 44: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:01:04,359 INFO L290 TraceCheckUtils]: 45: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:01:04,359 INFO L290 TraceCheckUtils]: 46: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:01:04,360 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {20378#true} {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #104#return; {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 06:01:04,360 INFO L272 TraceCheckUtils]: 48: Hoare triple {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:01:04,360 INFO L290 TraceCheckUtils]: 49: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:01:04,360 INFO L290 TraceCheckUtils]: 50: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:01:04,360 INFO L290 TraceCheckUtils]: 51: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:01:04,361 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {20378#true} {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #106#return; {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 06:01:04,361 INFO L272 TraceCheckUtils]: 53: Hoare triple {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:01:04,361 INFO L290 TraceCheckUtils]: 54: Hoare triple {20378#true} ~cond := #in~cond; {20551#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:01:04,361 INFO L290 TraceCheckUtils]: 55: Hoare triple {20551#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:04,362 INFO L290 TraceCheckUtils]: 56: Hoare triple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:04,362 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #108#return; {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 06:01:04,363 INFO L290 TraceCheckUtils]: 58: Hoare triple {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {20565#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-08 06:01:04,363 INFO L290 TraceCheckUtils]: 59: Hoare triple {20565#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} assume !false; {20565#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-08 06:01:04,363 INFO L272 TraceCheckUtils]: 60: Hoare triple {20565#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:01:04,364 INFO L290 TraceCheckUtils]: 61: Hoare triple {20378#true} ~cond := #in~cond; {20551#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:01:04,364 INFO L290 TraceCheckUtils]: 62: Hoare triple {20551#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:04,364 INFO L290 TraceCheckUtils]: 63: Hoare triple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:04,365 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} {20565#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #102#return; {20584#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:01:04,365 INFO L272 TraceCheckUtils]: 65: Hoare triple {20584#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:01:04,366 INFO L290 TraceCheckUtils]: 66: Hoare triple {20378#true} ~cond := #in~cond; {20551#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:01:04,366 INFO L290 TraceCheckUtils]: 67: Hoare triple {20551#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:04,366 INFO L290 TraceCheckUtils]: 68: Hoare triple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:04,367 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} {20584#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:01:04,367 INFO L272 TraceCheckUtils]: 70: Hoare triple {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:01:04,367 INFO L290 TraceCheckUtils]: 71: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:01:04,367 INFO L290 TraceCheckUtils]: 72: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:01:04,367 INFO L290 TraceCheckUtils]: 73: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:01:04,368 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {20378#true} {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #106#return; {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:01:04,368 INFO L272 TraceCheckUtils]: 75: Hoare triple {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:01:04,368 INFO L290 TraceCheckUtils]: 76: Hoare triple {20378#true} ~cond := #in~cond; {20551#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:01:04,369 INFO L290 TraceCheckUtils]: 77: Hoare triple {20551#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:04,369 INFO L290 TraceCheckUtils]: 78: Hoare triple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:01:04,370 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #108#return; {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:01:04,370 INFO L290 TraceCheckUtils]: 80: Hoare triple {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:01:04,372 INFO L290 TraceCheckUtils]: 81: Hoare triple {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {20637#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= main_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:01:04,372 INFO L290 TraceCheckUtils]: 82: Hoare triple {20637#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= main_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {20637#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= main_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:01:04,373 INFO L290 TraceCheckUtils]: 83: Hoare triple {20637#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= main_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {20644#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (= main_~b~0 main_~x~0) (= main_~k~0 2) (< main_~c~0 main_~b~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:01:04,374 INFO L290 TraceCheckUtils]: 84: Hoare triple {20644#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (= main_~b~0 main_~x~0) (= main_~k~0 2) (< main_~c~0 main_~b~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {20648#(and (= main_~r~0 0) (< main_~y~0 (* main_~a~0 3)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-08 06:01:04,375 INFO L290 TraceCheckUtils]: 85: Hoare triple {20648#(and (= main_~r~0 0) (< main_~y~0 (* main_~a~0 3)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !false; {20648#(and (= main_~r~0 0) (< main_~y~0 (* main_~a~0 3)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-08 06:01:04,375 INFO L290 TraceCheckUtils]: 86: Hoare triple {20648#(and (= main_~r~0 0) (< main_~y~0 (* main_~a~0 3)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !(0 != ~b~0); {20655#(and (= main_~r~0 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (* main_~a~0 2) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-08 06:01:04,377 INFO L272 TraceCheckUtils]: 87: Hoare triple {20655#(and (= main_~r~0 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (* main_~a~0 2) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {20659#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:01:04,377 INFO L290 TraceCheckUtils]: 88: Hoare triple {20659#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {20663#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:01:04,378 INFO L290 TraceCheckUtils]: 89: Hoare triple {20663#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {20379#false} is VALID [2022-04-08 06:01:04,378 INFO L290 TraceCheckUtils]: 90: Hoare triple {20379#false} assume !false; {20379#false} is VALID [2022-04-08 06:01:04,378 INFO L134 CoverageAnalysis]: Checked inductivity of 171 backedges. 51 proven. 32 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-08 06:01:04,378 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:02:20,265 INFO L290 TraceCheckUtils]: 90: Hoare triple {20379#false} assume !false; {20379#false} is VALID [2022-04-08 06:02:20,266 INFO L290 TraceCheckUtils]: 89: Hoare triple {20663#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {20379#false} is VALID [2022-04-08 06:02:20,266 INFO L290 TraceCheckUtils]: 88: Hoare triple {20659#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {20663#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:02:20,267 INFO L272 TraceCheckUtils]: 87: Hoare triple {20679#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {20659#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:02:20,267 INFO L290 TraceCheckUtils]: 86: Hoare triple {20683#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {20679#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 06:02:20,267 INFO L290 TraceCheckUtils]: 85: Hoare triple {20683#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {20683#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 06:02:20,548 INFO L290 TraceCheckUtils]: 84: Hoare triple {20690#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {20683#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 06:02:20,549 INFO L290 TraceCheckUtils]: 83: Hoare triple {20694#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {20690#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:02:20,549 INFO L290 TraceCheckUtils]: 82: Hoare triple {20694#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {20694#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:02:21,325 INFO L290 TraceCheckUtils]: 81: Hoare triple {20701#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {20694#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:02:21,326 INFO L290 TraceCheckUtils]: 80: Hoare triple {20701#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {20701#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:02:21,327 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} {20708#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #108#return; {20701#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:02:21,327 INFO L290 TraceCheckUtils]: 78: Hoare triple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:21,327 INFO L290 TraceCheckUtils]: 77: Hoare triple {20718#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:21,328 INFO L290 TraceCheckUtils]: 76: Hoare triple {20378#true} ~cond := #in~cond; {20718#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:02:21,328 INFO L272 TraceCheckUtils]: 75: Hoare triple {20708#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:02:21,328 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {20378#true} {20708#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #106#return; {20708#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:02:21,328 INFO L290 TraceCheckUtils]: 73: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:02:21,329 INFO L290 TraceCheckUtils]: 72: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:02:21,329 INFO L290 TraceCheckUtils]: 71: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:02:21,329 INFO L272 TraceCheckUtils]: 70: Hoare triple {20708#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:02:21,330 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} {20740#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {20708#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:02:21,330 INFO L290 TraceCheckUtils]: 68: Hoare triple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:21,330 INFO L290 TraceCheckUtils]: 67: Hoare triple {20718#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:21,330 INFO L290 TraceCheckUtils]: 66: Hoare triple {20378#true} ~cond := #in~cond; {20718#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:02:21,331 INFO L272 TraceCheckUtils]: 65: Hoare triple {20740#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:02:21,332 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} {20756#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {20740#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:02:21,332 INFO L290 TraceCheckUtils]: 63: Hoare triple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:21,332 INFO L290 TraceCheckUtils]: 62: Hoare triple {20718#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:21,333 INFO L290 TraceCheckUtils]: 61: Hoare triple {20378#true} ~cond := #in~cond; {20718#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:02:21,333 INFO L272 TraceCheckUtils]: 60: Hoare triple {20756#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:02:21,333 INFO L290 TraceCheckUtils]: 59: Hoare triple {20756#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {20756#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:02:21,341 INFO L290 TraceCheckUtils]: 58: Hoare triple {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {20756#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:02:21,342 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {20378#true} {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} #108#return; {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} is VALID [2022-04-08 06:02:21,343 INFO L290 TraceCheckUtils]: 56: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:02:21,343 INFO L290 TraceCheckUtils]: 55: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:02:21,343 INFO L290 TraceCheckUtils]: 54: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:02:21,343 INFO L272 TraceCheckUtils]: 53: Hoare triple {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:02:21,343 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {20378#true} {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} #106#return; {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} is VALID [2022-04-08 06:02:21,344 INFO L290 TraceCheckUtils]: 51: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:02:21,344 INFO L290 TraceCheckUtils]: 50: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:02:21,344 INFO L290 TraceCheckUtils]: 49: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:02:21,344 INFO L272 TraceCheckUtils]: 48: Hoare triple {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:02:21,344 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {20378#true} {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} #104#return; {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} is VALID [2022-04-08 06:02:21,344 INFO L290 TraceCheckUtils]: 46: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:02:21,345 INFO L290 TraceCheckUtils]: 45: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:02:21,345 INFO L290 TraceCheckUtils]: 44: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:02:21,345 INFO L272 TraceCheckUtils]: 43: Hoare triple {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:02:21,345 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {20378#true} {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} #102#return; {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} is VALID [2022-04-08 06:02:21,345 INFO L290 TraceCheckUtils]: 41: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:02:21,346 INFO L290 TraceCheckUtils]: 40: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:02:21,346 INFO L290 TraceCheckUtils]: 39: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:02:21,346 INFO L272 TraceCheckUtils]: 38: Hoare triple {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:02:21,346 INFO L290 TraceCheckUtils]: 37: Hoare triple {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} assume !false; {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} is VALID [2022-04-08 06:02:21,347 INFO L290 TraceCheckUtils]: 36: Hoare triple {20842#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} is VALID [2022-04-08 06:02:21,348 INFO L290 TraceCheckUtils]: 35: Hoare triple {20842#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !false; {20842#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-08 06:02:21,348 INFO L290 TraceCheckUtils]: 34: Hoare triple {20378#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {20842#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-08 06:02:21,349 INFO L290 TraceCheckUtils]: 33: Hoare triple {20378#true} assume !false; {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L290 TraceCheckUtils]: 32: Hoare triple {20378#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L290 TraceCheckUtils]: 31: Hoare triple {20378#true} assume !(~c~0 >= ~b~0); {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L290 TraceCheckUtils]: 30: Hoare triple {20378#true} assume !false; {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L290 TraceCheckUtils]: 29: Hoare triple {20378#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L290 TraceCheckUtils]: 28: Hoare triple {20378#true} assume !false; {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L290 TraceCheckUtils]: 27: Hoare triple {20378#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {20378#true} {20378#true} #100#return; {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L290 TraceCheckUtils]: 25: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L290 TraceCheckUtils]: 24: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L290 TraceCheckUtils]: 23: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L272 TraceCheckUtils]: 22: Hoare triple {20378#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {20378#true} {20378#true} #98#return; {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L290 TraceCheckUtils]: 20: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L290 TraceCheckUtils]: 19: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L290 TraceCheckUtils]: 18: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L272 TraceCheckUtils]: 17: Hoare triple {20378#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {20378#true} {20378#true} #96#return; {20378#true} is VALID [2022-04-08 06:02:21,349 INFO L290 TraceCheckUtils]: 15: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:02:21,350 INFO L290 TraceCheckUtils]: 14: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:02:21,350 INFO L290 TraceCheckUtils]: 13: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:02:21,350 INFO L272 TraceCheckUtils]: 12: Hoare triple {20378#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:02:21,350 INFO L290 TraceCheckUtils]: 11: Hoare triple {20378#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {20378#true} is VALID [2022-04-08 06:02:21,350 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20378#true} {20378#true} #94#return; {20378#true} is VALID [2022-04-08 06:02:21,350 INFO L290 TraceCheckUtils]: 9: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:02:21,350 INFO L290 TraceCheckUtils]: 8: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 06:02:21,350 INFO L290 TraceCheckUtils]: 7: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 06:02:21,350 INFO L272 TraceCheckUtils]: 6: Hoare triple {20378#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {20378#true} is VALID [2022-04-08 06:02:21,350 INFO L290 TraceCheckUtils]: 5: Hoare triple {20378#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {20378#true} is VALID [2022-04-08 06:02:21,350 INFO L272 TraceCheckUtils]: 4: Hoare triple {20378#true} call #t~ret6 := main(); {20378#true} is VALID [2022-04-08 06:02:21,350 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20378#true} {20378#true} #112#return; {20378#true} is VALID [2022-04-08 06:02:21,350 INFO L290 TraceCheckUtils]: 2: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 06:02:21,350 INFO L290 TraceCheckUtils]: 1: Hoare triple {20378#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {20378#true} is VALID [2022-04-08 06:02:21,350 INFO L272 TraceCheckUtils]: 0: Hoare triple {20378#true} call ULTIMATE.init(); {20378#true} is VALID [2022-04-08 06:02:21,351 INFO L134 CoverageAnalysis]: Checked inductivity of 171 backedges. 61 proven. 17 refuted. 0 times theorem prover too weak. 93 trivial. 0 not checked. [2022-04-08 06:02:21,351 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:02:21,351 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [943260903] [2022-04-08 06:02:21,351 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:02:21,351 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1525674348] [2022-04-08 06:02:21,351 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1525674348] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:02:21,351 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:02:21,351 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 16] total 30 [2022-04-08 06:02:21,351 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:02:21,351 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [883696182] [2022-04-08 06:02:21,352 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [883696182] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:02:21,352 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:02:21,352 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [19] imperfect sequences [] total 19 [2022-04-08 06:02:21,352 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [306778900] [2022-04-08 06:02:21,352 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:02:21,352 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 17 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) Word has length 91 [2022-04-08 06:02:21,352 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:02:21,352 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 17 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 06:02:21,418 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:21,419 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-08 06:02:21,419 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:21,419 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-08 06:02:21,420 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=142, Invalid=728, Unknown=0, NotChecked=0, Total=870 [2022-04-08 06:02:21,420 INFO L87 Difference]: Start difference. First operand 330 states and 456 transitions. Second operand has 19 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 17 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 06:02:28,033 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:28,034 INFO L93 Difference]: Finished difference Result 422 states and 582 transitions. [2022-04-08 06:02:28,034 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-08 06:02:28,034 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 17 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) Word has length 91 [2022-04-08 06:02:28,034 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:02:28,034 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 17 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 06:02:28,053 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 175 transitions. [2022-04-08 06:02:28,054 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 17 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 06:02:28,055 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 175 transitions. [2022-04-08 06:02:28,055 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 175 transitions. [2022-04-08 06:02:28,278 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 175 edges. 175 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:28,289 INFO L225 Difference]: With dead ends: 422 [2022-04-08 06:02:28,289 INFO L226 Difference]: Without dead ends: 419 [2022-04-08 06:02:28,289 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 189 GetRequests, 150 SyntacticMatches, 3 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 307 ImplicationChecksByTransitivity, 4.3s TimeCoverageRelationStatistics Valid=230, Invalid=1176, Unknown=0, NotChecked=0, Total=1406 [2022-04-08 06:02:28,290 INFO L913 BasicCegarLoop]: 59 mSDtfsCounter, 65 mSDsluCounter, 418 mSDsCounter, 0 mSdLazyCounter, 1295 mSolverCounterSat, 48 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 83 SdHoareTripleChecker+Valid, 477 SdHoareTripleChecker+Invalid, 1343 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 48 IncrementalHoareTripleChecker+Valid, 1295 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.9s IncrementalHoareTripleChecker+Time [2022-04-08 06:02:28,291 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [83 Valid, 477 Invalid, 1343 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [48 Valid, 1295 Invalid, 0 Unknown, 0 Unchecked, 1.9s Time] [2022-04-08 06:02:28,291 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 419 states. [2022-04-08 06:02:29,476 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 419 to 399. [2022-04-08 06:02:29,476 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:02:29,477 INFO L82 GeneralOperation]: Start isEquivalent. First operand 419 states. Second operand has 399 states, 228 states have (on average 1.2017543859649122) internal successors, (274), 229 states have internal predecessors, (274), 143 states have call successors, (143), 28 states have call predecessors, (143), 27 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-08 06:02:29,477 INFO L74 IsIncluded]: Start isIncluded. First operand 419 states. Second operand has 399 states, 228 states have (on average 1.2017543859649122) internal successors, (274), 229 states have internal predecessors, (274), 143 states have call successors, (143), 28 states have call predecessors, (143), 27 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-08 06:02:29,477 INFO L87 Difference]: Start difference. First operand 419 states. Second operand has 399 states, 228 states have (on average 1.2017543859649122) internal successors, (274), 229 states have internal predecessors, (274), 143 states have call successors, (143), 28 states have call predecessors, (143), 27 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-08 06:02:29,487 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:29,487 INFO L93 Difference]: Finished difference Result 419 states and 578 transitions. [2022-04-08 06:02:29,487 INFO L276 IsEmpty]: Start isEmpty. Operand 419 states and 578 transitions. [2022-04-08 06:02:29,488 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:29,488 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:29,489 INFO L74 IsIncluded]: Start isIncluded. First operand has 399 states, 228 states have (on average 1.2017543859649122) internal successors, (274), 229 states have internal predecessors, (274), 143 states have call successors, (143), 28 states have call predecessors, (143), 27 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) Second operand 419 states. [2022-04-08 06:02:29,489 INFO L87 Difference]: Start difference. First operand has 399 states, 228 states have (on average 1.2017543859649122) internal successors, (274), 229 states have internal predecessors, (274), 143 states have call successors, (143), 28 states have call predecessors, (143), 27 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) Second operand 419 states. [2022-04-08 06:02:29,498 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:02:29,498 INFO L93 Difference]: Finished difference Result 419 states and 578 transitions. [2022-04-08 06:02:29,498 INFO L276 IsEmpty]: Start isEmpty. Operand 419 states and 578 transitions. [2022-04-08 06:02:29,499 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:02:29,500 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:02:29,500 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:02:29,500 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:02:29,500 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 399 states, 228 states have (on average 1.2017543859649122) internal successors, (274), 229 states have internal predecessors, (274), 143 states have call successors, (143), 28 states have call predecessors, (143), 27 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-08 06:02:29,510 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 399 states to 399 states and 558 transitions. [2022-04-08 06:02:29,510 INFO L78 Accepts]: Start accepts. Automaton has 399 states and 558 transitions. Word has length 91 [2022-04-08 06:02:29,510 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:02:29,510 INFO L478 AbstractCegarLoop]: Abstraction has 399 states and 558 transitions. [2022-04-08 06:02:29,510 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 17 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 06:02:29,511 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 399 states and 558 transitions. [2022-04-08 06:02:30,710 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 558 edges. 558 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:02:30,711 INFO L276 IsEmpty]: Start isEmpty. Operand 399 states and 558 transitions. [2022-04-08 06:02:30,727 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 103 [2022-04-08 06:02:30,727 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:02:30,727 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 5, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:02:30,754 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-08 06:02:30,944 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-08 06:02:30,944 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:02:30,944 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:02:30,944 INFO L85 PathProgramCache]: Analyzing trace with hash -100199667, now seen corresponding path program 7 times [2022-04-08 06:02:30,945 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:02:30,945 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [952389086] [2022-04-08 06:02:30,945 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:02:30,945 INFO L85 PathProgramCache]: Analyzing trace with hash -100199667, now seen corresponding path program 8 times [2022-04-08 06:02:30,945 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:02:30,945 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2065908099] [2022-04-08 06:02:30,945 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:02:30,945 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:02:30,956 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:02:30,956 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [863766264] [2022-04-08 06:02:30,956 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:02:30,956 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:02:30,956 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:02:30,961 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:02:30,961 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-08 06:02:31,018 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:02:31,018 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:02:31,020 INFO L263 TraceCheckSpWp]: Trace formula consists of 266 conjuncts, 96 conjunts are in the unsatisfiable core [2022-04-08 06:02:31,036 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:02:31,038 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:02:44,791 INFO L272 TraceCheckUtils]: 0: Hoare triple {23449#true} call ULTIMATE.init(); {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L290 TraceCheckUtils]: 1: Hoare triple {23449#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L290 TraceCheckUtils]: 2: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23449#true} {23449#true} #112#return; {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L272 TraceCheckUtils]: 4: Hoare triple {23449#true} call #t~ret6 := main(); {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L290 TraceCheckUtils]: 5: Hoare triple {23449#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L272 TraceCheckUtils]: 6: Hoare triple {23449#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L290 TraceCheckUtils]: 7: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L290 TraceCheckUtils]: 8: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L290 TraceCheckUtils]: 9: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23449#true} {23449#true} #94#return; {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L290 TraceCheckUtils]: 11: Hoare triple {23449#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L272 TraceCheckUtils]: 12: Hoare triple {23449#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L290 TraceCheckUtils]: 13: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L290 TraceCheckUtils]: 14: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L290 TraceCheckUtils]: 15: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {23449#true} {23449#true} #96#return; {23449#true} is VALID [2022-04-08 06:02:44,793 INFO L272 TraceCheckUtils]: 17: Hoare triple {23449#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:02:44,794 INFO L290 TraceCheckUtils]: 18: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:02:44,794 INFO L290 TraceCheckUtils]: 19: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:02:44,794 INFO L290 TraceCheckUtils]: 20: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:02:44,794 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {23449#true} {23449#true} #98#return; {23449#true} is VALID [2022-04-08 06:02:44,794 INFO L272 TraceCheckUtils]: 22: Hoare triple {23449#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:02:44,794 INFO L290 TraceCheckUtils]: 23: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:02:44,794 INFO L290 TraceCheckUtils]: 24: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:02:44,794 INFO L290 TraceCheckUtils]: 25: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:02:44,794 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {23449#true} {23449#true} #100#return; {23449#true} is VALID [2022-04-08 06:02:44,794 INFO L290 TraceCheckUtils]: 27: Hoare triple {23449#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {23535#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,795 INFO L290 TraceCheckUtils]: 28: Hoare triple {23535#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {23535#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,795 INFO L290 TraceCheckUtils]: 29: Hoare triple {23535#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23542#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,795 INFO L290 TraceCheckUtils]: 30: Hoare triple {23542#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {23542#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,795 INFO L290 TraceCheckUtils]: 31: Hoare triple {23542#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23549#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,796 INFO L290 TraceCheckUtils]: 32: Hoare triple {23549#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {23549#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,796 INFO L272 TraceCheckUtils]: 33: Hoare triple {23549#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:02:44,796 INFO L290 TraceCheckUtils]: 34: Hoare triple {23449#true} ~cond := #in~cond; {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:02:44,796 INFO L290 TraceCheckUtils]: 35: Hoare triple {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:44,796 INFO L290 TraceCheckUtils]: 36: Hoare triple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:44,797 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} {23549#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,797 INFO L272 TraceCheckUtils]: 38: Hoare triple {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:02:44,797 INFO L290 TraceCheckUtils]: 39: Hoare triple {23449#true} ~cond := #in~cond; {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:02:44,797 INFO L290 TraceCheckUtils]: 40: Hoare triple {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:44,798 INFO L290 TraceCheckUtils]: 41: Hoare triple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:44,798 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,798 INFO L272 TraceCheckUtils]: 43: Hoare triple {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:02:44,798 INFO L290 TraceCheckUtils]: 44: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:02:44,798 INFO L290 TraceCheckUtils]: 45: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:02:44,798 INFO L290 TraceCheckUtils]: 46: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:02:44,799 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23449#true} {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,799 INFO L272 TraceCheckUtils]: 48: Hoare triple {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:02:44,799 INFO L290 TraceCheckUtils]: 49: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:02:44,799 INFO L290 TraceCheckUtils]: 50: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:02:44,799 INFO L290 TraceCheckUtils]: 51: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:02:44,799 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {23449#true} {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,800 INFO L290 TraceCheckUtils]: 53: Hoare triple {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,800 INFO L290 TraceCheckUtils]: 54: Hoare triple {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23622#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,800 INFO L290 TraceCheckUtils]: 55: Hoare triple {23622#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {23622#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,800 INFO L290 TraceCheckUtils]: 56: Hoare triple {23622#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {23622#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,801 INFO L290 TraceCheckUtils]: 57: Hoare triple {23622#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23632#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} is VALID [2022-04-08 06:02:44,801 INFO L290 TraceCheckUtils]: 58: Hoare triple {23632#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} assume !false; {23632#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} is VALID [2022-04-08 06:02:44,801 INFO L290 TraceCheckUtils]: 59: Hoare triple {23632#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23639#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} is VALID [2022-04-08 06:02:44,802 INFO L290 TraceCheckUtils]: 60: Hoare triple {23639#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} assume !false; {23639#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} is VALID [2022-04-08 06:02:44,802 INFO L290 TraceCheckUtils]: 61: Hoare triple {23639#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23646#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} is VALID [2022-04-08 06:02:44,802 INFO L290 TraceCheckUtils]: 62: Hoare triple {23646#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} assume !false; {23646#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} is VALID [2022-04-08 06:02:44,802 INFO L272 TraceCheckUtils]: 63: Hoare triple {23646#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:02:44,803 INFO L290 TraceCheckUtils]: 64: Hoare triple {23449#true} ~cond := #in~cond; {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:02:44,803 INFO L290 TraceCheckUtils]: 65: Hoare triple {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:44,803 INFO L290 TraceCheckUtils]: 66: Hoare triple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:44,804 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} {23646#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} #102#return; {23665#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:02:44,804 INFO L272 TraceCheckUtils]: 68: Hoare triple {23665#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:02:44,804 INFO L290 TraceCheckUtils]: 69: Hoare triple {23449#true} ~cond := #in~cond; {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:02:44,804 INFO L290 TraceCheckUtils]: 70: Hoare triple {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:44,804 INFO L290 TraceCheckUtils]: 71: Hoare triple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:44,805 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} {23665#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:02:44,805 INFO L272 TraceCheckUtils]: 73: Hoare triple {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:02:44,805 INFO L290 TraceCheckUtils]: 74: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:02:44,805 INFO L290 TraceCheckUtils]: 75: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:02:44,805 INFO L290 TraceCheckUtils]: 76: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:02:44,805 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {23449#true} {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #106#return; {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:02:44,806 INFO L272 TraceCheckUtils]: 78: Hoare triple {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:02:44,806 INFO L290 TraceCheckUtils]: 79: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:02:44,812 INFO L290 TraceCheckUtils]: 80: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:02:44,813 INFO L290 TraceCheckUtils]: 81: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:02:44,813 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {23449#true} {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #108#return; {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:02:44,814 INFO L290 TraceCheckUtils]: 83: Hoare triple {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:02:44,815 INFO L290 TraceCheckUtils]: 84: Hoare triple {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23718#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:02:44,815 INFO L290 TraceCheckUtils]: 85: Hoare triple {23718#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {23718#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:02:44,816 INFO L290 TraceCheckUtils]: 86: Hoare triple {23718#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {23718#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:02:44,817 INFO L290 TraceCheckUtils]: 87: Hoare triple {23718#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,818 INFO L290 TraceCheckUtils]: 88: Hoare triple {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,818 INFO L290 TraceCheckUtils]: 89: Hoare triple {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,819 INFO L290 TraceCheckUtils]: 90: Hoare triple {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,819 INFO L290 TraceCheckUtils]: 91: Hoare triple {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,819 INFO L290 TraceCheckUtils]: 92: Hoare triple {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 06:02:44,819 INFO L272 TraceCheckUtils]: 93: Hoare triple {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:02:44,830 INFO L290 TraceCheckUtils]: 94: Hoare triple {23449#true} ~cond := #in~cond; {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:02:44,830 INFO L290 TraceCheckUtils]: 95: Hoare triple {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:44,831 INFO L290 TraceCheckUtils]: 96: Hoare triple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:02:44,832 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #102#return; {23759#(and (= (* (- 1) main_~q~0) 1) (= (+ main_~b~0 (* main_~x~0 (* (- 1) main_~q~0))) (* main_~y~0 main_~s~0)) (= main_~x~0 (+ main_~y~0 (* main_~x~0 (* (- 1) main_~q~0)) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-08 06:02:44,833 INFO L272 TraceCheckUtils]: 98: Hoare triple {23759#(and (= (* (- 1) main_~q~0) 1) (= (+ main_~b~0 (* main_~x~0 (* (- 1) main_~q~0))) (* main_~y~0 main_~s~0)) (= main_~x~0 (+ main_~y~0 (* main_~x~0 (* (- 1) main_~q~0)) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23763#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:02:44,833 INFO L290 TraceCheckUtils]: 99: Hoare triple {23763#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23767#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:02:44,833 INFO L290 TraceCheckUtils]: 100: Hoare triple {23767#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {23450#false} is VALID [2022-04-08 06:02:44,833 INFO L290 TraceCheckUtils]: 101: Hoare triple {23450#false} assume !false; {23450#false} is VALID [2022-04-08 06:02:44,833 INFO L134 CoverageAnalysis]: Checked inductivity of 226 backedges. 37 proven. 81 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2022-04-08 06:02:44,834 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:03:46,252 INFO L290 TraceCheckUtils]: 101: Hoare triple {23450#false} assume !false; {23450#false} is VALID [2022-04-08 06:03:46,252 INFO L290 TraceCheckUtils]: 100: Hoare triple {23767#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {23450#false} is VALID [2022-04-08 06:03:46,252 INFO L290 TraceCheckUtils]: 99: Hoare triple {23763#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23767#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:03:46,253 INFO L272 TraceCheckUtils]: 98: Hoare triple {23783#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23763#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:03:46,254 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #102#return; {23783#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 06:03:46,254 INFO L290 TraceCheckUtils]: 96: Hoare triple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:03:46,254 INFO L290 TraceCheckUtils]: 95: Hoare triple {23797#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:03:46,255 INFO L290 TraceCheckUtils]: 94: Hoare triple {23449#true} ~cond := #in~cond; {23797#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:03:46,255 INFO L272 TraceCheckUtils]: 93: Hoare triple {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:03:46,255 INFO L290 TraceCheckUtils]: 92: Hoare triple {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 06:03:46,256 INFO L290 TraceCheckUtils]: 91: Hoare triple {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 06:03:46,256 INFO L290 TraceCheckUtils]: 90: Hoare triple {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 06:03:46,256 INFO L290 TraceCheckUtils]: 89: Hoare triple {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 06:03:46,257 INFO L290 TraceCheckUtils]: 88: Hoare triple {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 06:03:46,300 INFO L290 TraceCheckUtils]: 87: Hoare triple {23819#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 06:03:46,300 INFO L290 TraceCheckUtils]: 86: Hoare triple {23819#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= ~b~0); {23819#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:03:46,301 INFO L290 TraceCheckUtils]: 85: Hoare triple {23819#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {23819#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:03:46,306 INFO L290 TraceCheckUtils]: 84: Hoare triple {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23819#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:03:46,306 INFO L290 TraceCheckUtils]: 83: Hoare triple {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= 2 * ~v~0); {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:03:46,307 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {23449#true} {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #108#return; {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:03:46,307 INFO L290 TraceCheckUtils]: 81: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:03:46,307 INFO L290 TraceCheckUtils]: 80: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:03:46,307 INFO L290 TraceCheckUtils]: 79: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:03:46,307 INFO L272 TraceCheckUtils]: 78: Hoare triple {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:03:46,308 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {23449#true} {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #106#return; {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:03:46,308 INFO L290 TraceCheckUtils]: 76: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:03:46,308 INFO L290 TraceCheckUtils]: 75: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:03:46,308 INFO L290 TraceCheckUtils]: 74: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:03:46,308 INFO L272 TraceCheckUtils]: 73: Hoare triple {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:03:46,309 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {23449#true} {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #104#return; {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:03:46,309 INFO L290 TraceCheckUtils]: 71: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:03:46,309 INFO L290 TraceCheckUtils]: 70: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:03:46,309 INFO L290 TraceCheckUtils]: 69: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:03:46,309 INFO L272 TraceCheckUtils]: 68: Hoare triple {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:03:46,310 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} {23881#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #102#return; {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:03:46,310 INFO L290 TraceCheckUtils]: 66: Hoare triple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:03:46,310 INFO L290 TraceCheckUtils]: 65: Hoare triple {23797#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:03:46,311 INFO L290 TraceCheckUtils]: 64: Hoare triple {23449#true} ~cond := #in~cond; {23797#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:03:46,311 INFO L272 TraceCheckUtils]: 63: Hoare triple {23881#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:03:46,311 INFO L290 TraceCheckUtils]: 62: Hoare triple {23881#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {23881#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:03:46,312 INFO L290 TraceCheckUtils]: 61: Hoare triple {23900#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23881#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:03:46,312 INFO L290 TraceCheckUtils]: 60: Hoare triple {23900#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {23900#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:03:46,314 INFO L290 TraceCheckUtils]: 59: Hoare triple {23449#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23900#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:03:46,314 INFO L290 TraceCheckUtils]: 58: Hoare triple {23449#true} assume !false; {23449#true} is VALID [2022-04-08 06:03:46,314 INFO L290 TraceCheckUtils]: 57: Hoare triple {23449#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23449#true} is VALID [2022-04-08 06:03:46,314 INFO L290 TraceCheckUtils]: 56: Hoare triple {23449#true} assume !(~c~0 >= ~b~0); {23449#true} is VALID [2022-04-08 06:03:46,314 INFO L290 TraceCheckUtils]: 55: Hoare triple {23449#true} assume !false; {23449#true} is VALID [2022-04-08 06:03:46,314 INFO L290 TraceCheckUtils]: 54: Hoare triple {23449#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23449#true} is VALID [2022-04-08 06:03:46,314 INFO L290 TraceCheckUtils]: 53: Hoare triple {23449#true} assume !(~c~0 >= 2 * ~v~0); {23449#true} is VALID [2022-04-08 06:03:46,314 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {23449#true} {23449#true} #108#return; {23449#true} is VALID [2022-04-08 06:03:46,314 INFO L290 TraceCheckUtils]: 51: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:03:46,314 INFO L290 TraceCheckUtils]: 50: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:03:46,314 INFO L290 TraceCheckUtils]: 49: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:03:46,314 INFO L272 TraceCheckUtils]: 48: Hoare triple {23449#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:03:46,314 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23449#true} {23449#true} #106#return; {23449#true} is VALID [2022-04-08 06:03:46,314 INFO L290 TraceCheckUtils]: 46: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:03:46,314 INFO L290 TraceCheckUtils]: 45: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:03:46,314 INFO L290 TraceCheckUtils]: 44: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:03:46,314 INFO L272 TraceCheckUtils]: 43: Hoare triple {23449#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:03:46,314 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {23449#true} {23449#true} #104#return; {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L290 TraceCheckUtils]: 41: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L290 TraceCheckUtils]: 40: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L290 TraceCheckUtils]: 39: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L272 TraceCheckUtils]: 38: Hoare triple {23449#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {23449#true} {23449#true} #102#return; {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L290 TraceCheckUtils]: 36: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L290 TraceCheckUtils]: 35: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L290 TraceCheckUtils]: 34: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L272 TraceCheckUtils]: 33: Hoare triple {23449#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L290 TraceCheckUtils]: 32: Hoare triple {23449#true} assume !false; {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L290 TraceCheckUtils]: 31: Hoare triple {23449#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L290 TraceCheckUtils]: 30: Hoare triple {23449#true} assume !false; {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L290 TraceCheckUtils]: 29: Hoare triple {23449#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L290 TraceCheckUtils]: 28: Hoare triple {23449#true} assume !false; {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L290 TraceCheckUtils]: 27: Hoare triple {23449#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {23449#true} {23449#true} #100#return; {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L290 TraceCheckUtils]: 25: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L290 TraceCheckUtils]: 24: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:03:46,315 INFO L290 TraceCheckUtils]: 23: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L272 TraceCheckUtils]: 22: Hoare triple {23449#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {23449#true} {23449#true} #98#return; {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L290 TraceCheckUtils]: 20: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L290 TraceCheckUtils]: 19: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L290 TraceCheckUtils]: 18: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L272 TraceCheckUtils]: 17: Hoare triple {23449#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {23449#true} {23449#true} #96#return; {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L290 TraceCheckUtils]: 15: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L290 TraceCheckUtils]: 14: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L290 TraceCheckUtils]: 13: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L272 TraceCheckUtils]: 12: Hoare triple {23449#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L290 TraceCheckUtils]: 11: Hoare triple {23449#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23449#true} {23449#true} #94#return; {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L290 TraceCheckUtils]: 9: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L290 TraceCheckUtils]: 8: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L290 TraceCheckUtils]: 7: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L272 TraceCheckUtils]: 6: Hoare triple {23449#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L290 TraceCheckUtils]: 5: Hoare triple {23449#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L272 TraceCheckUtils]: 4: Hoare triple {23449#true} call #t~ret6 := main(); {23449#true} is VALID [2022-04-08 06:03:46,316 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23449#true} {23449#true} #112#return; {23449#true} is VALID [2022-04-08 06:03:46,317 INFO L290 TraceCheckUtils]: 2: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 06:03:46,317 INFO L290 TraceCheckUtils]: 1: Hoare triple {23449#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {23449#true} is VALID [2022-04-08 06:03:46,317 INFO L272 TraceCheckUtils]: 0: Hoare triple {23449#true} call ULTIMATE.init(); {23449#true} is VALID [2022-04-08 06:03:46,317 INFO L134 CoverageAnalysis]: Checked inductivity of 226 backedges. 78 proven. 18 refuted. 0 times theorem prover too weak. 130 trivial. 0 not checked. [2022-04-08 06:03:46,317 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:03:46,317 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2065908099] [2022-04-08 06:03:46,317 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:03:46,317 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [863766264] [2022-04-08 06:03:46,317 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [863766264] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:03:46,317 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:03:46,317 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 12] total 26 [2022-04-08 06:03:46,318 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:03:46,318 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [952389086] [2022-04-08 06:03:46,318 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [952389086] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:03:46,318 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:03:46,318 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [19] imperfect sequences [] total 19 [2022-04-08 06:03:46,318 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1305024052] [2022-04-08 06:03:46,318 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:03:46,318 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 states have internal predecessors, (42), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) Word has length 102 [2022-04-08 06:03:46,318 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:03:46,319 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 states have internal predecessors, (42), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-08 06:03:46,386 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:03:46,387 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-08 06:03:46,387 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:03:46,387 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-08 06:03:46,387 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=106, Invalid=544, Unknown=0, NotChecked=0, Total=650 [2022-04-08 06:03:46,387 INFO L87 Difference]: Start difference. First operand 399 states and 558 transitions. Second operand has 19 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 states have internal predecessors, (42), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-08 06:03:50,872 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:50,873 INFO L93 Difference]: Finished difference Result 474 states and 649 transitions. [2022-04-08 06:03:50,873 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-08 06:03:50,873 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 states have internal predecessors, (42), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) Word has length 102 [2022-04-08 06:03:50,873 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:03:50,873 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 states have internal predecessors, (42), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-08 06:03:50,874 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 163 transitions. [2022-04-08 06:03:50,875 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 states have internal predecessors, (42), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-08 06:03:50,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 163 transitions. [2022-04-08 06:03:50,876 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 163 transitions. [2022-04-08 06:03:51,106 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 163 edges. 163 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:03:51,117 INFO L225 Difference]: With dead ends: 474 [2022-04-08 06:03:51,117 INFO L226 Difference]: Without dead ends: 472 [2022-04-08 06:03:51,118 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 208 GetRequests, 176 SyntacticMatches, 3 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 212 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=146, Invalid=784, Unknown=0, NotChecked=0, Total=930 [2022-04-08 06:03:51,118 INFO L913 BasicCegarLoop]: 49 mSDtfsCounter, 63 mSDsluCounter, 423 mSDsCounter, 0 mSdLazyCounter, 1133 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 89 SdHoareTripleChecker+Valid, 472 SdHoareTripleChecker+Invalid, 1169 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 1133 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.5s IncrementalHoareTripleChecker+Time [2022-04-08 06:03:51,118 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [89 Valid, 472 Invalid, 1169 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 1133 Invalid, 0 Unknown, 0 Unchecked, 1.5s Time] [2022-04-08 06:03:51,118 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 472 states. [2022-04-08 06:03:52,660 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 472 to 454. [2022-04-08 06:03:52,660 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:03:52,661 INFO L82 GeneralOperation]: Start isEquivalent. First operand 472 states. Second operand has 454 states, 262 states have (on average 1.1946564885496183) internal successors, (313), 263 states have internal predecessors, (313), 159 states have call successors, (159), 33 states have call predecessors, (159), 32 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) [2022-04-08 06:03:52,662 INFO L74 IsIncluded]: Start isIncluded. First operand 472 states. Second operand has 454 states, 262 states have (on average 1.1946564885496183) internal successors, (313), 263 states have internal predecessors, (313), 159 states have call successors, (159), 33 states have call predecessors, (159), 32 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) [2022-04-08 06:03:52,662 INFO L87 Difference]: Start difference. First operand 472 states. Second operand has 454 states, 262 states have (on average 1.1946564885496183) internal successors, (313), 263 states have internal predecessors, (313), 159 states have call successors, (159), 33 states have call predecessors, (159), 32 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) [2022-04-08 06:03:52,672 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:52,672 INFO L93 Difference]: Finished difference Result 472 states and 647 transitions. [2022-04-08 06:03:52,672 INFO L276 IsEmpty]: Start isEmpty. Operand 472 states and 647 transitions. [2022-04-08 06:03:52,673 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:03:52,673 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:03:52,674 INFO L74 IsIncluded]: Start isIncluded. First operand has 454 states, 262 states have (on average 1.1946564885496183) internal successors, (313), 263 states have internal predecessors, (313), 159 states have call successors, (159), 33 states have call predecessors, (159), 32 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) Second operand 472 states. [2022-04-08 06:03:52,674 INFO L87 Difference]: Start difference. First operand has 454 states, 262 states have (on average 1.1946564885496183) internal successors, (313), 263 states have internal predecessors, (313), 159 states have call successors, (159), 33 states have call predecessors, (159), 32 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) Second operand 472 states. [2022-04-08 06:03:52,684 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:03:52,684 INFO L93 Difference]: Finished difference Result 472 states and 647 transitions. [2022-04-08 06:03:52,684 INFO L276 IsEmpty]: Start isEmpty. Operand 472 states and 647 transitions. [2022-04-08 06:03:52,685 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:03:52,685 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:03:52,685 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:03:52,685 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:03:52,686 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 454 states, 262 states have (on average 1.1946564885496183) internal successors, (313), 263 states have internal predecessors, (313), 159 states have call successors, (159), 33 states have call predecessors, (159), 32 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) [2022-04-08 06:03:52,697 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 454 states to 454 states and 629 transitions. [2022-04-08 06:03:52,698 INFO L78 Accepts]: Start accepts. Automaton has 454 states and 629 transitions. Word has length 102 [2022-04-08 06:03:52,698 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:03:52,698 INFO L478 AbstractCegarLoop]: Abstraction has 454 states and 629 transitions. [2022-04-08 06:03:52,698 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 states have internal predecessors, (42), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-08 06:03:52,698 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 454 states and 629 transitions. [2022-04-08 06:03:54,202 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 629 edges. 629 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:03:54,202 INFO L276 IsEmpty]: Start isEmpty. Operand 454 states and 629 transitions. [2022-04-08 06:03:54,203 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-08 06:03:54,203 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:03:54,203 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 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] [2022-04-08 06:03:54,219 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-04-08 06:03:54,403 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-08 06:03:54,403 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:03:54,404 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:03:54,404 INFO L85 PathProgramCache]: Analyzing trace with hash -1948981098, now seen corresponding path program 5 times [2022-04-08 06:03:54,404 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:03:54,404 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [211618554] [2022-04-08 06:03:54,404 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:03:54,404 INFO L85 PathProgramCache]: Analyzing trace with hash -1948981098, now seen corresponding path program 6 times [2022-04-08 06:03:54,405 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:03:54,405 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [466617120] [2022-04-08 06:03:54,405 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:03:54,405 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:03:54,414 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:03:54,414 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [408828202] [2022-04-08 06:03:54,415 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:03:54,415 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:03:54,415 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:03:54,425 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:03:54,427 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-04-08 06:03:54,485 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-08 06:03:54,486 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:03:54,487 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 58 conjunts are in the unsatisfiable core [2022-04-08 06:03:54,504 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:03:54,505 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:04:16,984 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 06:04:17,298 INFO L272 TraceCheckUtils]: 0: Hoare triple {26896#true} call ULTIMATE.init(); {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L290 TraceCheckUtils]: 1: Hoare triple {26896#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L290 TraceCheckUtils]: 2: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26896#true} {26896#true} #112#return; {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L272 TraceCheckUtils]: 4: Hoare triple {26896#true} call #t~ret6 := main(); {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L290 TraceCheckUtils]: 5: Hoare triple {26896#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L272 TraceCheckUtils]: 6: Hoare triple {26896#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L290 TraceCheckUtils]: 7: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L290 TraceCheckUtils]: 8: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L290 TraceCheckUtils]: 9: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26896#true} {26896#true} #94#return; {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L290 TraceCheckUtils]: 11: Hoare triple {26896#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L272 TraceCheckUtils]: 12: Hoare triple {26896#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L290 TraceCheckUtils]: 13: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L290 TraceCheckUtils]: 14: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L290 TraceCheckUtils]: 15: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {26896#true} {26896#true} #96#return; {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L272 TraceCheckUtils]: 17: Hoare triple {26896#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:04:17,299 INFO L290 TraceCheckUtils]: 18: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:04:17,300 INFO L290 TraceCheckUtils]: 19: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:04:17,300 INFO L290 TraceCheckUtils]: 20: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:04:17,300 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {26896#true} {26896#true} #98#return; {26896#true} is VALID [2022-04-08 06:04:17,300 INFO L272 TraceCheckUtils]: 22: Hoare triple {26896#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:04:17,300 INFO L290 TraceCheckUtils]: 23: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:04:17,300 INFO L290 TraceCheckUtils]: 24: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:04:17,300 INFO L290 TraceCheckUtils]: 25: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:04:17,300 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {26896#true} {26896#true} #100#return; {26896#true} is VALID [2022-04-08 06:04:17,300 INFO L290 TraceCheckUtils]: 27: Hoare triple {26896#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {26982#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,301 INFO L290 TraceCheckUtils]: 28: Hoare triple {26982#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {26982#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,301 INFO L290 TraceCheckUtils]: 29: Hoare triple {26982#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,301 INFO L290 TraceCheckUtils]: 30: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,302 INFO L290 TraceCheckUtils]: 31: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,302 INFO L290 TraceCheckUtils]: 32: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,302 INFO L272 TraceCheckUtils]: 33: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:04:17,302 INFO L290 TraceCheckUtils]: 34: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:04:17,302 INFO L290 TraceCheckUtils]: 35: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:04:17,302 INFO L290 TraceCheckUtils]: 36: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:04:17,303 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,303 INFO L272 TraceCheckUtils]: 38: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:04:17,303 INFO L290 TraceCheckUtils]: 39: Hoare triple {26896#true} ~cond := #in~cond; {27020#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:04:17,304 INFO L290 TraceCheckUtils]: 40: Hoare triple {27020#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:04:17,304 INFO L290 TraceCheckUtils]: 41: Hoare triple {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:04:17,304 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,305 INFO L272 TraceCheckUtils]: 43: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:04:17,305 INFO L290 TraceCheckUtils]: 44: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:04:17,305 INFO L290 TraceCheckUtils]: 45: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:04:17,305 INFO L290 TraceCheckUtils]: 46: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:04:17,305 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,305 INFO L272 TraceCheckUtils]: 48: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:04:17,305 INFO L290 TraceCheckUtils]: 49: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:04:17,306 INFO L290 TraceCheckUtils]: 50: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:04:17,306 INFO L290 TraceCheckUtils]: 51: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:04:17,306 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,307 INFO L290 TraceCheckUtils]: 53: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,307 INFO L290 TraceCheckUtils]: 54: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,307 INFO L272 TraceCheckUtils]: 55: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:04:17,307 INFO L290 TraceCheckUtils]: 56: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:04:17,307 INFO L290 TraceCheckUtils]: 57: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:04:17,307 INFO L290 TraceCheckUtils]: 58: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:04:17,308 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,308 INFO L272 TraceCheckUtils]: 60: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:04:17,308 INFO L290 TraceCheckUtils]: 61: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:04:17,308 INFO L290 TraceCheckUtils]: 62: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:04:17,308 INFO L290 TraceCheckUtils]: 63: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:04:17,309 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,309 INFO L272 TraceCheckUtils]: 65: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:04:17,309 INFO L290 TraceCheckUtils]: 66: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:04:17,309 INFO L290 TraceCheckUtils]: 67: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:04:17,309 INFO L290 TraceCheckUtils]: 68: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:04:17,310 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,310 INFO L272 TraceCheckUtils]: 70: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:04:17,310 INFO L290 TraceCheckUtils]: 71: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:04:17,310 INFO L290 TraceCheckUtils]: 72: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:04:17,310 INFO L290 TraceCheckUtils]: 73: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:04:17,310 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,311 INFO L290 TraceCheckUtils]: 75: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,311 INFO L290 TraceCheckUtils]: 76: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,311 INFO L272 TraceCheckUtils]: 77: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:04:17,311 INFO L290 TraceCheckUtils]: 78: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:04:17,311 INFO L290 TraceCheckUtils]: 79: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:04:17,311 INFO L290 TraceCheckUtils]: 80: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:04:17,312 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,312 INFO L272 TraceCheckUtils]: 82: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:04:17,312 INFO L290 TraceCheckUtils]: 83: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:04:17,312 INFO L290 TraceCheckUtils]: 84: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:04:17,312 INFO L290 TraceCheckUtils]: 85: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:04:17,313 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,313 INFO L272 TraceCheckUtils]: 87: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:04:17,313 INFO L290 TraceCheckUtils]: 88: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:04:17,313 INFO L290 TraceCheckUtils]: 89: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:04:17,313 INFO L290 TraceCheckUtils]: 90: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:04:17,314 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,314 INFO L272 TraceCheckUtils]: 92: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:04:17,314 INFO L290 TraceCheckUtils]: 93: Hoare triple {26896#true} ~cond := #in~cond; {27020#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:04:17,314 INFO L290 TraceCheckUtils]: 94: Hoare triple {27020#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:04:17,315 INFO L290 TraceCheckUtils]: 95: Hoare triple {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:04:17,316 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {27193#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,316 INFO L290 TraceCheckUtils]: 97: Hoare triple {27193#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {27197#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,319 INFO L290 TraceCheckUtils]: 98: Hoare triple {27197#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {27201#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,319 INFO L290 TraceCheckUtils]: 99: Hoare triple {27201#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} assume !false; {27201#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,320 INFO L290 TraceCheckUtils]: 100: Hoare triple {27201#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {27201#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} is VALID [2022-04-08 06:04:17,322 INFO L290 TraceCheckUtils]: 101: Hoare triple {27201#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {27211#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1) (= (+ (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~b~0) main_~x~0))} is VALID [2022-04-08 06:04:17,322 INFO L290 TraceCheckUtils]: 102: Hoare triple {27211#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1) (= (+ (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~b~0) main_~x~0))} assume !false; {27211#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1) (= (+ (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~b~0) main_~x~0))} is VALID [2022-04-08 06:04:17,323 INFO L290 TraceCheckUtils]: 103: Hoare triple {27211#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1) (= (+ (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~b~0) main_~x~0))} assume !(0 != ~b~0); {27218#(and (= main_~p~0 0) (= (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~x~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1))} is VALID [2022-04-08 06:04:17,325 INFO L272 TraceCheckUtils]: 104: Hoare triple {27218#(and (= main_~p~0 0) (= (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~x~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {27222#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:04:17,326 INFO L290 TraceCheckUtils]: 105: Hoare triple {27222#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {27226#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:04:17,326 INFO L290 TraceCheckUtils]: 106: Hoare triple {27226#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {26897#false} is VALID [2022-04-08 06:04:17,326 INFO L290 TraceCheckUtils]: 107: Hoare triple {26897#false} assume !false; {26897#false} is VALID [2022-04-08 06:04:17,326 INFO L134 CoverageAnalysis]: Checked inductivity of 334 backedges. 57 proven. 33 refuted. 0 times theorem prover too weak. 244 trivial. 0 not checked. [2022-04-08 06:04:17,326 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:04:33,527 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 06:06:00,834 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 06:07:44,759 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 06:08:30,102 INFO L290 TraceCheckUtils]: 107: Hoare triple {26897#false} assume !false; {26897#false} is VALID [2022-04-08 06:08:30,103 INFO L290 TraceCheckUtils]: 106: Hoare triple {27226#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {26897#false} is VALID [2022-04-08 06:08:30,103 INFO L290 TraceCheckUtils]: 105: Hoare triple {27222#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {27226#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:08:30,104 INFO L272 TraceCheckUtils]: 104: Hoare triple {27242#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {27222#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:08:30,104 INFO L290 TraceCheckUtils]: 103: Hoare triple {27246#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {27242#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 06:08:30,123 INFO L290 TraceCheckUtils]: 102: Hoare triple {27246#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {27246#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 06:08:30,529 INFO L290 TraceCheckUtils]: 101: Hoare triple {27253#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {27246#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 06:08:30,530 INFO L290 TraceCheckUtils]: 100: Hoare triple {27253#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {27253#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:08:30,530 INFO L290 TraceCheckUtils]: 99: Hoare triple {27253#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {27253#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:08:30,596 INFO L290 TraceCheckUtils]: 98: Hoare triple {27263#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {27253#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:08:30,597 INFO L290 TraceCheckUtils]: 97: Hoare triple {27267#(or (<= (* main_~v~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {27263#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:08:32,601 WARN L284 TraceCheckUtils]: 96: Hoare quadruple {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #108#return; {27267#(or (<= (* main_~v~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is UNKNOWN [2022-04-08 06:08:32,601 INFO L290 TraceCheckUtils]: 95: Hoare triple {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:08:32,602 INFO L290 TraceCheckUtils]: 94: Hoare triple {27281#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:08:32,602 INFO L290 TraceCheckUtils]: 93: Hoare triple {26896#true} ~cond := #in~cond; {27281#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:08:32,602 INFO L272 TraceCheckUtils]: 92: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:08:32,603 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #106#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,603 INFO L290 TraceCheckUtils]: 90: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:08:32,603 INFO L290 TraceCheckUtils]: 89: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:08:32,603 INFO L290 TraceCheckUtils]: 88: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:08:32,603 INFO L272 TraceCheckUtils]: 87: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:08:32,604 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #104#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,604 INFO L290 TraceCheckUtils]: 85: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:08:32,604 INFO L290 TraceCheckUtils]: 84: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:08:32,604 INFO L290 TraceCheckUtils]: 83: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:08:32,604 INFO L272 TraceCheckUtils]: 82: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:08:32,605 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #102#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,605 INFO L290 TraceCheckUtils]: 80: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:08:32,605 INFO L290 TraceCheckUtils]: 79: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:08:32,605 INFO L290 TraceCheckUtils]: 78: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:08:32,605 INFO L272 TraceCheckUtils]: 77: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:08:32,605 INFO L290 TraceCheckUtils]: 76: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !false; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,606 INFO L290 TraceCheckUtils]: 75: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,607 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #108#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,607 INFO L290 TraceCheckUtils]: 73: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:08:32,607 INFO L290 TraceCheckUtils]: 72: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:08:32,607 INFO L290 TraceCheckUtils]: 71: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:08:32,607 INFO L272 TraceCheckUtils]: 70: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:08:32,608 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #106#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,608 INFO L290 TraceCheckUtils]: 68: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:08:32,608 INFO L290 TraceCheckUtils]: 67: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:08:32,608 INFO L290 TraceCheckUtils]: 66: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:08:32,608 INFO L272 TraceCheckUtils]: 65: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:08:32,609 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #104#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,609 INFO L290 TraceCheckUtils]: 63: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:08:32,609 INFO L290 TraceCheckUtils]: 62: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:08:32,609 INFO L290 TraceCheckUtils]: 61: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:08:32,609 INFO L272 TraceCheckUtils]: 60: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:08:32,609 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #102#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,610 INFO L290 TraceCheckUtils]: 58: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:08:32,610 INFO L290 TraceCheckUtils]: 57: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:08:32,610 INFO L290 TraceCheckUtils]: 56: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:08:32,610 INFO L272 TraceCheckUtils]: 55: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:08:32,610 INFO L290 TraceCheckUtils]: 54: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !false; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,611 INFO L290 TraceCheckUtils]: 53: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,611 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #108#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,611 INFO L290 TraceCheckUtils]: 51: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:08:32,612 INFO L290 TraceCheckUtils]: 50: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:08:32,612 INFO L290 TraceCheckUtils]: 49: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:08:32,612 INFO L272 TraceCheckUtils]: 48: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:08:32,612 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #106#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,612 INFO L290 TraceCheckUtils]: 46: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:08:32,612 INFO L290 TraceCheckUtils]: 45: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:08:32,613 INFO L290 TraceCheckUtils]: 44: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:08:32,613 INFO L272 TraceCheckUtils]: 43: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:08:32,614 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #104#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,614 INFO L290 TraceCheckUtils]: 41: Hoare triple {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:08:32,614 INFO L290 TraceCheckUtils]: 40: Hoare triple {27281#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:08:32,614 INFO L290 TraceCheckUtils]: 39: Hoare triple {26896#true} ~cond := #in~cond; {27281#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:08:32,615 INFO L272 TraceCheckUtils]: 38: Hoare triple {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:08:32,615 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {26896#true} {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #102#return; {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,615 INFO L290 TraceCheckUtils]: 36: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:08:32,615 INFO L290 TraceCheckUtils]: 35: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:08:32,615 INFO L290 TraceCheckUtils]: 34: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:08:32,615 INFO L272 TraceCheckUtils]: 33: Hoare triple {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:08:32,616 INFO L290 TraceCheckUtils]: 32: Hoare triple {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !false; {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,617 INFO L290 TraceCheckUtils]: 31: Hoare triple {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,617 INFO L290 TraceCheckUtils]: 30: Hoare triple {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !false; {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,618 INFO L290 TraceCheckUtils]: 29: Hoare triple {27475#(or (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~a~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) main_~b~0 (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 06:08:32,618 INFO L290 TraceCheckUtils]: 28: Hoare triple {27475#(or (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~a~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) main_~b~0 (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {27475#(or (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~a~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) main_~b~0 (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:08:32,620 INFO L290 TraceCheckUtils]: 27: Hoare triple {26896#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27475#(or (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~a~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) main_~b~0 (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:08:32,620 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {26896#true} {26896#true} #100#return; {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L290 TraceCheckUtils]: 25: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L290 TraceCheckUtils]: 24: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L290 TraceCheckUtils]: 23: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L272 TraceCheckUtils]: 22: Hoare triple {26896#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {26896#true} {26896#true} #98#return; {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L290 TraceCheckUtils]: 20: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L290 TraceCheckUtils]: 19: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L290 TraceCheckUtils]: 18: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L272 TraceCheckUtils]: 17: Hoare triple {26896#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {26896#true} {26896#true} #96#return; {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L290 TraceCheckUtils]: 15: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L290 TraceCheckUtils]: 14: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L290 TraceCheckUtils]: 13: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L272 TraceCheckUtils]: 12: Hoare triple {26896#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L290 TraceCheckUtils]: 11: Hoare triple {26896#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26896#true} {26896#true} #94#return; {26896#true} is VALID [2022-04-08 06:08:32,620 INFO L290 TraceCheckUtils]: 9: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:08:32,621 INFO L290 TraceCheckUtils]: 8: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 06:08:32,621 INFO L290 TraceCheckUtils]: 7: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 06:08:32,621 INFO L272 TraceCheckUtils]: 6: Hoare triple {26896#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {26896#true} is VALID [2022-04-08 06:08:32,621 INFO L290 TraceCheckUtils]: 5: Hoare triple {26896#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {26896#true} is VALID [2022-04-08 06:08:32,621 INFO L272 TraceCheckUtils]: 4: Hoare triple {26896#true} call #t~ret6 := main(); {26896#true} is VALID [2022-04-08 06:08:32,621 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26896#true} {26896#true} #112#return; {26896#true} is VALID [2022-04-08 06:08:32,621 INFO L290 TraceCheckUtils]: 2: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 06:08:32,621 INFO L290 TraceCheckUtils]: 1: Hoare triple {26896#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {26896#true} is VALID [2022-04-08 06:08:32,621 INFO L272 TraceCheckUtils]: 0: Hoare triple {26896#true} call ULTIMATE.init(); {26896#true} is VALID [2022-04-08 06:08:32,621 INFO L134 CoverageAnalysis]: Checked inductivity of 334 backedges. 61 proven. 35 refuted. 0 times theorem prover too weak. 238 trivial. 0 not checked. [2022-04-08 06:08:32,622 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:08:32,622 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [466617120] [2022-04-08 06:08:32,622 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:08:32,622 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [408828202] [2022-04-08 06:08:32,622 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [408828202] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:08:32,622 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:08:32,622 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 14] total 22 [2022-04-08 06:08:32,622 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:08:32,622 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [211618554] [2022-04-08 06:08:32,622 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [211618554] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:08:32,622 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:08:32,622 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 06:08:32,622 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2025675920] [2022-04-08 06:08:32,622 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:08:32,623 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) Word has length 108 [2022-04-08 06:08:32,623 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:08:32,623 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-08 06:08:32,678 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:32,679 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 06:08:32,679 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:32,679 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 06:08:32,679 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=75, Invalid=387, Unknown=0, NotChecked=0, Total=462 [2022-04-08 06:08:32,679 INFO L87 Difference]: Start difference. First operand 454 states and 629 transitions. Second operand has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-08 06:08:36,449 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:36,450 INFO L93 Difference]: Finished difference Result 530 states and 735 transitions. [2022-04-08 06:08:36,450 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 06:08:36,450 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) Word has length 108 [2022-04-08 06:08:36,450 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:08:36,450 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-08 06:08:36,451 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 119 transitions. [2022-04-08 06:08:36,451 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-08 06:08:36,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 119 transitions. [2022-04-08 06:08:36,452 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 119 transitions. [2022-04-08 06:08:36,591 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:36,605 INFO L225 Difference]: With dead ends: 530 [2022-04-08 06:08:36,605 INFO L226 Difference]: Without dead ends: 527 [2022-04-08 06:08:36,605 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 222 GetRequests, 193 SyntacticMatches, 2 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 117 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=143, Invalid=669, Unknown=0, NotChecked=0, Total=812 [2022-04-08 06:08:36,606 INFO L913 BasicCegarLoop]: 47 mSDtfsCounter, 47 mSDsluCounter, 255 mSDsCounter, 0 mSdLazyCounter, 601 mSolverCounterSat, 43 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 302 SdHoareTripleChecker+Invalid, 644 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 43 IncrementalHoareTripleChecker+Valid, 601 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-08 06:08:36,606 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [55 Valid, 302 Invalid, 644 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [43 Valid, 601 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-08 06:08:36,606 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 527 states. [2022-04-08 06:08:37,599 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 527 to 448. [2022-04-08 06:08:37,600 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:08:37,600 INFO L82 GeneralOperation]: Start isEquivalent. First operand 527 states. Second operand has 448 states, 260 states have (on average 1.1923076923076923) internal successors, (310), 261 states have internal predecessors, (310), 155 states have call successors, (155), 33 states have call predecessors, (155), 32 states have return successors, (153), 153 states have call predecessors, (153), 153 states have call successors, (153) [2022-04-08 06:08:37,601 INFO L74 IsIncluded]: Start isIncluded. First operand 527 states. Second operand has 448 states, 260 states have (on average 1.1923076923076923) internal successors, (310), 261 states have internal predecessors, (310), 155 states have call successors, (155), 33 states have call predecessors, (155), 32 states have return successors, (153), 153 states have call predecessors, (153), 153 states have call successors, (153) [2022-04-08 06:08:37,601 INFO L87 Difference]: Start difference. First operand 527 states. Second operand has 448 states, 260 states have (on average 1.1923076923076923) internal successors, (310), 261 states have internal predecessors, (310), 155 states have call successors, (155), 33 states have call predecessors, (155), 32 states have return successors, (153), 153 states have call predecessors, (153), 153 states have call successors, (153) [2022-04-08 06:08:37,614 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:37,614 INFO L93 Difference]: Finished difference Result 527 states and 731 transitions. [2022-04-08 06:08:37,614 INFO L276 IsEmpty]: Start isEmpty. Operand 527 states and 731 transitions. [2022-04-08 06:08:37,615 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:37,615 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:37,616 INFO L74 IsIncluded]: Start isIncluded. First operand has 448 states, 260 states have (on average 1.1923076923076923) internal successors, (310), 261 states have internal predecessors, (310), 155 states have call successors, (155), 33 states have call predecessors, (155), 32 states have return successors, (153), 153 states have call predecessors, (153), 153 states have call successors, (153) Second operand 527 states. [2022-04-08 06:08:37,616 INFO L87 Difference]: Start difference. First operand has 448 states, 260 states have (on average 1.1923076923076923) internal successors, (310), 261 states have internal predecessors, (310), 155 states have call successors, (155), 33 states have call predecessors, (155), 32 states have return successors, (153), 153 states have call predecessors, (153), 153 states have call successors, (153) Second operand 527 states. [2022-04-08 06:08:37,629 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:08:37,629 INFO L93 Difference]: Finished difference Result 527 states and 731 transitions. [2022-04-08 06:08:37,629 INFO L276 IsEmpty]: Start isEmpty. Operand 527 states and 731 transitions. [2022-04-08 06:08:37,630 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:08:37,630 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:08:37,630 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:08:37,631 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:08:37,631 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 448 states, 260 states have (on average 1.1923076923076923) internal successors, (310), 261 states have internal predecessors, (310), 155 states have call successors, (155), 33 states have call predecessors, (155), 32 states have return successors, (153), 153 states have call predecessors, (153), 153 states have call successors, (153) [2022-04-08 06:08:37,642 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 448 states to 448 states and 618 transitions. [2022-04-08 06:08:37,643 INFO L78 Accepts]: Start accepts. Automaton has 448 states and 618 transitions. Word has length 108 [2022-04-08 06:08:37,643 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:08:37,643 INFO L478 AbstractCegarLoop]: Abstraction has 448 states and 618 transitions. [2022-04-08 06:08:37,643 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-08 06:08:37,643 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 448 states and 618 transitions. [2022-04-08 06:08:40,599 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 618 edges. 618 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:08:40,599 INFO L276 IsEmpty]: Start isEmpty. Operand 448 states and 618 transitions. [2022-04-08 06:08:40,600 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2022-04-08 06:08:40,600 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:08:40,600 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 6, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 06:08:40,634 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-04-08 06:08:40,801 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-08 06:08:40,801 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:08:40,801 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:08:40,802 INFO L85 PathProgramCache]: Analyzing trace with hash 826422219, now seen corresponding path program 9 times [2022-04-08 06:08:40,802 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:08:40,802 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1488734256] [2022-04-08 06:08:40,802 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:08:40,802 INFO L85 PathProgramCache]: Analyzing trace with hash 826422219, now seen corresponding path program 10 times [2022-04-08 06:08:40,802 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:08:40,802 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1705305881] [2022-04-08 06:08:40,802 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:08:40,802 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:08:40,814 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:08:40,814 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1902045258] [2022-04-08 06:08:40,814 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:08:40,814 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:08:40,814 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:08:40,816 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:08:40,817 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-04-08 06:08:40,884 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:08:40,885 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:08:40,886 INFO L263 TraceCheckSpWp]: Trace formula consists of 257 conjuncts, 104 conjunts are in the unsatisfiable core [2022-04-08 06:08:40,904 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:08:40,906 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:08:42,876 INFO L272 TraceCheckUtils]: 0: Hoare triple {30589#true} call ULTIMATE.init(); {30589#true} is VALID [2022-04-08 06:08:42,877 INFO L290 TraceCheckUtils]: 1: Hoare triple {30589#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {30589#true} is VALID [2022-04-08 06:08:42,877 INFO L290 TraceCheckUtils]: 2: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:08:42,877 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30589#true} {30589#true} #112#return; {30589#true} is VALID [2022-04-08 06:08:42,877 INFO L272 TraceCheckUtils]: 4: Hoare triple {30589#true} call #t~ret6 := main(); {30589#true} is VALID [2022-04-08 06:08:42,877 INFO L290 TraceCheckUtils]: 5: Hoare triple {30589#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {30589#true} is VALID [2022-04-08 06:08:42,877 INFO L272 TraceCheckUtils]: 6: Hoare triple {30589#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:08:42,877 INFO L290 TraceCheckUtils]: 7: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:08:42,877 INFO L290 TraceCheckUtils]: 8: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:08:42,877 INFO L290 TraceCheckUtils]: 9: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:08:42,877 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30589#true} {30589#true} #94#return; {30589#true} is VALID [2022-04-08 06:08:42,877 INFO L290 TraceCheckUtils]: 11: Hoare triple {30589#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {30589#true} is VALID [2022-04-08 06:08:42,877 INFO L272 TraceCheckUtils]: 12: Hoare triple {30589#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:08:42,877 INFO L290 TraceCheckUtils]: 13: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:08:42,877 INFO L290 TraceCheckUtils]: 14: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:08:42,877 INFO L290 TraceCheckUtils]: 15: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:08:42,877 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {30589#true} {30589#true} #96#return; {30589#true} is VALID [2022-04-08 06:08:42,878 INFO L272 TraceCheckUtils]: 17: Hoare triple {30589#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:08:42,878 INFO L290 TraceCheckUtils]: 18: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:08:42,878 INFO L290 TraceCheckUtils]: 19: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:08:42,878 INFO L290 TraceCheckUtils]: 20: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:08:42,878 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {30589#true} {30589#true} #98#return; {30589#true} is VALID [2022-04-08 06:08:42,878 INFO L272 TraceCheckUtils]: 22: Hoare triple {30589#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:08:42,878 INFO L290 TraceCheckUtils]: 23: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:08:42,878 INFO L290 TraceCheckUtils]: 24: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:08:42,878 INFO L290 TraceCheckUtils]: 25: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:08:42,878 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {30589#true} {30589#true} #100#return; {30589#true} is VALID [2022-04-08 06:08:42,878 INFO L290 TraceCheckUtils]: 27: Hoare triple {30589#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {30675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 06:08:42,879 INFO L290 TraceCheckUtils]: 28: Hoare triple {30675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {30675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 06:08:42,879 INFO L290 TraceCheckUtils]: 29: Hoare triple {30675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30682#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 06:08:42,879 INFO L290 TraceCheckUtils]: 30: Hoare triple {30682#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {30682#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 06:08:42,880 INFO L290 TraceCheckUtils]: 31: Hoare triple {30682#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {30682#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 06:08:42,880 INFO L290 TraceCheckUtils]: 32: Hoare triple {30682#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {30692#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 06:08:42,881 INFO L290 TraceCheckUtils]: 33: Hoare triple {30692#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {30692#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 06:08:42,881 INFO L290 TraceCheckUtils]: 34: Hoare triple {30692#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30699#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 06:08:42,881 INFO L290 TraceCheckUtils]: 35: Hoare triple {30699#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {30699#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 06:08:42,882 INFO L290 TraceCheckUtils]: 36: Hoare triple {30699#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30706#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 06:08:42,882 INFO L290 TraceCheckUtils]: 37: Hoare triple {30706#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !false; {30706#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 06:08:42,882 INFO L272 TraceCheckUtils]: 38: Hoare triple {30706#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:08:42,882 INFO L290 TraceCheckUtils]: 39: Hoare triple {30589#true} ~cond := #in~cond; {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:08:42,883 INFO L290 TraceCheckUtils]: 40: Hoare triple {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:08:42,883 INFO L290 TraceCheckUtils]: 41: Hoare triple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:08:42,884 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} {30706#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #102#return; {30727#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:08:42,884 INFO L272 TraceCheckUtils]: 43: Hoare triple {30727#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:08:42,884 INFO L290 TraceCheckUtils]: 44: Hoare triple {30589#true} ~cond := #in~cond; {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:08:42,884 INFO L290 TraceCheckUtils]: 45: Hoare triple {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:08:42,885 INFO L290 TraceCheckUtils]: 46: Hoare triple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:08:42,886 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} {30727#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:08:42,886 INFO L272 TraceCheckUtils]: 48: Hoare triple {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:08:42,886 INFO L290 TraceCheckUtils]: 49: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:08:42,886 INFO L290 TraceCheckUtils]: 50: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:08:42,886 INFO L290 TraceCheckUtils]: 51: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:08:42,887 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {30589#true} {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #106#return; {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:08:42,887 INFO L272 TraceCheckUtils]: 53: Hoare triple {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:08:42,887 INFO L290 TraceCheckUtils]: 54: Hoare triple {30589#true} ~cond := #in~cond; {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:08:42,887 INFO L290 TraceCheckUtils]: 55: Hoare triple {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:08:42,887 INFO L290 TraceCheckUtils]: 56: Hoare triple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:08:42,888 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #108#return; {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:08:42,889 INFO L290 TraceCheckUtils]: 58: Hoare triple {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:08:42,890 INFO L290 TraceCheckUtils]: 59: Hoare triple {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {30780#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:08:42,890 INFO L290 TraceCheckUtils]: 60: Hoare triple {30780#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {30780#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:08:42,891 INFO L290 TraceCheckUtils]: 61: Hoare triple {30780#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {30780#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:08:42,892 INFO L290 TraceCheckUtils]: 62: Hoare triple {30780#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {30790#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 06:08:42,893 INFO L290 TraceCheckUtils]: 63: Hoare triple {30790#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {30790#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 06:08:42,893 INFO L290 TraceCheckUtils]: 64: Hoare triple {30790#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30797#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 06:08:42,894 INFO L290 TraceCheckUtils]: 65: Hoare triple {30797#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {30797#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 06:08:42,894 INFO L290 TraceCheckUtils]: 66: Hoare triple {30797#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30804#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 06:08:42,895 INFO L290 TraceCheckUtils]: 67: Hoare triple {30804#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {30804#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 06:08:42,895 INFO L272 TraceCheckUtils]: 68: Hoare triple {30804#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:08:42,895 INFO L290 TraceCheckUtils]: 69: Hoare triple {30589#true} ~cond := #in~cond; {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:08:42,895 INFO L290 TraceCheckUtils]: 70: Hoare triple {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:08:42,896 INFO L290 TraceCheckUtils]: 71: Hoare triple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:08:42,897 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} {30804#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} #102#return; {30823#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 06:08:42,897 INFO L272 TraceCheckUtils]: 73: Hoare triple {30823#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:08:42,898 INFO L290 TraceCheckUtils]: 74: Hoare triple {30589#true} ~cond := #in~cond; {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:08:42,898 INFO L290 TraceCheckUtils]: 75: Hoare triple {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:08:42,898 INFO L290 TraceCheckUtils]: 76: Hoare triple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:08:42,900 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} {30823#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0))} #104#return; {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 06:08:42,900 INFO L272 TraceCheckUtils]: 78: Hoare triple {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:08:42,900 INFO L290 TraceCheckUtils]: 79: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:08:42,900 INFO L290 TraceCheckUtils]: 80: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:08:42,900 INFO L290 TraceCheckUtils]: 81: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:08:42,901 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {30589#true} {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} #106#return; {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 06:08:42,901 INFO L272 TraceCheckUtils]: 83: Hoare triple {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:08:42,901 INFO L290 TraceCheckUtils]: 84: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:08:42,901 INFO L290 TraceCheckUtils]: 85: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:08:42,901 INFO L290 TraceCheckUtils]: 86: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:08:42,902 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {30589#true} {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} #108#return; {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 06:08:42,903 INFO L290 TraceCheckUtils]: 88: Hoare triple {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= 2 * ~v~0); {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 06:08:42,903 INFO L290 TraceCheckUtils]: 89: Hoare triple {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {30876#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* main_~x~0 2) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (- 1) (* main_~q~0 main_~x~0)))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~x~0 (* main_~y~0 main_~s~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 06:08:42,904 INFO L290 TraceCheckUtils]: 90: Hoare triple {30876#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* main_~x~0 2) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (- 1) (* main_~q~0 main_~x~0)))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~x~0 (* main_~y~0 main_~s~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {30876#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* main_~x~0 2) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (- 1) (* main_~q~0 main_~x~0)))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~x~0 (* main_~y~0 main_~s~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 06:08:42,904 INFO L290 TraceCheckUtils]: 91: Hoare triple {30876#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* main_~x~0 2) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (- 1) (* main_~q~0 main_~x~0)))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~x~0 (* main_~y~0 main_~s~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0))} assume !(~c~0 >= ~b~0); {30876#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* main_~x~0 2) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (- 1) (* main_~q~0 main_~x~0)))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~x~0 (* main_~y~0 main_~s~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 06:08:42,908 INFO L290 TraceCheckUtils]: 92: Hoare triple {30876#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* main_~x~0 2) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (- 1) (* main_~q~0 main_~x~0)))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~x~0 (* main_~y~0 main_~s~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 06:08:42,909 INFO L290 TraceCheckUtils]: 93: Hoare triple {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} assume !false; {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 06:08:42,909 INFO L290 TraceCheckUtils]: 94: Hoare triple {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 06:08:42,910 INFO L290 TraceCheckUtils]: 95: Hoare triple {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} assume !false; {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 06:08:42,910 INFO L290 TraceCheckUtils]: 96: Hoare triple {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 06:08:42,911 INFO L290 TraceCheckUtils]: 97: Hoare triple {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} assume !false; {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 06:08:42,911 INFO L272 TraceCheckUtils]: 98: Hoare triple {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:08:42,911 INFO L290 TraceCheckUtils]: 99: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:08:42,911 INFO L290 TraceCheckUtils]: 100: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:08:42,911 INFO L290 TraceCheckUtils]: 101: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:08:42,911 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {30589#true} {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} #102#return; {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 06:08:42,913 INFO L272 TraceCheckUtils]: 103: Hoare triple {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30920#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:08:42,914 INFO L290 TraceCheckUtils]: 104: Hoare triple {30920#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {30924#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:08:42,914 INFO L290 TraceCheckUtils]: 105: Hoare triple {30924#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {30590#false} is VALID [2022-04-08 06:08:42,914 INFO L290 TraceCheckUtils]: 106: Hoare triple {30590#false} assume !false; {30590#false} is VALID [2022-04-08 06:08:42,915 INFO L134 CoverageAnalysis]: Checked inductivity of 244 backedges. 22 proven. 114 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2022-04-08 06:08:42,915 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:09:49,798 INFO L290 TraceCheckUtils]: 106: Hoare triple {30590#false} assume !false; {30590#false} is VALID [2022-04-08 06:09:49,798 INFO L290 TraceCheckUtils]: 105: Hoare triple {30924#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {30590#false} is VALID [2022-04-08 06:09:49,799 INFO L290 TraceCheckUtils]: 104: Hoare triple {30920#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {30924#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:09:49,799 INFO L272 TraceCheckUtils]: 103: Hoare triple {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30920#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:09:49,800 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {30589#true} {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 06:09:49,800 INFO L290 TraceCheckUtils]: 101: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:09:49,800 INFO L290 TraceCheckUtils]: 100: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:09:49,800 INFO L290 TraceCheckUtils]: 99: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:09:49,800 INFO L272 TraceCheckUtils]: 98: Hoare triple {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:09:49,800 INFO L290 TraceCheckUtils]: 97: Hoare triple {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 06:09:49,801 INFO L290 TraceCheckUtils]: 96: Hoare triple {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 06:09:49,801 INFO L290 TraceCheckUtils]: 95: Hoare triple {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 06:09:49,801 INFO L290 TraceCheckUtils]: 94: Hoare triple {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 06:09:49,802 INFO L290 TraceCheckUtils]: 93: Hoare triple {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 06:09:51,804 WARN L290 TraceCheckUtils]: 92: Hoare triple {30974#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-08 06:09:51,804 INFO L290 TraceCheckUtils]: 91: Hoare triple {30974#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {30974#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 06:09:51,805 INFO L290 TraceCheckUtils]: 90: Hoare triple {30974#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !false; {30974#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 06:09:52,945 INFO L290 TraceCheckUtils]: 89: Hoare triple {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {30974#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 06:09:52,945 INFO L290 TraceCheckUtils]: 88: Hoare triple {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~c~0 >= 2 * ~v~0); {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 06:09:52,946 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {30589#true} {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #108#return; {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 06:09:52,946 INFO L290 TraceCheckUtils]: 86: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:09:52,946 INFO L290 TraceCheckUtils]: 85: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:09:52,946 INFO L290 TraceCheckUtils]: 84: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:09:52,946 INFO L272 TraceCheckUtils]: 83: Hoare triple {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:09:52,947 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {30589#true} {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #106#return; {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 06:09:52,947 INFO L290 TraceCheckUtils]: 81: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:09:52,947 INFO L290 TraceCheckUtils]: 80: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:09:52,947 INFO L290 TraceCheckUtils]: 79: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:09:52,947 INFO L272 TraceCheckUtils]: 78: Hoare triple {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:09:52,948 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} {31021#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #104#return; {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 06:09:52,949 INFO L290 TraceCheckUtils]: 76: Hoare triple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:09:52,949 INFO L290 TraceCheckUtils]: 75: Hoare triple {31031#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:09:52,949 INFO L290 TraceCheckUtils]: 74: Hoare triple {30589#true} ~cond := #in~cond; {31031#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:09:52,949 INFO L272 TraceCheckUtils]: 73: Hoare triple {31021#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:09:52,950 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} {31038#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #102#return; {31021#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:09:52,950 INFO L290 TraceCheckUtils]: 71: Hoare triple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:09:52,951 INFO L290 TraceCheckUtils]: 70: Hoare triple {31031#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:09:52,951 INFO L290 TraceCheckUtils]: 69: Hoare triple {30589#true} ~cond := #in~cond; {31031#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:09:52,951 INFO L272 TraceCheckUtils]: 68: Hoare triple {31038#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:09:52,951 INFO L290 TraceCheckUtils]: 67: Hoare triple {31038#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {31038#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:09:52,952 INFO L290 TraceCheckUtils]: 66: Hoare triple {31057#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {31038#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 06:09:52,952 INFO L290 TraceCheckUtils]: 65: Hoare triple {31057#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {31057#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:09:52,954 INFO L290 TraceCheckUtils]: 64: Hoare triple {30589#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31057#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:09:52,954 INFO L290 TraceCheckUtils]: 63: Hoare triple {30589#true} assume !false; {30589#true} is VALID [2022-04-08 06:09:52,954 INFO L290 TraceCheckUtils]: 62: Hoare triple {30589#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {30589#true} is VALID [2022-04-08 06:09:52,954 INFO L290 TraceCheckUtils]: 61: Hoare triple {30589#true} assume !(~c~0 >= ~b~0); {30589#true} is VALID [2022-04-08 06:09:52,954 INFO L290 TraceCheckUtils]: 60: Hoare triple {30589#true} assume !false; {30589#true} is VALID [2022-04-08 06:09:52,954 INFO L290 TraceCheckUtils]: 59: Hoare triple {30589#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {30589#true} is VALID [2022-04-08 06:09:52,954 INFO L290 TraceCheckUtils]: 58: Hoare triple {30589#true} assume !(~c~0 >= 2 * ~v~0); {30589#true} is VALID [2022-04-08 06:09:52,954 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {30589#true} {30589#true} #108#return; {30589#true} is VALID [2022-04-08 06:09:52,954 INFO L290 TraceCheckUtils]: 56: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L290 TraceCheckUtils]: 55: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L290 TraceCheckUtils]: 54: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L272 TraceCheckUtils]: 53: Hoare triple {30589#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {30589#true} {30589#true} #106#return; {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L290 TraceCheckUtils]: 51: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L290 TraceCheckUtils]: 50: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L290 TraceCheckUtils]: 49: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L272 TraceCheckUtils]: 48: Hoare triple {30589#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {30589#true} {30589#true} #104#return; {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L290 TraceCheckUtils]: 46: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L290 TraceCheckUtils]: 45: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L290 TraceCheckUtils]: 44: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L272 TraceCheckUtils]: 43: Hoare triple {30589#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {30589#true} {30589#true} #102#return; {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L290 TraceCheckUtils]: 41: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L290 TraceCheckUtils]: 40: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L290 TraceCheckUtils]: 39: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L272 TraceCheckUtils]: 38: Hoare triple {30589#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:09:52,955 INFO L290 TraceCheckUtils]: 37: Hoare triple {30589#true} assume !false; {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L290 TraceCheckUtils]: 36: Hoare triple {30589#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L290 TraceCheckUtils]: 35: Hoare triple {30589#true} assume !false; {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L290 TraceCheckUtils]: 34: Hoare triple {30589#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L290 TraceCheckUtils]: 33: Hoare triple {30589#true} assume !false; {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L290 TraceCheckUtils]: 32: Hoare triple {30589#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L290 TraceCheckUtils]: 31: Hoare triple {30589#true} assume !(~c~0 >= ~b~0); {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L290 TraceCheckUtils]: 30: Hoare triple {30589#true} assume !false; {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L290 TraceCheckUtils]: 29: Hoare triple {30589#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L290 TraceCheckUtils]: 28: Hoare triple {30589#true} assume !false; {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L290 TraceCheckUtils]: 27: Hoare triple {30589#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {30589#true} {30589#true} #100#return; {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L290 TraceCheckUtils]: 25: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L290 TraceCheckUtils]: 24: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L290 TraceCheckUtils]: 23: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L272 TraceCheckUtils]: 22: Hoare triple {30589#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {30589#true} {30589#true} #98#return; {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L290 TraceCheckUtils]: 20: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L290 TraceCheckUtils]: 19: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L290 TraceCheckUtils]: 18: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:09:52,956 INFO L272 TraceCheckUtils]: 17: Hoare triple {30589#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {30589#true} {30589#true} #96#return; {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L290 TraceCheckUtils]: 15: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L290 TraceCheckUtils]: 14: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L290 TraceCheckUtils]: 13: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L272 TraceCheckUtils]: 12: Hoare triple {30589#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L290 TraceCheckUtils]: 11: Hoare triple {30589#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30589#true} {30589#true} #94#return; {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L290 TraceCheckUtils]: 9: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L290 TraceCheckUtils]: 8: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L290 TraceCheckUtils]: 7: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L272 TraceCheckUtils]: 6: Hoare triple {30589#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L290 TraceCheckUtils]: 5: Hoare triple {30589#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L272 TraceCheckUtils]: 4: Hoare triple {30589#true} call #t~ret6 := main(); {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30589#true} {30589#true} #112#return; {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L290 TraceCheckUtils]: 2: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L290 TraceCheckUtils]: 1: Hoare triple {30589#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {30589#true} is VALID [2022-04-08 06:09:52,957 INFO L272 TraceCheckUtils]: 0: Hoare triple {30589#true} call ULTIMATE.init(); {30589#true} is VALID [2022-04-08 06:09:52,958 INFO L134 CoverageAnalysis]: Checked inductivity of 244 backedges. 78 proven. 27 refuted. 0 times theorem prover too weak. 139 trivial. 0 not checked. [2022-04-08 06:09:52,958 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:09:52,958 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1705305881] [2022-04-08 06:09:52,958 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:09:52,958 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1902045258] [2022-04-08 06:09:52,958 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1902045258] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:09:52,958 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:09:52,958 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 12] total 28 [2022-04-08 06:09:52,958 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:09:52,958 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1488734256] [2022-04-08 06:09:52,958 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1488734256] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:09:52,958 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:09:52,958 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [21] imperfect sequences [] total 21 [2022-04-08 06:09:52,959 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [759712325] [2022-04-08 06:09:52,959 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:09:52,959 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 8 states have call successors, (14) Word has length 107 [2022-04-08 06:09:52,959 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:09:52,959 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-08 06:09:53,173 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:53,174 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-08 06:09:53,174 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:09:53,174 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-08 06:09:53,174 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=117, Invalid=639, Unknown=0, NotChecked=0, Total=756 [2022-04-08 06:09:53,174 INFO L87 Difference]: Start difference. First operand 448 states and 618 transitions. Second operand has 21 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-08 06:09:58,755 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:09:58,755 INFO L93 Difference]: Finished difference Result 523 states and 710 transitions. [2022-04-08 06:09:58,755 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-08 06:09:58,755 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 8 states have call successors, (14) Word has length 107 [2022-04-08 06:09:58,756 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:09:58,756 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-08 06:09:58,758 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 195 transitions. [2022-04-08 06:09:58,758 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-08 06:09:58,760 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 195 transitions. [2022-04-08 06:09:58,761 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 195 transitions. [2022-04-08 06:09:59,257 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 195 edges. 195 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:09:59,270 INFO L225 Difference]: With dead ends: 523 [2022-04-08 06:09:59,270 INFO L226 Difference]: Without dead ends: 521 [2022-04-08 06:09:59,271 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 219 GetRequests, 185 SyntacticMatches, 2 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 199 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=163, Invalid=959, Unknown=0, NotChecked=0, Total=1122 [2022-04-08 06:09:59,271 INFO L913 BasicCegarLoop]: 58 mSDtfsCounter, 75 mSDsluCounter, 486 mSDsCounter, 0 mSdLazyCounter, 1392 mSolverCounterSat, 55 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 104 SdHoareTripleChecker+Valid, 544 SdHoareTripleChecker+Invalid, 1447 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 55 IncrementalHoareTripleChecker+Valid, 1392 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:09:59,271 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [104 Valid, 544 Invalid, 1447 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [55 Valid, 1392 Invalid, 0 Unknown, 0 Unchecked, 2.0s Time] [2022-04-08 06:09:59,272 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 521 states. [2022-04-08 06:10:00,670 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 521 to 499. [2022-04-08 06:10:00,670 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:10:00,671 INFO L82 GeneralOperation]: Start isEquivalent. First operand 521 states. Second operand has 499 states, 291 states have (on average 1.1890034364261168) internal successors, (346), 292 states have internal predecessors, (346), 171 states have call successors, (171), 37 states have call predecessors, (171), 36 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) [2022-04-08 06:10:00,671 INFO L74 IsIncluded]: Start isIncluded. First operand 521 states. Second operand has 499 states, 291 states have (on average 1.1890034364261168) internal successors, (346), 292 states have internal predecessors, (346), 171 states have call successors, (171), 37 states have call predecessors, (171), 36 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) [2022-04-08 06:10:00,672 INFO L87 Difference]: Start difference. First operand 521 states. Second operand has 499 states, 291 states have (on average 1.1890034364261168) internal successors, (346), 292 states have internal predecessors, (346), 171 states have call successors, (171), 37 states have call predecessors, (171), 36 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) [2022-04-08 06:10:00,689 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:10:00,689 INFO L93 Difference]: Finished difference Result 521 states and 708 transitions. [2022-04-08 06:10:00,689 INFO L276 IsEmpty]: Start isEmpty. Operand 521 states and 708 transitions. [2022-04-08 06:10:00,690 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:10:00,690 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:10:00,691 INFO L74 IsIncluded]: Start isIncluded. First operand has 499 states, 291 states have (on average 1.1890034364261168) internal successors, (346), 292 states have internal predecessors, (346), 171 states have call successors, (171), 37 states have call predecessors, (171), 36 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) Second operand 521 states. [2022-04-08 06:10:00,691 INFO L87 Difference]: Start difference. First operand has 499 states, 291 states have (on average 1.1890034364261168) internal successors, (346), 292 states have internal predecessors, (346), 171 states have call successors, (171), 37 states have call predecessors, (171), 36 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) Second operand 521 states. [2022-04-08 06:10:00,702 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:10:00,702 INFO L93 Difference]: Finished difference Result 521 states and 708 transitions. [2022-04-08 06:10:00,702 INFO L276 IsEmpty]: Start isEmpty. Operand 521 states and 708 transitions. [2022-04-08 06:10:00,703 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:10:00,703 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:10:00,703 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:10:00,703 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:10:00,705 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 499 states, 291 states have (on average 1.1890034364261168) internal successors, (346), 292 states have internal predecessors, (346), 171 states have call successors, (171), 37 states have call predecessors, (171), 36 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) [2022-04-08 06:10:00,718 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 499 states to 499 states and 686 transitions. [2022-04-08 06:10:00,718 INFO L78 Accepts]: Start accepts. Automaton has 499 states and 686 transitions. Word has length 107 [2022-04-08 06:10:00,718 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:10:00,718 INFO L478 AbstractCegarLoop]: Abstraction has 499 states and 686 transitions. [2022-04-08 06:10:00,718 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-08 06:10:00,718 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 499 states and 686 transitions. [2022-04-08 06:10:02,518 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 686 edges. 686 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:10:02,518 INFO L276 IsEmpty]: Start isEmpty. Operand 499 states and 686 transitions. [2022-04-08 06:10:02,519 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 112 [2022-04-08 06:10:02,519 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:10:02,519 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 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] [2022-04-08 06:10:02,535 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-04-08 06:10:02,720 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:10:02,720 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:10:02,720 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:10:02,720 INFO L85 PathProgramCache]: Analyzing trace with hash 1002671399, now seen corresponding path program 7 times [2022-04-08 06:10:02,720 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:10:02,720 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1198329997] [2022-04-08 06:10:02,721 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:10:02,721 INFO L85 PathProgramCache]: Analyzing trace with hash 1002671399, now seen corresponding path program 8 times [2022-04-08 06:10:02,721 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:10:02,721 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1558355322] [2022-04-08 06:10:02,721 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:10:02,721 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:10:02,738 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:10:02,738 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1967928545] [2022-04-08 06:10:02,738 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:10:02,738 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:10:02,739 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:10:02,743 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:10:02,744 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-04-08 06:10:02,814 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:10:02,815 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:10:02,816 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 68 conjunts are in the unsatisfiable core [2022-04-08 06:10:02,837 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:10:02,841 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:10:04,632 INFO L272 TraceCheckUtils]: 0: Hoare triple {34356#true} call ULTIMATE.init(); {34356#true} is VALID [2022-04-08 06:10:04,633 INFO L290 TraceCheckUtils]: 1: Hoare triple {34356#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {34356#true} is VALID [2022-04-08 06:10:04,633 INFO L290 TraceCheckUtils]: 2: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 06:10:04,633 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {34356#true} {34356#true} #112#return; {34356#true} is VALID [2022-04-08 06:10:04,633 INFO L272 TraceCheckUtils]: 4: Hoare triple {34356#true} call #t~ret6 := main(); {34356#true} is VALID [2022-04-08 06:10:04,633 INFO L290 TraceCheckUtils]: 5: Hoare triple {34356#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {34356#true} is VALID [2022-04-08 06:10:04,633 INFO L272 TraceCheckUtils]: 6: Hoare triple {34356#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {34356#true} is VALID [2022-04-08 06:10:04,633 INFO L290 TraceCheckUtils]: 7: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 06:10:04,633 INFO L290 TraceCheckUtils]: 8: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 06:10:04,633 INFO L290 TraceCheckUtils]: 9: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 06:10:04,633 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {34356#true} {34356#true} #94#return; {34356#true} is VALID [2022-04-08 06:10:04,633 INFO L290 TraceCheckUtils]: 11: Hoare triple {34356#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {34356#true} is VALID [2022-04-08 06:10:04,633 INFO L272 TraceCheckUtils]: 12: Hoare triple {34356#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {34356#true} is VALID [2022-04-08 06:10:04,633 INFO L290 TraceCheckUtils]: 13: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 06:10:04,633 INFO L290 TraceCheckUtils]: 14: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 06:10:04,633 INFO L290 TraceCheckUtils]: 15: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 06:10:04,633 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {34356#true} {34356#true} #96#return; {34356#true} is VALID [2022-04-08 06:10:04,634 INFO L272 TraceCheckUtils]: 17: Hoare triple {34356#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {34356#true} is VALID [2022-04-08 06:10:04,634 INFO L290 TraceCheckUtils]: 18: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 06:10:04,634 INFO L290 TraceCheckUtils]: 19: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 06:10:04,634 INFO L290 TraceCheckUtils]: 20: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 06:10:04,634 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {34356#true} {34356#true} #98#return; {34356#true} is VALID [2022-04-08 06:10:04,634 INFO L272 TraceCheckUtils]: 22: Hoare triple {34356#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {34356#true} is VALID [2022-04-08 06:10:04,634 INFO L290 TraceCheckUtils]: 23: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 06:10:04,634 INFO L290 TraceCheckUtils]: 24: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 06:10:04,634 INFO L290 TraceCheckUtils]: 25: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 06:10:04,634 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {34356#true} {34356#true} #100#return; {34356#true} is VALID [2022-04-08 06:10:04,634 INFO L290 TraceCheckUtils]: 27: Hoare triple {34356#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {34442#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,635 INFO L290 TraceCheckUtils]: 28: Hoare triple {34442#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {34442#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,635 INFO L290 TraceCheckUtils]: 29: Hoare triple {34442#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {34449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,635 INFO L290 TraceCheckUtils]: 30: Hoare triple {34449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {34449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,636 INFO L290 TraceCheckUtils]: 31: Hoare triple {34449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,636 INFO L290 TraceCheckUtils]: 32: Hoare triple {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,636 INFO L272 TraceCheckUtils]: 33: Hoare triple {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 06:10:04,636 INFO L290 TraceCheckUtils]: 34: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 06:10:04,636 INFO L290 TraceCheckUtils]: 35: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 06:10:04,636 INFO L290 TraceCheckUtils]: 36: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 06:10:04,637 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {34356#true} {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,637 INFO L272 TraceCheckUtils]: 38: Hoare triple {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 06:10:04,637 INFO L290 TraceCheckUtils]: 39: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 06:10:04,637 INFO L290 TraceCheckUtils]: 40: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 06:10:04,637 INFO L290 TraceCheckUtils]: 41: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 06:10:04,638 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {34356#true} {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,638 INFO L272 TraceCheckUtils]: 43: Hoare triple {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 06:10:04,638 INFO L290 TraceCheckUtils]: 44: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 06:10:04,638 INFO L290 TraceCheckUtils]: 45: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 06:10:04,638 INFO L290 TraceCheckUtils]: 46: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 06:10:04,639 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {34356#true} {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #106#return; {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,639 INFO L272 TraceCheckUtils]: 48: Hoare triple {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 06:10:04,639 INFO L290 TraceCheckUtils]: 49: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 06:10:04,639 INFO L290 TraceCheckUtils]: 50: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 06:10:04,639 INFO L290 TraceCheckUtils]: 51: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 06:10:04,640 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {34356#true} {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #108#return; {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,641 INFO L290 TraceCheckUtils]: 53: Hoare triple {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,642 INFO L290 TraceCheckUtils]: 54: Hoare triple {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,642 INFO L272 TraceCheckUtils]: 55: Hoare triple {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 06:10:04,642 INFO L290 TraceCheckUtils]: 56: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 06:10:04,642 INFO L290 TraceCheckUtils]: 57: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 06:10:04,642 INFO L290 TraceCheckUtils]: 58: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 06:10:04,642 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {34356#true} {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,643 INFO L272 TraceCheckUtils]: 60: Hoare triple {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 06:10:04,643 INFO L290 TraceCheckUtils]: 61: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 06:10:04,643 INFO L290 TraceCheckUtils]: 62: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 06:10:04,643 INFO L290 TraceCheckUtils]: 63: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 06:10:04,643 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {34356#true} {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,643 INFO L272 TraceCheckUtils]: 65: Hoare triple {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 06:10:04,643 INFO L290 TraceCheckUtils]: 66: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 06:10:04,644 INFO L290 TraceCheckUtils]: 67: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 06:10:04,644 INFO L290 TraceCheckUtils]: 68: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 06:10:04,644 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {34356#true} {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #106#return; {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,644 INFO L272 TraceCheckUtils]: 70: Hoare triple {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 06:10:04,645 INFO L290 TraceCheckUtils]: 71: Hoare triple {34356#true} ~cond := #in~cond; {34578#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:10:04,645 INFO L290 TraceCheckUtils]: 72: Hoare triple {34578#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:10:04,645 INFO L290 TraceCheckUtils]: 73: Hoare triple {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:10:04,646 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #108#return; {34589#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,646 INFO L290 TraceCheckUtils]: 75: Hoare triple {34589#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {34589#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,648 INFO L290 TraceCheckUtils]: 76: Hoare triple {34589#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {34596#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,649 INFO L290 TraceCheckUtils]: 77: Hoare triple {34596#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {34596#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,649 INFO L290 TraceCheckUtils]: 78: Hoare triple {34596#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {34603#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,650 INFO L290 TraceCheckUtils]: 79: Hoare triple {34603#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {34603#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,650 INFO L272 TraceCheckUtils]: 80: Hoare triple {34603#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 06:10:04,650 INFO L290 TraceCheckUtils]: 81: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 06:10:04,650 INFO L290 TraceCheckUtils]: 82: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 06:10:04,650 INFO L290 TraceCheckUtils]: 83: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 06:10:04,651 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {34356#true} {34603#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {34603#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,651 INFO L272 TraceCheckUtils]: 85: Hoare triple {34603#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 06:10:04,651 INFO L290 TraceCheckUtils]: 86: Hoare triple {34356#true} ~cond := #in~cond; {34578#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:10:04,651 INFO L290 TraceCheckUtils]: 87: Hoare triple {34578#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:10:04,652 INFO L290 TraceCheckUtils]: 88: Hoare triple {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:10:04,653 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} {34603#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {34637#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,653 INFO L272 TraceCheckUtils]: 90: Hoare triple {34637#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 06:10:04,653 INFO L290 TraceCheckUtils]: 91: Hoare triple {34356#true} ~cond := #in~cond; {34578#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:10:04,653 INFO L290 TraceCheckUtils]: 92: Hoare triple {34578#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:10:04,653 INFO L290 TraceCheckUtils]: 93: Hoare triple {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:10:04,655 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} {34637#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #106#return; {34653#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,655 INFO L272 TraceCheckUtils]: 95: Hoare triple {34653#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 06:10:04,655 INFO L290 TraceCheckUtils]: 96: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 06:10:04,656 INFO L290 TraceCheckUtils]: 97: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 06:10:04,656 INFO L290 TraceCheckUtils]: 98: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 06:10:04,656 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {34356#true} {34653#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} #108#return; {34653#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,657 INFO L290 TraceCheckUtils]: 100: Hoare triple {34653#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {34653#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,659 INFO L290 TraceCheckUtils]: 101: Hoare triple {34653#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {34675#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,660 INFO L290 TraceCheckUtils]: 102: Hoare triple {34675#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {34675#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,660 INFO L290 TraceCheckUtils]: 103: Hoare triple {34675#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {34675#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 06:10:04,662 INFO L290 TraceCheckUtils]: 104: Hoare triple {34675#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {34685#(and (= main_~p~0 0) (= (* main_~a~0 2) (* main_~a~0 (+ (- 1) (* (- 1) main_~s~0)))) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (mod (+ main_~s~0 1) 2) 0) (= main_~q~0 1))} is VALID [2022-04-08 06:10:04,663 INFO L290 TraceCheckUtils]: 105: Hoare triple {34685#(and (= main_~p~0 0) (= (* main_~a~0 2) (* main_~a~0 (+ (- 1) (* (- 1) main_~s~0)))) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (mod (+ main_~s~0 1) 2) 0) (= main_~q~0 1))} assume !false; {34685#(and (= main_~p~0 0) (= (* main_~a~0 2) (* main_~a~0 (+ (- 1) (* (- 1) main_~s~0)))) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (mod (+ main_~s~0 1) 2) 0) (= main_~q~0 1))} is VALID [2022-04-08 06:10:04,663 INFO L290 TraceCheckUtils]: 106: Hoare triple {34685#(and (= main_~p~0 0) (= (* main_~a~0 2) (* main_~a~0 (+ (- 1) (* (- 1) main_~s~0)))) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (mod (+ main_~s~0 1) 2) 0) (= main_~q~0 1))} assume !(0 != ~b~0); {34692#(and (= (+ main_~x~0 (* main_~a~0 main_~s~0)) 0) (= main_~p~0 0) (= (* main_~a~0 2) (* main_~a~0 (+ (- 1) (* (- 1) main_~s~0)))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (mod (+ main_~s~0 1) 2) 0) (= main_~q~0 1))} is VALID [2022-04-08 06:10:04,664 INFO L272 TraceCheckUtils]: 107: Hoare triple {34692#(and (= (+ main_~x~0 (* main_~a~0 main_~s~0)) 0) (= main_~p~0 0) (= (* main_~a~0 2) (* main_~a~0 (+ (- 1) (* (- 1) main_~s~0)))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (mod (+ main_~s~0 1) 2) 0) (= main_~q~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {34696#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:10:04,664 INFO L290 TraceCheckUtils]: 108: Hoare triple {34696#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {34700#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:10:04,665 INFO L290 TraceCheckUtils]: 109: Hoare triple {34700#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {34357#false} is VALID [2022-04-08 06:10:04,665 INFO L290 TraceCheckUtils]: 110: Hoare triple {34357#false} assume !false; {34357#false} is VALID [2022-04-08 06:10:04,665 INFO L134 CoverageAnalysis]: Checked inductivity of 339 backedges. 90 proven. 42 refuted. 0 times theorem prover too weak. 207 trivial. 0 not checked. [2022-04-08 06:10:04,665 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:10:37,537 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 06:10:38,178 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:10:38,178 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1558355322] [2022-04-08 06:10:38,179 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:10:38,179 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1967928545] [2022-04-08 06:10:38,179 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1967928545] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 06:10:38,179 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 06:10:38,179 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18] total 18 [2022-04-08 06:10:38,179 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:10:38,179 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1198329997] [2022-04-08 06:10:38,179 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1198329997] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:10:38,179 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:10:38,179 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-08 06:10:38,179 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [227051188] [2022-04-08 06:10:38,179 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:10:38,180 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) Word has length 111 [2022-04-08 06:10:38,180 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:10:38,180 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-08 06:10:38,376 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:10:38,376 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-08 06:10:38,376 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:10:38,376 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-08 06:10:38,376 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=517, Unknown=0, NotChecked=0, Total=600 [2022-04-08 06:10:38,376 INFO L87 Difference]: Start difference. First operand 499 states and 686 transitions. Second operand has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-08 06:10:45,459 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:10:45,459 INFO L93 Difference]: Finished difference Result 588 states and 809 transitions. [2022-04-08 06:10:45,459 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-08 06:10:45,459 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) Word has length 111 [2022-04-08 06:10:45,460 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:10:45,460 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-08 06:10:45,461 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 158 transitions. [2022-04-08 06:10:45,461 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-08 06:10:45,463 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 158 transitions. [2022-04-08 06:10:45,463 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 158 transitions. [2022-04-08 06:10:45,785 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:10:45,800 INFO L225 Difference]: With dead ends: 588 [2022-04-08 06:10:45,800 INFO L226 Difference]: Without dead ends: 585 [2022-04-08 06:10:45,801 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 136 GetRequests, 108 SyntacticMatches, 1 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 184 ImplicationChecksByTransitivity, 1.9s TimeCoverageRelationStatistics Valid=108, Invalid=704, Unknown=0, NotChecked=0, Total=812 [2022-04-08 06:10:45,801 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 63 mSDsluCounter, 267 mSDsCounter, 0 mSdLazyCounter, 829 mSolverCounterSat, 70 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 83 SdHoareTripleChecker+Valid, 320 SdHoareTripleChecker+Invalid, 899 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 70 IncrementalHoareTripleChecker+Valid, 829 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.5s IncrementalHoareTripleChecker+Time [2022-04-08 06:10:45,801 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [83 Valid, 320 Invalid, 899 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [70 Valid, 829 Invalid, 0 Unknown, 0 Unchecked, 2.5s Time] [2022-04-08 06:10:45,802 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 585 states. [2022-04-08 06:10:47,676 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 585 to 528. [2022-04-08 06:10:47,676 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:10:47,677 INFO L82 GeneralOperation]: Start isEquivalent. First operand 585 states. Second operand has 528 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 39 states have call predecessors, (183), 38 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) [2022-04-08 06:10:47,678 INFO L74 IsIncluded]: Start isIncluded. First operand 585 states. Second operand has 528 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 39 states have call predecessors, (183), 38 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) [2022-04-08 06:10:47,678 INFO L87 Difference]: Start difference. First operand 585 states. Second operand has 528 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 39 states have call predecessors, (183), 38 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) [2022-04-08 06:10:47,691 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:10:47,691 INFO L93 Difference]: Finished difference Result 585 states and 805 transitions. [2022-04-08 06:10:47,691 INFO L276 IsEmpty]: Start isEmpty. Operand 585 states and 805 transitions. [2022-04-08 06:10:47,692 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:10:47,692 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:10:47,693 INFO L74 IsIncluded]: Start isIncluded. First operand has 528 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 39 states have call predecessors, (183), 38 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) Second operand 585 states. [2022-04-08 06:10:47,694 INFO L87 Difference]: Start difference. First operand has 528 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 39 states have call predecessors, (183), 38 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) Second operand 585 states. [2022-04-08 06:10:47,707 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:10:47,707 INFO L93 Difference]: Finished difference Result 585 states and 805 transitions. [2022-04-08 06:10:47,707 INFO L276 IsEmpty]: Start isEmpty. Operand 585 states and 805 transitions. [2022-04-08 06:10:47,708 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:10:47,708 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:10:47,708 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:10:47,708 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:10:47,708 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 528 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 39 states have call predecessors, (183), 38 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) [2022-04-08 06:10:47,722 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 528 states to 528 states and 729 transitions. [2022-04-08 06:10:47,723 INFO L78 Accepts]: Start accepts. Automaton has 528 states and 729 transitions. Word has length 111 [2022-04-08 06:10:47,723 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:10:47,723 INFO L478 AbstractCegarLoop]: Abstraction has 528 states and 729 transitions. [2022-04-08 06:10:47,723 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-08 06:10:47,723 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 528 states and 729 transitions. [2022-04-08 06:10:49,868 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 729 edges. 729 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:10:49,868 INFO L276 IsEmpty]: Start isEmpty. Operand 528 states and 729 transitions. [2022-04-08 06:10:49,869 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2022-04-08 06:10:49,869 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:10:49,869 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 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] [2022-04-08 06:10:49,885 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2022-04-08 06:10:50,069 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:10:50,069 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:10:50,070 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:10:50,070 INFO L85 PathProgramCache]: Analyzing trace with hash 890766036, now seen corresponding path program 9 times [2022-04-08 06:10:50,070 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:10:50,070 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1866849953] [2022-04-08 06:10:50,070 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:10:50,070 INFO L85 PathProgramCache]: Analyzing trace with hash 890766036, now seen corresponding path program 10 times [2022-04-08 06:10:50,070 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:10:50,070 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [132911815] [2022-04-08 06:10:50,070 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:10:50,071 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:10:50,084 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:10:50,084 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1125650237] [2022-04-08 06:10:50,084 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:10:50,084 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:10:50,084 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:10:50,090 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:10:50,090 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-04-08 06:10:50,146 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:10:50,146 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:10:50,147 INFO L263 TraceCheckSpWp]: Trace formula consists of 252 conjuncts, 99 conjunts are in the unsatisfiable core [2022-04-08 06:10:50,165 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:10:50,167 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:10:52,466 INFO L272 TraceCheckUtils]: 0: Hoare triple {38189#true} call ULTIMATE.init(); {38189#true} is VALID [2022-04-08 06:10:52,466 INFO L290 TraceCheckUtils]: 1: Hoare triple {38189#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {38189#true} is VALID [2022-04-08 06:10:52,466 INFO L290 TraceCheckUtils]: 2: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:10:52,466 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38189#true} {38189#true} #112#return; {38189#true} is VALID [2022-04-08 06:10:52,466 INFO L272 TraceCheckUtils]: 4: Hoare triple {38189#true} call #t~ret6 := main(); {38189#true} is VALID [2022-04-08 06:10:52,466 INFO L290 TraceCheckUtils]: 5: Hoare triple {38189#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {38189#true} is VALID [2022-04-08 06:10:52,466 INFO L272 TraceCheckUtils]: 6: Hoare triple {38189#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:10:52,466 INFO L290 TraceCheckUtils]: 7: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:10:52,466 INFO L290 TraceCheckUtils]: 8: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:10:52,466 INFO L290 TraceCheckUtils]: 9: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:10:52,467 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38189#true} {38189#true} #94#return; {38189#true} is VALID [2022-04-08 06:10:52,467 INFO L290 TraceCheckUtils]: 11: Hoare triple {38189#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {38189#true} is VALID [2022-04-08 06:10:52,467 INFO L272 TraceCheckUtils]: 12: Hoare triple {38189#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:10:52,467 INFO L290 TraceCheckUtils]: 13: Hoare triple {38189#true} ~cond := #in~cond; {38233#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 06:10:52,467 INFO L290 TraceCheckUtils]: 14: Hoare triple {38233#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {38237#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:10:52,467 INFO L290 TraceCheckUtils]: 15: Hoare triple {38237#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {38237#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:10:52,468 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {38237#(not (= |assume_abort_if_not_#in~cond| 0))} {38189#true} #96#return; {38244#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,468 INFO L272 TraceCheckUtils]: 17: Hoare triple {38244#(and (<= 0 main_~y~0) (<= main_~y~0 5))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:10:52,468 INFO L290 TraceCheckUtils]: 18: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:10:52,468 INFO L290 TraceCheckUtils]: 19: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:10:52,468 INFO L290 TraceCheckUtils]: 20: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:10:52,469 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {38189#true} {38244#(and (<= 0 main_~y~0) (<= main_~y~0 5))} #98#return; {38244#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,469 INFO L272 TraceCheckUtils]: 22: Hoare triple {38244#(and (<= 0 main_~y~0) (<= main_~y~0 5))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:10:52,469 INFO L290 TraceCheckUtils]: 23: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:10:52,469 INFO L290 TraceCheckUtils]: 24: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:10:52,469 INFO L290 TraceCheckUtils]: 25: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:10:52,469 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {38189#true} {38244#(and (<= 0 main_~y~0) (<= main_~y~0 5))} #100#return; {38244#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,469 INFO L290 TraceCheckUtils]: 27: Hoare triple {38244#(and (<= 0 main_~y~0) (<= main_~y~0 5))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {38278#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,470 INFO L290 TraceCheckUtils]: 28: Hoare triple {38278#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5))} assume !false; {38278#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,470 INFO L290 TraceCheckUtils]: 29: Hoare triple {38278#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {38285#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 06:10:52,471 INFO L290 TraceCheckUtils]: 30: Hoare triple {38285#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} assume !false; {38285#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 06:10:52,471 INFO L290 TraceCheckUtils]: 31: Hoare triple {38285#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {38285#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 06:10:52,471 INFO L290 TraceCheckUtils]: 32: Hoare triple {38285#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {38295#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,472 INFO L290 TraceCheckUtils]: 33: Hoare triple {38295#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} assume !false; {38295#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,472 INFO L290 TraceCheckUtils]: 34: Hoare triple {38295#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {38302#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,473 INFO L290 TraceCheckUtils]: 35: Hoare triple {38302#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} assume !false; {38302#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,473 INFO L290 TraceCheckUtils]: 36: Hoare triple {38302#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,473 INFO L290 TraceCheckUtils]: 37: Hoare triple {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} assume !false; {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,474 INFO L272 TraceCheckUtils]: 38: Hoare triple {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:10:52,474 INFO L290 TraceCheckUtils]: 39: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:10:52,474 INFO L290 TraceCheckUtils]: 40: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:10:52,474 INFO L290 TraceCheckUtils]: 41: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:10:52,474 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {38189#true} {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} #102#return; {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,474 INFO L272 TraceCheckUtils]: 43: Hoare triple {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:10:52,475 INFO L290 TraceCheckUtils]: 44: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:10:52,475 INFO L290 TraceCheckUtils]: 45: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:10:52,475 INFO L290 TraceCheckUtils]: 46: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:10:52,475 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {38189#true} {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} #104#return; {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,475 INFO L272 TraceCheckUtils]: 48: Hoare triple {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:10:52,475 INFO L290 TraceCheckUtils]: 49: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:10:52,476 INFO L290 TraceCheckUtils]: 50: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:10:52,476 INFO L290 TraceCheckUtils]: 51: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:10:52,476 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {38189#true} {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} #106#return; {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,476 INFO L272 TraceCheckUtils]: 53: Hoare triple {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:10:52,477 INFO L290 TraceCheckUtils]: 54: Hoare triple {38189#true} ~cond := #in~cond; {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:10:52,477 INFO L290 TraceCheckUtils]: 55: Hoare triple {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:10:52,477 INFO L290 TraceCheckUtils]: 56: Hoare triple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:10:52,478 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} #108#return; {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,478 INFO L290 TraceCheckUtils]: 58: Hoare triple {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,479 INFO L290 TraceCheckUtils]: 59: Hoare triple {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} assume !false; {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,479 INFO L272 TraceCheckUtils]: 60: Hoare triple {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:10:52,479 INFO L290 TraceCheckUtils]: 61: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:10:52,479 INFO L290 TraceCheckUtils]: 62: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:10:52,479 INFO L290 TraceCheckUtils]: 63: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:10:52,480 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {38189#true} {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} #102#return; {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,480 INFO L272 TraceCheckUtils]: 65: Hoare triple {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:10:52,480 INFO L290 TraceCheckUtils]: 66: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:10:52,480 INFO L290 TraceCheckUtils]: 67: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:10:52,480 INFO L290 TraceCheckUtils]: 68: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:10:52,481 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {38189#true} {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} #104#return; {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,481 INFO L272 TraceCheckUtils]: 70: Hoare triple {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:10:52,481 INFO L290 TraceCheckUtils]: 71: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:10:52,481 INFO L290 TraceCheckUtils]: 72: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:10:52,481 INFO L290 TraceCheckUtils]: 73: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:10:52,482 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {38189#true} {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} #106#return; {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,482 INFO L272 TraceCheckUtils]: 75: Hoare triple {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:10:52,482 INFO L290 TraceCheckUtils]: 76: Hoare triple {38189#true} ~cond := #in~cond; {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:10:52,482 INFO L290 TraceCheckUtils]: 77: Hoare triple {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:10:52,482 INFO L290 TraceCheckUtils]: 78: Hoare triple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:10:52,483 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} #108#return; {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,484 INFO L290 TraceCheckUtils]: 80: Hoare triple {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {38445#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~a~0 main_~y~0) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,485 INFO L290 TraceCheckUtils]: 81: Hoare triple {38445#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~a~0 main_~y~0) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (<= main_~y~0 5))} assume !false; {38445#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~a~0 main_~y~0) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,485 INFO L272 TraceCheckUtils]: 82: Hoare triple {38445#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~a~0 main_~y~0) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:10:52,485 INFO L290 TraceCheckUtils]: 83: Hoare triple {38189#true} ~cond := #in~cond; {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:10:52,485 INFO L290 TraceCheckUtils]: 84: Hoare triple {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:10:52,486 INFO L290 TraceCheckUtils]: 85: Hoare triple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:10:52,487 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} {38445#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~a~0 main_~y~0) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (<= main_~y~0 5))} #102#return; {38464#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,487 INFO L272 TraceCheckUtils]: 87: Hoare triple {38464#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:10:52,487 INFO L290 TraceCheckUtils]: 88: Hoare triple {38189#true} ~cond := #in~cond; {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:10:52,487 INFO L290 TraceCheckUtils]: 89: Hoare triple {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:10:52,487 INFO L290 TraceCheckUtils]: 90: Hoare triple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:10:52,488 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} {38464#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} #104#return; {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,489 INFO L272 TraceCheckUtils]: 92: Hoare triple {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:10:52,489 INFO L290 TraceCheckUtils]: 93: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:10:52,489 INFO L290 TraceCheckUtils]: 94: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:10:52,489 INFO L290 TraceCheckUtils]: 95: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:10:52,489 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {38189#true} {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} #106#return; {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,490 INFO L272 TraceCheckUtils]: 97: Hoare triple {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:10:52,490 INFO L290 TraceCheckUtils]: 98: Hoare triple {38189#true} ~cond := #in~cond; {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:10:52,490 INFO L290 TraceCheckUtils]: 99: Hoare triple {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:10:52,490 INFO L290 TraceCheckUtils]: 100: Hoare triple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:10:52,491 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} #108#return; {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,492 INFO L290 TraceCheckUtils]: 102: Hoare triple {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} assume !(~c~0 >= 2 * ~v~0); {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,493 INFO L290 TraceCheckUtils]: 103: Hoare triple {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {38517#(and (<= 0 main_~y~0) (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (<= main_~y~0 5) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:10:52,493 INFO L290 TraceCheckUtils]: 104: Hoare triple {38517#(and (<= 0 main_~y~0) (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (<= main_~y~0 5) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {38517#(and (<= 0 main_~y~0) (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (<= main_~y~0 5) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:10:52,494 INFO L290 TraceCheckUtils]: 105: Hoare triple {38517#(and (<= 0 main_~y~0) (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (<= main_~y~0 5) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {38524#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= (+ main_~c~0 (* main_~b~0 4)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (< main_~c~0 main_~b~0) (<= main_~y~0 5) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 06:10:52,495 INFO L290 TraceCheckUtils]: 106: Hoare triple {38524#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= (+ main_~c~0 (* main_~b~0 4)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (< main_~c~0 main_~b~0) (<= main_~y~0 5) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {38528#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~q~0 (* main_~p~0 4)) 0) (= (+ (* main_~p~0 main_~x~0 (- 4)) main_~y~0) main_~b~0) (< main_~y~0 (* 5 (* main_~p~0 main_~x~0))) (<= (* (* main_~p~0 main_~x~0) 4) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,496 INFO L290 TraceCheckUtils]: 107: Hoare triple {38528#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~q~0 (* main_~p~0 4)) 0) (= (+ (* main_~p~0 main_~x~0 (- 4)) main_~y~0) main_~b~0) (< main_~y~0 (* 5 (* main_~p~0 main_~x~0))) (<= (* (* main_~p~0 main_~x~0) 4) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (<= main_~y~0 5))} assume !false; {38528#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~q~0 (* main_~p~0 4)) 0) (= (+ (* main_~p~0 main_~x~0 (- 4)) main_~y~0) main_~b~0) (< main_~y~0 (* 5 (* main_~p~0 main_~x~0))) (<= (* (* main_~p~0 main_~x~0) 4) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,496 INFO L290 TraceCheckUtils]: 108: Hoare triple {38528#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~q~0 (* main_~p~0 4)) 0) (= (+ (* main_~p~0 main_~x~0 (- 4)) main_~y~0) main_~b~0) (< main_~y~0 (* 5 (* main_~p~0 main_~x~0))) (<= (* (* main_~p~0 main_~x~0) 4) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (<= main_~y~0 5))} assume !(0 != ~b~0); {38535#(and (= main_~r~0 0) (= main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (= main_~s~0 1) (= (+ main_~q~0 (* main_~p~0 4)) 0) (< main_~y~0 (* 5 (* main_~p~0 main_~x~0))) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (<= main_~y~0 5))} is VALID [2022-04-08 06:10:52,498 INFO L272 TraceCheckUtils]: 109: Hoare triple {38535#(and (= main_~r~0 0) (= main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (= main_~s~0 1) (= (+ main_~q~0 (* main_~p~0 4)) 0) (< main_~y~0 (* 5 (* main_~p~0 main_~x~0))) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (<= main_~y~0 5))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {38539#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:10:52,499 INFO L290 TraceCheckUtils]: 110: Hoare triple {38539#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {38543#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:10:52,499 INFO L290 TraceCheckUtils]: 111: Hoare triple {38543#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {38190#false} is VALID [2022-04-08 06:10:52,499 INFO L290 TraceCheckUtils]: 112: Hoare triple {38190#false} assume !false; {38190#false} is VALID [2022-04-08 06:10:52,499 INFO L134 CoverageAnalysis]: Checked inductivity of 343 backedges. 106 proven. 63 refuted. 0 times theorem prover too weak. 174 trivial. 0 not checked. [2022-04-08 06:10:52,500 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:11:49,638 INFO L290 TraceCheckUtils]: 112: Hoare triple {38190#false} assume !false; {38190#false} is VALID [2022-04-08 06:11:49,639 INFO L290 TraceCheckUtils]: 111: Hoare triple {38543#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {38190#false} is VALID [2022-04-08 06:11:49,639 INFO L290 TraceCheckUtils]: 110: Hoare triple {38539#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {38543#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:11:49,640 INFO L272 TraceCheckUtils]: 109: Hoare triple {38559#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {38539#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:11:49,640 INFO L290 TraceCheckUtils]: 108: Hoare triple {38563#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {38559#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 06:11:49,641 INFO L290 TraceCheckUtils]: 107: Hoare triple {38563#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {38563#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 06:11:49,827 INFO L290 TraceCheckUtils]: 106: Hoare triple {38570#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {38563#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 06:11:49,827 INFO L290 TraceCheckUtils]: 105: Hoare triple {38574#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {38570#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:11:49,828 INFO L290 TraceCheckUtils]: 104: Hoare triple {38574#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {38574#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:11:49,892 INFO L290 TraceCheckUtils]: 103: Hoare triple {38581#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {38574#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:11:49,893 INFO L290 TraceCheckUtils]: 102: Hoare triple {38581#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {38581#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:11:49,894 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} {38588#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #108#return; {38581#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:11:49,894 INFO L290 TraceCheckUtils]: 100: Hoare triple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:11:49,894 INFO L290 TraceCheckUtils]: 99: Hoare triple {38598#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:11:49,895 INFO L290 TraceCheckUtils]: 98: Hoare triple {38189#true} ~cond := #in~cond; {38598#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:11:49,895 INFO L272 TraceCheckUtils]: 97: Hoare triple {38588#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:11:49,896 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {38189#true} {38588#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #106#return; {38588#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:11:49,896 INFO L290 TraceCheckUtils]: 95: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:11:49,896 INFO L290 TraceCheckUtils]: 94: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:11:49,896 INFO L290 TraceCheckUtils]: 93: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:11:49,896 INFO L272 TraceCheckUtils]: 92: Hoare triple {38588#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:11:49,897 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} {38620#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {38588#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:11:49,897 INFO L290 TraceCheckUtils]: 90: Hoare triple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:11:49,897 INFO L290 TraceCheckUtils]: 89: Hoare triple {38598#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:11:49,898 INFO L290 TraceCheckUtils]: 88: Hoare triple {38189#true} ~cond := #in~cond; {38598#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:11:49,898 INFO L272 TraceCheckUtils]: 87: Hoare triple {38620#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:11:49,899 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} {38636#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {38620#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:11:49,899 INFO L290 TraceCheckUtils]: 85: Hoare triple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:11:49,899 INFO L290 TraceCheckUtils]: 84: Hoare triple {38598#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:11:49,900 INFO L290 TraceCheckUtils]: 83: Hoare triple {38189#true} ~cond := #in~cond; {38598#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:11:49,900 INFO L272 TraceCheckUtils]: 82: Hoare triple {38636#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:11:49,900 INFO L290 TraceCheckUtils]: 81: Hoare triple {38636#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {38636#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:11:49,937 INFO L290 TraceCheckUtils]: 80: Hoare triple {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {38636#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 06:11:49,938 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {38189#true} {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #108#return; {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-08 06:11:49,938 INFO L290 TraceCheckUtils]: 78: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:11:49,938 INFO L290 TraceCheckUtils]: 77: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:11:49,938 INFO L290 TraceCheckUtils]: 76: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:11:49,938 INFO L272 TraceCheckUtils]: 75: Hoare triple {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:11:49,939 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {38189#true} {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #106#return; {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-08 06:11:49,939 INFO L290 TraceCheckUtils]: 73: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:11:49,939 INFO L290 TraceCheckUtils]: 72: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:11:49,939 INFO L290 TraceCheckUtils]: 71: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:11:49,939 INFO L272 TraceCheckUtils]: 70: Hoare triple {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:11:49,940 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {38189#true} {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #104#return; {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-08 06:11:49,940 INFO L290 TraceCheckUtils]: 68: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:11:49,940 INFO L290 TraceCheckUtils]: 67: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:11:49,940 INFO L290 TraceCheckUtils]: 66: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:11:49,940 INFO L272 TraceCheckUtils]: 65: Hoare triple {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:11:49,941 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {38189#true} {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #102#return; {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-08 06:11:49,941 INFO L290 TraceCheckUtils]: 63: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:11:49,941 INFO L290 TraceCheckUtils]: 62: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:11:49,941 INFO L290 TraceCheckUtils]: 61: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:11:49,941 INFO L272 TraceCheckUtils]: 60: Hoare triple {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:11:49,942 INFO L290 TraceCheckUtils]: 59: Hoare triple {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} assume !false; {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-08 06:11:49,961 INFO L290 TraceCheckUtils]: 58: Hoare triple {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-08 06:11:49,962 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {38189#true} {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #108#return; {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-08 06:11:49,962 INFO L290 TraceCheckUtils]: 56: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:11:49,962 INFO L290 TraceCheckUtils]: 55: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:11:49,962 INFO L290 TraceCheckUtils]: 54: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:11:49,962 INFO L272 TraceCheckUtils]: 53: Hoare triple {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:11:49,963 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {38189#true} {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #106#return; {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-08 06:11:49,963 INFO L290 TraceCheckUtils]: 51: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:11:49,963 INFO L290 TraceCheckUtils]: 50: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:11:49,963 INFO L290 TraceCheckUtils]: 49: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:11:49,963 INFO L272 TraceCheckUtils]: 48: Hoare triple {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:11:49,964 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {38189#true} {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #104#return; {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-08 06:11:49,964 INFO L290 TraceCheckUtils]: 46: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:11:49,964 INFO L290 TraceCheckUtils]: 45: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:11:49,964 INFO L290 TraceCheckUtils]: 44: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:11:49,964 INFO L272 TraceCheckUtils]: 43: Hoare triple {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:11:49,965 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {38189#true} {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #102#return; {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-08 06:11:49,965 INFO L290 TraceCheckUtils]: 41: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:11:49,965 INFO L290 TraceCheckUtils]: 40: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:11:49,965 INFO L290 TraceCheckUtils]: 39: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:11:49,965 INFO L272 TraceCheckUtils]: 38: Hoare triple {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:11:49,966 INFO L290 TraceCheckUtils]: 37: Hoare triple {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} assume !false; {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-08 06:11:49,966 INFO L290 TraceCheckUtils]: 36: Hoare triple {38789#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-08 06:11:49,967 INFO L290 TraceCheckUtils]: 35: Hoare triple {38789#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} assume !false; {38789#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} is VALID [2022-04-08 06:11:49,969 INFO L290 TraceCheckUtils]: 34: Hoare triple {38189#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {38789#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} is VALID [2022-04-08 06:11:49,969 INFO L290 TraceCheckUtils]: 33: Hoare triple {38189#true} assume !false; {38189#true} is VALID [2022-04-08 06:11:49,969 INFO L290 TraceCheckUtils]: 32: Hoare triple {38189#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {38189#true} is VALID [2022-04-08 06:11:49,969 INFO L290 TraceCheckUtils]: 31: Hoare triple {38189#true} assume !(~c~0 >= ~b~0); {38189#true} is VALID [2022-04-08 06:11:49,969 INFO L290 TraceCheckUtils]: 30: Hoare triple {38189#true} assume !false; {38189#true} is VALID [2022-04-08 06:11:49,969 INFO L290 TraceCheckUtils]: 29: Hoare triple {38189#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {38189#true} is VALID [2022-04-08 06:11:49,969 INFO L290 TraceCheckUtils]: 28: Hoare triple {38189#true} assume !false; {38189#true} is VALID [2022-04-08 06:11:49,969 INFO L290 TraceCheckUtils]: 27: Hoare triple {38189#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {38189#true} is VALID [2022-04-08 06:11:49,969 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {38189#true} {38189#true} #100#return; {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L290 TraceCheckUtils]: 25: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L290 TraceCheckUtils]: 24: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L290 TraceCheckUtils]: 23: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L272 TraceCheckUtils]: 22: Hoare triple {38189#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {38189#true} {38189#true} #98#return; {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L290 TraceCheckUtils]: 20: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L290 TraceCheckUtils]: 19: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L290 TraceCheckUtils]: 18: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L272 TraceCheckUtils]: 17: Hoare triple {38189#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {38189#true} {38189#true} #96#return; {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L290 TraceCheckUtils]: 15: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L290 TraceCheckUtils]: 14: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L290 TraceCheckUtils]: 13: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L272 TraceCheckUtils]: 12: Hoare triple {38189#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L290 TraceCheckUtils]: 11: Hoare triple {38189#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38189#true} {38189#true} #94#return; {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L290 TraceCheckUtils]: 9: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L290 TraceCheckUtils]: 8: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L290 TraceCheckUtils]: 7: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 06:11:49,970 INFO L272 TraceCheckUtils]: 6: Hoare triple {38189#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {38189#true} is VALID [2022-04-08 06:11:49,971 INFO L290 TraceCheckUtils]: 5: Hoare triple {38189#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {38189#true} is VALID [2022-04-08 06:11:49,971 INFO L272 TraceCheckUtils]: 4: Hoare triple {38189#true} call #t~ret6 := main(); {38189#true} is VALID [2022-04-08 06:11:49,971 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38189#true} {38189#true} #112#return; {38189#true} is VALID [2022-04-08 06:11:49,971 INFO L290 TraceCheckUtils]: 2: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 06:11:49,971 INFO L290 TraceCheckUtils]: 1: Hoare triple {38189#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {38189#true} is VALID [2022-04-08 06:11:49,971 INFO L272 TraceCheckUtils]: 0: Hoare triple {38189#true} call ULTIMATE.init(); {38189#true} is VALID [2022-04-08 06:11:49,971 INFO L134 CoverageAnalysis]: Checked inductivity of 343 backedges. 105 proven. 29 refuted. 0 times theorem prover too weak. 209 trivial. 0 not checked. [2022-04-08 06:11:49,971 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:11:49,972 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [132911815] [2022-04-08 06:11:49,972 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:11:49,972 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1125650237] [2022-04-08 06:11:49,972 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1125650237] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:11:49,972 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:11:49,972 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 17] total 34 [2022-04-08 06:11:49,972 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:11:49,972 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1866849953] [2022-04-08 06:11:49,972 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1866849953] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:11:49,972 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:11:49,972 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2022-04-08 06:11:49,972 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1977457596] [2022-04-08 06:11:49,972 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:11:49,973 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 20 states have (on average 2.05) internal successors, (41), 19 states have internal predecessors, (41), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) Word has length 113 [2022-04-08 06:11:49,973 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:11:49,973 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 20 states have (on average 2.05) internal successors, (41), 19 states have internal predecessors, (41), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 06:11:50,054 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:11:50,054 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-08 06:11:50,054 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:11:50,054 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-08 06:11:50,055 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=182, Invalid=940, Unknown=0, NotChecked=0, Total=1122 [2022-04-08 06:11:50,055 INFO L87 Difference]: Start difference. First operand 528 states and 729 transitions. Second operand has 22 states, 20 states have (on average 2.05) internal successors, (41), 19 states have internal predecessors, (41), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 06:11:56,500 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:11:56,500 INFO L93 Difference]: Finished difference Result 644 states and 877 transitions. [2022-04-08 06:11:56,501 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-08 06:11:56,501 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 20 states have (on average 2.05) internal successors, (41), 19 states have internal predecessors, (41), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) Word has length 113 [2022-04-08 06:11:56,501 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:11:56,501 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 20 states have (on average 2.05) internal successors, (41), 19 states have internal predecessors, (41), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 06:11:56,503 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 195 transitions. [2022-04-08 06:11:56,503 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 20 states have (on average 2.05) internal successors, (41), 19 states have internal predecessors, (41), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 06:11:56,507 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 195 transitions. [2022-04-08 06:11:56,507 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 195 transitions. [2022-04-08 06:11:56,725 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 195 edges. 195 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:11:56,741 INFO L225 Difference]: With dead ends: 644 [2022-04-08 06:11:56,741 INFO L226 Difference]: Without dead ends: 576 [2022-04-08 06:11:56,742 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 232 GetRequests, 189 SyntacticMatches, 4 SemanticMatches, 39 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 478 ImplicationChecksByTransitivity, 2.6s TimeCoverageRelationStatistics Valid=258, Invalid=1382, Unknown=0, NotChecked=0, Total=1640 [2022-04-08 06:11:56,743 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 85 mSDsluCounter, 343 mSDsCounter, 0 mSdLazyCounter, 1542 mSolverCounterSat, 85 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 103 SdHoareTripleChecker+Valid, 394 SdHoareTripleChecker+Invalid, 1627 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 85 IncrementalHoareTripleChecker+Valid, 1542 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.3s IncrementalHoareTripleChecker+Time [2022-04-08 06:11:56,743 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [103 Valid, 394 Invalid, 1627 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [85 Valid, 1542 Invalid, 0 Unknown, 0 Unchecked, 2.3s Time] [2022-04-08 06:11:56,745 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 576 states. [2022-04-08 06:11:58,107 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 576 to 561. [2022-04-08 06:11:58,107 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:11:58,108 INFO L82 GeneralOperation]: Start isEquivalent. First operand 576 states. Second operand has 561 states, 324 states have (on average 1.191358024691358) internal successors, (386), 325 states have internal predecessors, (386), 195 states have call successors, (195), 42 states have call predecessors, (195), 41 states have return successors, (193), 193 states have call predecessors, (193), 193 states have call successors, (193) [2022-04-08 06:11:58,109 INFO L74 IsIncluded]: Start isIncluded. First operand 576 states. Second operand has 561 states, 324 states have (on average 1.191358024691358) internal successors, (386), 325 states have internal predecessors, (386), 195 states have call successors, (195), 42 states have call predecessors, (195), 41 states have return successors, (193), 193 states have call predecessors, (193), 193 states have call successors, (193) [2022-04-08 06:11:58,109 INFO L87 Difference]: Start difference. First operand 576 states. Second operand has 561 states, 324 states have (on average 1.191358024691358) internal successors, (386), 325 states have internal predecessors, (386), 195 states have call successors, (195), 42 states have call predecessors, (195), 41 states have return successors, (193), 193 states have call predecessors, (193), 193 states have call successors, (193) [2022-04-08 06:11:58,122 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:11:58,122 INFO L93 Difference]: Finished difference Result 576 states and 789 transitions. [2022-04-08 06:11:58,123 INFO L276 IsEmpty]: Start isEmpty. Operand 576 states and 789 transitions. [2022-04-08 06:11:58,124 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:11:58,124 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:11:58,125 INFO L74 IsIncluded]: Start isIncluded. First operand has 561 states, 324 states have (on average 1.191358024691358) internal successors, (386), 325 states have internal predecessors, (386), 195 states have call successors, (195), 42 states have call predecessors, (195), 41 states have return successors, (193), 193 states have call predecessors, (193), 193 states have call successors, (193) Second operand 576 states. [2022-04-08 06:11:58,125 INFO L87 Difference]: Start difference. First operand has 561 states, 324 states have (on average 1.191358024691358) internal successors, (386), 325 states have internal predecessors, (386), 195 states have call successors, (195), 42 states have call predecessors, (195), 41 states have return successors, (193), 193 states have call predecessors, (193), 193 states have call successors, (193) Second operand 576 states. [2022-04-08 06:11:58,138 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:11:58,139 INFO L93 Difference]: Finished difference Result 576 states and 789 transitions. [2022-04-08 06:11:58,139 INFO L276 IsEmpty]: Start isEmpty. Operand 576 states and 789 transitions. [2022-04-08 06:11:58,140 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:11:58,140 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:11:58,140 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:11:58,140 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:11:58,141 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 561 states, 324 states have (on average 1.191358024691358) internal successors, (386), 325 states have internal predecessors, (386), 195 states have call successors, (195), 42 states have call predecessors, (195), 41 states have return successors, (193), 193 states have call predecessors, (193), 193 states have call successors, (193) [2022-04-08 06:11:58,160 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 561 states to 561 states and 774 transitions. [2022-04-08 06:11:58,160 INFO L78 Accepts]: Start accepts. Automaton has 561 states and 774 transitions. Word has length 113 [2022-04-08 06:11:58,161 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:11:58,161 INFO L478 AbstractCegarLoop]: Abstraction has 561 states and 774 transitions. [2022-04-08 06:11:58,161 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 20 states have (on average 2.05) internal successors, (41), 19 states have internal predecessors, (41), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 06:11:58,161 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 561 states and 774 transitions. [2022-04-08 06:12:00,624 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 774 edges. 774 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:12:00,624 INFO L276 IsEmpty]: Start isEmpty. Operand 561 states and 774 transitions. [2022-04-08 06:12:00,625 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 117 [2022-04-08 06:12:00,625 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:12:00,625 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 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] [2022-04-08 06:12:00,643 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-08 06:12:00,826 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2022-04-08 06:12:00,826 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:12:00,826 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:12:00,826 INFO L85 PathProgramCache]: Analyzing trace with hash 1938711081, now seen corresponding path program 11 times [2022-04-08 06:12:00,827 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:12:00,827 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1649310112] [2022-04-08 06:12:00,827 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:12:00,827 INFO L85 PathProgramCache]: Analyzing trace with hash 1938711081, now seen corresponding path program 12 times [2022-04-08 06:12:00,827 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:12:00,827 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [239073427] [2022-04-08 06:12:00,827 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:12:00,827 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:12:00,838 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:12:00,838 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1034358791] [2022-04-08 06:12:00,838 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:12:00,838 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:12:00,838 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:12:00,839 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 06:12:00,840 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-08 06:12:00,912 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2022-04-08 06:12:00,912 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:12:00,913 INFO L263 TraceCheckSpWp]: Trace formula consists of 289 conjuncts, 104 conjunts are in the unsatisfiable core [2022-04-08 06:12:00,932 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:12:00,934 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:12:03,220 INFO L272 TraceCheckUtils]: 0: Hoare triple {42476#true} call ULTIMATE.init(); {42476#true} is VALID [2022-04-08 06:12:03,220 INFO L290 TraceCheckUtils]: 1: Hoare triple {42476#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {42476#true} is VALID [2022-04-08 06:12:03,220 INFO L290 TraceCheckUtils]: 2: Hoare triple {42476#true} assume true; {42476#true} is VALID [2022-04-08 06:12:03,220 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42476#true} {42476#true} #112#return; {42476#true} is VALID [2022-04-08 06:12:03,220 INFO L272 TraceCheckUtils]: 4: Hoare triple {42476#true} call #t~ret6 := main(); {42476#true} is VALID [2022-04-08 06:12:03,220 INFO L290 TraceCheckUtils]: 5: Hoare triple {42476#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {42476#true} is VALID [2022-04-08 06:12:03,234 INFO L272 TraceCheckUtils]: 6: Hoare triple {42476#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {42476#true} is VALID [2022-04-08 06:12:03,234 INFO L290 TraceCheckUtils]: 7: Hoare triple {42476#true} ~cond := #in~cond; {42476#true} is VALID [2022-04-08 06:12:03,234 INFO L290 TraceCheckUtils]: 8: Hoare triple {42476#true} assume !(0 == ~cond); {42476#true} is VALID [2022-04-08 06:12:03,234 INFO L290 TraceCheckUtils]: 9: Hoare triple {42476#true} assume true; {42476#true} is VALID [2022-04-08 06:12:03,234 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42476#true} {42476#true} #94#return; {42476#true} is VALID [2022-04-08 06:12:03,234 INFO L290 TraceCheckUtils]: 11: Hoare triple {42476#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {42476#true} is VALID [2022-04-08 06:12:03,234 INFO L272 TraceCheckUtils]: 12: Hoare triple {42476#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {42476#true} is VALID [2022-04-08 06:12:03,238 INFO L290 TraceCheckUtils]: 13: Hoare triple {42476#true} ~cond := #in~cond; {42520#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 06:12:03,238 INFO L290 TraceCheckUtils]: 14: Hoare triple {42520#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {42524#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:12:03,238 INFO L290 TraceCheckUtils]: 15: Hoare triple {42524#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {42524#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:12:03,239 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {42524#(not (= |assume_abort_if_not_#in~cond| 0))} {42476#true} #96#return; {42531#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,239 INFO L272 TraceCheckUtils]: 17: Hoare triple {42531#(and (<= 0 main_~y~0) (<= main_~y~0 5))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {42476#true} is VALID [2022-04-08 06:12:03,239 INFO L290 TraceCheckUtils]: 18: Hoare triple {42476#true} ~cond := #in~cond; {42476#true} is VALID [2022-04-08 06:12:03,239 INFO L290 TraceCheckUtils]: 19: Hoare triple {42476#true} assume !(0 == ~cond); {42476#true} is VALID [2022-04-08 06:12:03,239 INFO L290 TraceCheckUtils]: 20: Hoare triple {42476#true} assume true; {42476#true} is VALID [2022-04-08 06:12:03,240 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {42476#true} {42531#(and (<= 0 main_~y~0) (<= main_~y~0 5))} #98#return; {42531#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,240 INFO L272 TraceCheckUtils]: 22: Hoare triple {42531#(and (<= 0 main_~y~0) (<= main_~y~0 5))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {42476#true} is VALID [2022-04-08 06:12:03,240 INFO L290 TraceCheckUtils]: 23: Hoare triple {42476#true} ~cond := #in~cond; {42476#true} is VALID [2022-04-08 06:12:03,240 INFO L290 TraceCheckUtils]: 24: Hoare triple {42476#true} assume !(0 == ~cond); {42476#true} is VALID [2022-04-08 06:12:03,240 INFO L290 TraceCheckUtils]: 25: Hoare triple {42476#true} assume true; {42476#true} is VALID [2022-04-08 06:12:03,240 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {42476#true} {42531#(and (<= 0 main_~y~0) (<= main_~y~0 5))} #100#return; {42531#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,241 INFO L290 TraceCheckUtils]: 27: Hoare triple {42531#(and (<= 0 main_~y~0) (<= main_~y~0 5))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {42565#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5) (= main_~p~0 1))} is VALID [2022-04-08 06:12:03,241 INFO L290 TraceCheckUtils]: 28: Hoare triple {42565#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5) (= main_~p~0 1))} assume !false; {42565#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5) (= main_~p~0 1))} is VALID [2022-04-08 06:12:03,242 INFO L290 TraceCheckUtils]: 29: Hoare triple {42565#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {42572#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:12:03,242 INFO L290 TraceCheckUtils]: 30: Hoare triple {42572#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {42572#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:12:03,242 INFO L290 TraceCheckUtils]: 31: Hoare triple {42572#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {42572#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 06:12:03,243 INFO L290 TraceCheckUtils]: 32: Hoare triple {42572#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {42582#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,243 INFO L290 TraceCheckUtils]: 33: Hoare triple {42582#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 5))} assume !false; {42582#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,244 INFO L290 TraceCheckUtils]: 34: Hoare triple {42582#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 5))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {42589#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,244 INFO L290 TraceCheckUtils]: 35: Hoare triple {42589#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 5))} assume !false; {42589#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,245 INFO L290 TraceCheckUtils]: 36: Hoare triple {42589#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 5))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {42596#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,245 INFO L290 TraceCheckUtils]: 37: Hoare triple {42596#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= main_~y~0 5))} assume !false; {42596#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,245 INFO L272 TraceCheckUtils]: 38: Hoare triple {42596#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {42476#true} is VALID [2022-04-08 06:12:03,245 INFO L290 TraceCheckUtils]: 39: Hoare triple {42476#true} ~cond := #in~cond; {42476#true} is VALID [2022-04-08 06:12:03,245 INFO L290 TraceCheckUtils]: 40: Hoare triple {42476#true} assume !(0 == ~cond); {42476#true} is VALID [2022-04-08 06:12:03,245 INFO L290 TraceCheckUtils]: 41: Hoare triple {42476#true} assume true; {42476#true} is VALID [2022-04-08 06:12:03,246 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {42476#true} {42596#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= main_~y~0 5))} #102#return; {42596#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,246 INFO L272 TraceCheckUtils]: 43: Hoare triple {42596#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {42476#true} is VALID [2022-04-08 06:12:03,246 INFO L290 TraceCheckUtils]: 44: Hoare triple {42476#true} ~cond := #in~cond; {42621#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:12:03,247 INFO L290 TraceCheckUtils]: 45: Hoare triple {42621#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42625#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:12:03,247 INFO L290 TraceCheckUtils]: 46: Hoare triple {42625#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42625#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:12:03,248 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {42625#(not (= |__VERIFIER_assert_#in~cond| 0))} {42596#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= main_~y~0 5))} #104#return; {42596#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,248 INFO L272 TraceCheckUtils]: 48: Hoare triple {42596#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {42476#true} is VALID [2022-04-08 06:12:03,248 INFO L290 TraceCheckUtils]: 49: Hoare triple {42476#true} ~cond := #in~cond; {42476#true} is VALID [2022-04-08 06:12:03,248 INFO L290 TraceCheckUtils]: 50: Hoare triple {42476#true} assume !(0 == ~cond); {42476#true} is VALID [2022-04-08 06:12:03,248 INFO L290 TraceCheckUtils]: 51: Hoare triple {42476#true} assume true; {42476#true} is VALID [2022-04-08 06:12:03,249 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {42476#true} {42596#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= main_~y~0 5))} #106#return; {42596#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,249 INFO L272 TraceCheckUtils]: 53: Hoare triple {42596#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {42476#true} is VALID [2022-04-08 06:12:03,249 INFO L290 TraceCheckUtils]: 54: Hoare triple {42476#true} ~cond := #in~cond; {42621#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:12:03,249 INFO L290 TraceCheckUtils]: 55: Hoare triple {42621#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42625#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:12:03,250 INFO L290 TraceCheckUtils]: 56: Hoare triple {42625#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42625#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:12:03,250 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {42625#(not (= |__VERIFIER_assert_#in~cond| 0))} {42596#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= main_~y~0 5))} #108#return; {42596#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,251 INFO L290 TraceCheckUtils]: 58: Hoare triple {42596#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= main_~y~0 5))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,251 INFO L290 TraceCheckUtils]: 59: Hoare triple {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} assume !false; {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,251 INFO L272 TraceCheckUtils]: 60: Hoare triple {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {42476#true} is VALID [2022-04-08 06:12:03,252 INFO L290 TraceCheckUtils]: 61: Hoare triple {42476#true} ~cond := #in~cond; {42476#true} is VALID [2022-04-08 06:12:03,252 INFO L290 TraceCheckUtils]: 62: Hoare triple {42476#true} assume !(0 == ~cond); {42476#true} is VALID [2022-04-08 06:12:03,252 INFO L290 TraceCheckUtils]: 63: Hoare triple {42476#true} assume true; {42476#true} is VALID [2022-04-08 06:12:03,252 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {42476#true} {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} #102#return; {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,252 INFO L272 TraceCheckUtils]: 65: Hoare triple {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {42476#true} is VALID [2022-04-08 06:12:03,253 INFO L290 TraceCheckUtils]: 66: Hoare triple {42476#true} ~cond := #in~cond; {42476#true} is VALID [2022-04-08 06:12:03,253 INFO L290 TraceCheckUtils]: 67: Hoare triple {42476#true} assume !(0 == ~cond); {42476#true} is VALID [2022-04-08 06:12:03,253 INFO L290 TraceCheckUtils]: 68: Hoare triple {42476#true} assume true; {42476#true} is VALID [2022-04-08 06:12:03,253 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {42476#true} {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} #104#return; {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,253 INFO L272 TraceCheckUtils]: 70: Hoare triple {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {42476#true} is VALID [2022-04-08 06:12:03,253 INFO L290 TraceCheckUtils]: 71: Hoare triple {42476#true} ~cond := #in~cond; {42476#true} is VALID [2022-04-08 06:12:03,254 INFO L290 TraceCheckUtils]: 72: Hoare triple {42476#true} assume !(0 == ~cond); {42476#true} is VALID [2022-04-08 06:12:03,254 INFO L290 TraceCheckUtils]: 73: Hoare triple {42476#true} assume true; {42476#true} is VALID [2022-04-08 06:12:03,254 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {42476#true} {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} #106#return; {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,254 INFO L272 TraceCheckUtils]: 75: Hoare triple {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {42476#true} is VALID [2022-04-08 06:12:03,255 INFO L290 TraceCheckUtils]: 76: Hoare triple {42476#true} ~cond := #in~cond; {42621#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:12:03,255 INFO L290 TraceCheckUtils]: 77: Hoare triple {42621#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42625#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:12:03,255 INFO L290 TraceCheckUtils]: 78: Hoare triple {42625#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42625#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:12:03,256 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {42625#(not (= |__VERIFIER_assert_#in~cond| 0))} {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} #108#return; {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,256 INFO L290 TraceCheckUtils]: 80: Hoare triple {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} assume !(~c~0 >= 2 * ~v~0); {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,257 INFO L290 TraceCheckUtils]: 81: Hoare triple {42665#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (<= main_~y~0 5))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {42735#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,258 INFO L290 TraceCheckUtils]: 82: Hoare triple {42735#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} assume !false; {42735#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,258 INFO L290 TraceCheckUtils]: 83: Hoare triple {42735#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {42742#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,259 INFO L290 TraceCheckUtils]: 84: Hoare triple {42742#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} assume !false; {42742#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,259 INFO L272 TraceCheckUtils]: 85: Hoare triple {42742#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {42476#true} is VALID [2022-04-08 06:12:03,259 INFO L290 TraceCheckUtils]: 86: Hoare triple {42476#true} ~cond := #in~cond; {42476#true} is VALID [2022-04-08 06:12:03,259 INFO L290 TraceCheckUtils]: 87: Hoare triple {42476#true} assume !(0 == ~cond); {42476#true} is VALID [2022-04-08 06:12:03,259 INFO L290 TraceCheckUtils]: 88: Hoare triple {42476#true} assume true; {42476#true} is VALID [2022-04-08 06:12:03,260 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {42476#true} {42742#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} #102#return; {42742#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,260 INFO L272 TraceCheckUtils]: 90: Hoare triple {42742#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {42476#true} is VALID [2022-04-08 06:12:03,260 INFO L290 TraceCheckUtils]: 91: Hoare triple {42476#true} ~cond := #in~cond; {42476#true} is VALID [2022-04-08 06:12:03,260 INFO L290 TraceCheckUtils]: 92: Hoare triple {42476#true} assume !(0 == ~cond); {42476#true} is VALID [2022-04-08 06:12:03,260 INFO L290 TraceCheckUtils]: 93: Hoare triple {42476#true} assume true; {42476#true} is VALID [2022-04-08 06:12:03,261 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {42476#true} {42742#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} #104#return; {42742#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,261 INFO L272 TraceCheckUtils]: 95: Hoare triple {42742#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {42476#true} is VALID [2022-04-08 06:12:03,261 INFO L290 TraceCheckUtils]: 96: Hoare triple {42476#true} ~cond := #in~cond; {42621#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:12:03,261 INFO L290 TraceCheckUtils]: 97: Hoare triple {42621#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42625#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:12:03,262 INFO L290 TraceCheckUtils]: 98: Hoare triple {42625#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42625#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:12:03,263 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {42625#(not (= |__VERIFIER_assert_#in~cond| 0))} {42742#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} #106#return; {42791#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,263 INFO L272 TraceCheckUtils]: 100: Hoare triple {42791#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {42476#true} is VALID [2022-04-08 06:12:03,263 INFO L290 TraceCheckUtils]: 101: Hoare triple {42476#true} ~cond := #in~cond; {42476#true} is VALID [2022-04-08 06:12:03,263 INFO L290 TraceCheckUtils]: 102: Hoare triple {42476#true} assume !(0 == ~cond); {42476#true} is VALID [2022-04-08 06:12:03,263 INFO L290 TraceCheckUtils]: 103: Hoare triple {42476#true} assume true; {42476#true} is VALID [2022-04-08 06:12:03,264 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {42476#true} {42791#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} #108#return; {42791#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,264 INFO L290 TraceCheckUtils]: 105: Hoare triple {42791#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} assume !(~c~0 >= 2 * ~v~0); {42791#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,265 INFO L290 TraceCheckUtils]: 106: Hoare triple {42791#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= main_~b~0 main_~c~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 1) (<= main_~y~0 5))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {42813#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~b~0 3)) main_~y~0) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= (+ (- 2) main_~k~0) 1) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,266 INFO L290 TraceCheckUtils]: 107: Hoare triple {42813#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~b~0 3)) main_~y~0) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= (+ (- 2) main_~k~0) 1) (= main_~q~0 1) (<= main_~y~0 5))} assume !false; {42813#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~b~0 3)) main_~y~0) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= (+ (- 2) main_~k~0) 1) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,266 INFO L290 TraceCheckUtils]: 108: Hoare triple {42813#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~b~0 3)) main_~y~0) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= (+ (- 2) main_~k~0) 1) (= main_~q~0 1) (<= main_~y~0 5))} assume !(~c~0 >= ~b~0); {42820#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 3) (= main_~r~0 1) (= (+ main_~c~0 (* main_~b~0 3)) main_~y~0) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (< main_~c~0 main_~b~0) (= main_~q~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 06:12:03,269 INFO L290 TraceCheckUtils]: 109: Hoare triple {42820#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 3) (= main_~r~0 1) (= (+ main_~c~0 (* main_~b~0 3)) main_~y~0) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (< main_~c~0 main_~b~0) (= main_~q~0 1) (<= main_~y~0 5))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {42824#(and (= main_~r~0 0) (= 3 (* (- 1) main_~q~0)) (<= (* main_~a~0 3) main_~y~0) (< main_~y~0 (* main_~a~0 4)) (= main_~s~0 1) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~y~0)) (= main_~a~0 main_~x~0) (<= main_~y~0 5) (= main_~p~0 1))} is VALID [2022-04-08 06:12:03,269 INFO L290 TraceCheckUtils]: 110: Hoare triple {42824#(and (= main_~r~0 0) (= 3 (* (- 1) main_~q~0)) (<= (* main_~a~0 3) main_~y~0) (< main_~y~0 (* main_~a~0 4)) (= main_~s~0 1) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~y~0)) (= main_~a~0 main_~x~0) (<= main_~y~0 5) (= main_~p~0 1))} assume !false; {42824#(and (= main_~r~0 0) (= 3 (* (- 1) main_~q~0)) (<= (* main_~a~0 3) main_~y~0) (< main_~y~0 (* main_~a~0 4)) (= main_~s~0 1) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~y~0)) (= main_~a~0 main_~x~0) (<= main_~y~0 5) (= main_~p~0 1))} is VALID [2022-04-08 06:12:03,270 INFO L290 TraceCheckUtils]: 111: Hoare triple {42824#(and (= main_~r~0 0) (= 3 (* (- 1) main_~q~0)) (<= (* main_~a~0 3) main_~y~0) (< main_~y~0 (* main_~a~0 4)) (= main_~s~0 1) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~y~0)) (= main_~a~0 main_~x~0) (<= main_~y~0 5) (= main_~p~0 1))} assume !(0 != ~b~0); {42831#(and (= main_~r~0 0) (< main_~y~0 (* main_~a~0 4)) (= main_~s~0 1) (= (* main_~a~0 3) main_~y~0) (= (+ main_~q~0 3) 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5) (= main_~p~0 1))} is VALID [2022-04-08 06:12:03,270 INFO L272 TraceCheckUtils]: 112: Hoare triple {42831#(and (= main_~r~0 0) (< main_~y~0 (* main_~a~0 4)) (= main_~s~0 1) (= (* main_~a~0 3) main_~y~0) (= (+ main_~q~0 3) 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5) (= main_~p~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {42835#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:12:03,271 INFO L290 TraceCheckUtils]: 113: Hoare triple {42835#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {42839#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:12:03,271 INFO L290 TraceCheckUtils]: 114: Hoare triple {42839#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {42477#false} is VALID [2022-04-08 06:12:03,271 INFO L290 TraceCheckUtils]: 115: Hoare triple {42477#false} assume !false; {42477#false} is VALID [2022-04-08 06:12:03,272 INFO L134 CoverageAnalysis]: Checked inductivity of 350 backedges. 68 proven. 99 refuted. 0 times theorem prover too weak. 183 trivial. 0 not checked. [2022-04-08 06:12:03,272 INFO L328 TraceCheckSpWp]: Computing backward predicates...