./Ultimate.py --spec ../../sv-benchmarks/c/properties/unreach-call.prp --file ../../sv-benchmarks/c/hardness-nfm22/hardness_fillercode_fillercodesize_ps-cn-10_file-50.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 9bd2c7ff Calling Ultimate with: /usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java -Dosgi.configuration.area=/tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/data/config -Xmx15G -Xms4m -jar /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/data -tc /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/config/KojakReach.xml -i ../../sv-benchmarks/c/hardness-nfm22/hardness_fillercode_fillercodesize_ps-cn-10_file-50.i -s /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/config/svcomp-Reach-32bit-Kojak_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Kojak --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash c4a52f5cd92f62bf93f5dc90929bc5553e1570b7f06b79b6f8e4705ffe1aa663 --- Real Ultimate output --- This is Ultimate 0.2.3-dev-9bd2c7f [2023-11-19 03:30:51,204 INFO L188 SettingsManager]: Resetting all preferences to default values... [2023-11-19 03:30:51,320 INFO L114 SettingsManager]: Loading settings from /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/config/svcomp-Reach-32bit-Kojak_Default.epf [2023-11-19 03:30:51,327 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2023-11-19 03:30:51,328 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck.Interpolating solver [2023-11-19 03:30:51,365 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2023-11-19 03:30:51,366 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2023-11-19 03:30:51,366 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ALWAYS [2023-11-19 03:30:51,367 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2023-11-19 03:30:51,372 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2023-11-19 03:30:51,373 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2023-11-19 03:30:51,373 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2023-11-19 03:30:51,374 INFO L153 SettingsManager]: * sizeof long=4 [2023-11-19 03:30:51,375 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2023-11-19 03:30:51,376 INFO L153 SettingsManager]: * sizeof POINTER=4 [2023-11-19 03:30:51,376 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2023-11-19 03:30:51,377 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2023-11-19 03:30:51,377 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2023-11-19 03:30:51,377 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2023-11-19 03:30:51,378 INFO L153 SettingsManager]: * sizeof long double=12 [2023-11-19 03:30:51,378 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2023-11-19 03:30:51,379 INFO L153 SettingsManager]: * Use constant arrays=true [2023-11-19 03:30:51,379 INFO L151 SettingsManager]: Preferences of CodeCheck differ from their defaults: [2023-11-19 03:30:51,380 INFO L153 SettingsManager]: * Timeout in seconds=1000000 [2023-11-19 03:30:51,380 INFO L153 SettingsManager]: * Theory for external solver=ALL [2023-11-19 03:30:51,381 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2023-11-19 03:30:51,382 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 [2023-11-19 03:30:51,382 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2023-11-19 03:30:51,383 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2023-11-19 03:30:51,383 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2023-11-19 03:30:51,384 INFO L153 SettingsManager]: * Trace refinement strategy=PENGUIN [2023-11-19 03:30:51,385 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2023-11-19 03:30:51,385 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2023-11-19 03:30:51,385 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/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.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Kojak Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> c4a52f5cd92f62bf93f5dc90929bc5553e1570b7f06b79b6f8e4705ffe1aa663 [2023-11-19 03:30:51,708 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2023-11-19 03:30:51,743 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2023-11-19 03:30:51,745 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2023-11-19 03:30:51,746 INFO L270 PluginConnector]: Initializing CDTParser... [2023-11-19 03:30:51,747 INFO L274 PluginConnector]: CDTParser initialized [2023-11-19 03:30:51,748 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/../../sv-benchmarks/c/hardness-nfm22/hardness_fillercode_fillercodesize_ps-cn-10_file-50.i [2023-11-19 03:30:54,796 INFO L533 CDTParser]: Created temporary CDT project at NULL [2023-11-19 03:30:55,049 INFO L384 CDTParser]: Found 1 translation units. [2023-11-19 03:30:55,050 INFO L180 CDTParser]: Scanning /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/sv-benchmarks/c/hardness-nfm22/hardness_fillercode_fillercodesize_ps-cn-10_file-50.i [2023-11-19 03:30:55,064 INFO L427 CDTParser]: About to delete temporary CDT project at /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/data/8de4e537a/4f19cadaa59343998f2a2d3e057d1ab5/FLAG0c662b541 [2023-11-19 03:30:55,090 INFO L435 CDTParser]: Successfully deleted /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/data/8de4e537a/4f19cadaa59343998f2a2d3e057d1ab5 [2023-11-19 03:30:55,092 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2023-11-19 03:30:55,094 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2023-11-19 03:30:55,095 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2023-11-19 03:30:55,095 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2023-11-19 03:30:55,100 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2023-11-19 03:30:55,101 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 19.11 03:30:55" (1/1) ... [2023-11-19 03:30:55,102 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1a0c1b1b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:30:55, skipping insertion in model container [2023-11-19 03:30:55,102 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 19.11 03:30:55" (1/1) ... [2023-11-19 03:30:55,135 INFO L177 MainTranslator]: Built tables and reachable declarations [2023-11-19 03:30:55,277 WARN L240 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/sv-benchmarks/c/hardness-nfm22/hardness_fillercode_fillercodesize_ps-cn-10_file-50.i[915,928] [2023-11-19 03:30:55,370 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-11-19 03:30:55,383 INFO L202 MainTranslator]: Completed pre-run [2023-11-19 03:30:55,394 WARN L240 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/sv-benchmarks/c/hardness-nfm22/hardness_fillercode_fillercodesize_ps-cn-10_file-50.i[915,928] [2023-11-19 03:30:55,444 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-11-19 03:30:55,475 INFO L206 MainTranslator]: Completed translation [2023-11-19 03:30:55,476 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:30:55 WrapperNode [2023-11-19 03:30:55,476 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2023-11-19 03:30:55,477 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2023-11-19 03:30:55,477 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2023-11-19 03:30:55,477 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2023-11-19 03:30:55,484 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:30:55" (1/1) ... [2023-11-19 03:30:55,496 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:30:55" (1/1) ... [2023-11-19 03:30:55,548 INFO L138 Inliner]: procedures = 26, calls = 36, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 159 [2023-11-19 03:30:55,548 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2023-11-19 03:30:55,549 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2023-11-19 03:30:55,549 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2023-11-19 03:30:55,549 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2023-11-19 03:30:55,559 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:30:55" (1/1) ... [2023-11-19 03:30:55,559 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:30:55" (1/1) ... [2023-11-19 03:30:55,563 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:30:55" (1/1) ... [2023-11-19 03:30:55,563 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:30:55" (1/1) ... [2023-11-19 03:30:55,578 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:30:55" (1/1) ... [2023-11-19 03:30:55,582 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:30:55" (1/1) ... [2023-11-19 03:30:55,585 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:30:55" (1/1) ... [2023-11-19 03:30:55,587 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:30:55" (1/1) ... [2023-11-19 03:30:55,593 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2023-11-19 03:30:55,593 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2023-11-19 03:30:55,594 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2023-11-19 03:30:55,594 INFO L274 PluginConnector]: RCFGBuilder initialized [2023-11-19 03:30:55,595 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:30:55" (1/1) ... [2023-11-19 03:30:55,601 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 [2023-11-19 03:30:55,617 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/z3 [2023-11-19 03:30:55,630 INFO L229 MonitoredProcess]: Starting monitored process 1 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 (exit command is (exit), workingDir is null) [2023-11-19 03:30:55,652 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 (1)] Waiting until timeout for monitored process [2023-11-19 03:30:55,676 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2023-11-19 03:30:55,676 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2023-11-19 03:30:55,677 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2023-11-19 03:30:55,677 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2023-11-19 03:30:55,677 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2023-11-19 03:30:55,677 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2023-11-19 03:30:55,782 INFO L236 CfgBuilder]: Building ICFG [2023-11-19 03:30:55,785 INFO L262 CfgBuilder]: Building CFG for each procedure with an implementation [2023-11-19 03:30:56,287 INFO L277 CfgBuilder]: Performing block encoding [2023-11-19 03:30:56,538 INFO L297 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2023-11-19 03:30:56,539 INFO L302 CfgBuilder]: Removed 1 assume(true) statements. [2023-11-19 03:30:56,544 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 19.11 03:30:56 BoogieIcfgContainer [2023-11-19 03:30:56,545 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2023-11-19 03:30:56,547 INFO L112 PluginConnector]: ------------------------CodeCheck---------------------------- [2023-11-19 03:30:56,547 INFO L270 PluginConnector]: Initializing CodeCheck... [2023-11-19 03:30:56,557 INFO L274 PluginConnector]: CodeCheck initialized [2023-11-19 03:30:56,557 INFO L184 PluginConnector]: Executing the observer CodeCheckObserver from plugin CodeCheck for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 19.11 03:30:56" (1/1) ... [2023-11-19 03:30:56,565 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-19 03:30:56,608 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2023-11-19 03:30:56,615 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 45 states and 68 transitions. [2023-11-19 03:30:56,616 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 68 transitions. [2023-11-19 03:30:56,625 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2023-11-19 03:30:56,625 INFO L423 CodeCheckObserver]: Error Path is FOUND. [2023-11-19 03:30:56,626 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-11-19 03:30:57,123 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-19 03:30:57,124 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-11-19 03:30:57,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-11-19 03:30:57,305 WARN L476 CodeCheckObserver]: This program is UNSAFE, Check terminated with 1 iterations. [2023-11-19 03:30:57,421 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck CFG 19.11 03:30:57 ImpRootNode [2023-11-19 03:30:57,421 INFO L131 PluginConnector]: ------------------------ END CodeCheck---------------------------- [2023-11-19 03:30:57,422 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2023-11-19 03:30:57,422 INFO L270 PluginConnector]: Initializing Witness Printer... [2023-11-19 03:30:57,422 INFO L274 PluginConnector]: Witness Printer initialized [2023-11-19 03:30:57,423 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 19.11 03:30:56" (3/4) ... [2023-11-19 03:30:57,425 INFO L140 WitnessPrinter]: No result that supports witness generation found [2023-11-19 03:30:57,426 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2023-11-19 03:30:57,428 INFO L158 Benchmark]: Toolchain (without parser) took 2333.46ms. Allocated memory was 144.7MB in the beginning and 188.7MB in the end (delta: 44.0MB). Free memory was 112.6MB in the beginning and 110.9MB in the end (delta: 1.8MB). Peak memory consumption was 47.6MB. Max. memory is 16.1GB. [2023-11-19 03:30:57,428 INFO L158 Benchmark]: CDTParser took 0.18ms. Allocated memory is still 117.4MB. Free memory is still 72.6MB. There was no memory consumed. Max. memory is 16.1GB. [2023-11-19 03:30:57,429 INFO L158 Benchmark]: CACSL2BoogieTranslator took 381.28ms. Allocated memory is still 144.7MB. Free memory was 112.6MB in the beginning and 97.8MB in the end (delta: 14.8MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. [2023-11-19 03:30:57,430 INFO L158 Benchmark]: Boogie Procedure Inliner took 71.21ms. Allocated memory is still 144.7MB. Free memory was 97.8MB in the beginning and 93.6MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2023-11-19 03:30:57,430 INFO L158 Benchmark]: Boogie Preprocessor took 44.11ms. Allocated memory is still 144.7MB. Free memory was 93.6MB in the beginning and 91.5MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2023-11-19 03:30:57,431 INFO L158 Benchmark]: RCFGBuilder took 951.66ms. Allocated memory was 144.7MB in the beginning and 188.7MB in the end (delta: 44.0MB). Free memory was 91.5MB in the beginning and 148.6MB in the end (delta: -57.1MB). Peak memory consumption was 45.5MB. Max. memory is 16.1GB. [2023-11-19 03:30:57,432 INFO L158 Benchmark]: CodeCheck took 874.79ms. Allocated memory is still 188.7MB. Free memory was 148.6MB in the beginning and 111.9MB in the end (delta: 36.7MB). Peak memory consumption was 37.7MB. Max. memory is 16.1GB. [2023-11-19 03:30:57,432 INFO L158 Benchmark]: Witness Printer took 4.65ms. Allocated memory is still 188.7MB. Free memory was 111.9MB in the beginning and 110.9MB in the end (delta: 1.0MB). There was no memory consumed. Max. memory is 16.1GB. [2023-11-19 03:30:57,436 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.codecheck: - StatisticsResult: Ultimate CodeCheck benchmark data CFG has 2 procedures, 45 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.7s, OverallIterations: 1, TraceHistogramMax: 0, PathProgramHistogramMax: 0, EmptinessCheckTime: 0.0s, AutomataDifference: 0.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: , PredicateUnifierStatistics: 0 DeclaredPredicates, 0 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=-1occurred in iteration=-1, InterpolantAutomatonStates: 0, traceCheckStatistics: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 0.0s InterpolantComputationTime, 86 NumberOfCodeBlocks, 86 NumberOfCodeBlocksAsserted, 1 NumberOfCheckSat, 0 ConstructedInterpolants, 0 QuantifiedInterpolants, 0 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 0 InterpolantComputations, 0 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: No data available, ReuseStatistics: No data available - UnprovableResult [Line: 19]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: overapproximation of someBinaryFLOATComparisonOperation at line 64, overapproximation of someBinaryDOUBLEComparisonOperation at line 57, overapproximation of someBinaryArithmeticFLOAToperation at line 64, overapproximation of someUnaryFLOAToperation at line 64. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] unsigned char var_1_1 = 1; [L23] unsigned char var_1_7 = 0; [L24] unsigned char var_1_8 = 1; [L25] signed short int var_1_9 = -2; [L26] float var_1_13 = 999.4; [L27] float var_1_14 = 100.425; [L28] float var_1_15 = 3.375; [L29] float var_1_16 = 15.9; [L30] signed short int var_1_17 = -10; [L31] signed short int var_1_18 = 18060; [L32] unsigned char var_1_20 = 0; [L33] unsigned long int var_1_21 = 4; [L34] unsigned char var_1_23 = 0; [L35] unsigned char var_1_24 = 0; [L36] unsigned char var_1_25 = 100; [L37] unsigned char var_1_26 = 32; [L38] unsigned char var_1_27 = 10; [L39] unsigned char var_1_28 = 1; [L40] unsigned short int var_1_29 = 256; [L41] unsigned char var_1_30 = 1; [L42] unsigned char var_1_31 = 4; [L43] unsigned char var_1_32 = 200; [L44] double var_1_33 = 31.625; [L45] double var_1_34 = 99999.67; [L46] signed long int var_1_35 = 10; [L47] unsigned short int var_1_36 = 5; [L48] unsigned long int var_1_38 = 10; [L49] unsigned short int var_1_39 = 0; [L148] isInitial = 1 [L149] FCALL initially() [L150] COND TRUE 1 [L151] FCALL updateLastVariables() [L152] CALL updateVariables() [L104] var_1_7 = __VERIFIER_nondet_uchar() [L105] CALL assume_abort_if_not(var_1_7 >= 1) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=4017/40, var_1_15=27/8, var_1_16=159/10, var_1_17=-10, var_1_18=18060, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L105] RET assume_abort_if_not(var_1_7 >= 1) VAL [isInitial=1, var_1_13=4997/5, var_1_14=4017/40, var_1_15=27/8, var_1_16=159/10, var_1_17=-10, var_1_18=18060, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L106] CALL assume_abort_if_not(var_1_7 <= 1) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=4017/40, var_1_15=27/8, var_1_16=159/10, var_1_17=-10, var_1_18=18060, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L106] RET assume_abort_if_not(var_1_7 <= 1) VAL [isInitial=1, var_1_13=4997/5, var_1_14=4017/40, var_1_15=27/8, var_1_16=159/10, var_1_17=-10, var_1_18=18060, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L107] var_1_8 = __VERIFIER_nondet_uchar() [L108] CALL assume_abort_if_not(var_1_8 >= 1) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=4017/40, var_1_15=27/8, var_1_16=159/10, var_1_17=-10, var_1_18=18060, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L108] RET assume_abort_if_not(var_1_8 >= 1) VAL [isInitial=1, var_1_13=4997/5, var_1_14=4017/40, var_1_15=27/8, var_1_16=159/10, var_1_17=-10, var_1_18=18060, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L109] CALL assume_abort_if_not(var_1_8 <= 1) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=4017/40, var_1_15=27/8, var_1_16=159/10, var_1_17=-10, var_1_18=18060, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L109] RET assume_abort_if_not(var_1_8 <= 1) VAL [isInitial=1, var_1_13=4997/5, var_1_14=4017/40, var_1_15=27/8, var_1_16=159/10, var_1_17=-10, var_1_18=18060, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L110] var_1_14 = __VERIFIER_nondet_float() [L111] CALL assume_abort_if_not((var_1_14 >= -461168.6018427382800e+13F && var_1_14 <= -1.0e-20F) || (var_1_14 <= 4611686.018427382800e+12F && var_1_14 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=27/8, var_1_16=159/10, var_1_17=-10, var_1_18=18060, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L111] RET assume_abort_if_not((var_1_14 >= -461168.6018427382800e+13F && var_1_14 <= -1.0e-20F) || (var_1_14 <= 4611686.018427382800e+12F && var_1_14 >= 1.0e-20F )) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=27/8, var_1_16=159/10, var_1_17=-10, var_1_18=18060, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L112] var_1_15 = __VERIFIER_nondet_float() [L113] CALL assume_abort_if_not((var_1_15 >= -461168.6018427382800e+13F && var_1_15 <= -1.0e-20F) || (var_1_15 <= 4611686.018427382800e+12F && var_1_15 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=159/10, var_1_17=-10, var_1_18=18060, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L113] RET assume_abort_if_not((var_1_15 >= -461168.6018427382800e+13F && var_1_15 <= -1.0e-20F) || (var_1_15 <= 4611686.018427382800e+12F && var_1_15 >= 1.0e-20F )) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=159/10, var_1_17=-10, var_1_18=18060, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L114] var_1_16 = __VERIFIER_nondet_float() [L115] CALL assume_abort_if_not((var_1_16 >= -922337.2036854765600e+13F && var_1_16 <= -1.0e-20F) || (var_1_16 <= 9223372.036854765600e+12F && var_1_16 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=18060, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L115] RET assume_abort_if_not((var_1_16 >= -922337.2036854765600e+13F && var_1_16 <= -1.0e-20F) || (var_1_16 <= 9223372.036854765600e+12F && var_1_16 >= 1.0e-20F )) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=18060, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L116] var_1_18 = __VERIFIER_nondet_short() [L117] CALL assume_abort_if_not(var_1_18 >= 16382) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L117] RET assume_abort_if_not(var_1_18 >= 16382) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L118] CALL assume_abort_if_not(var_1_18 <= 32766) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L118] RET assume_abort_if_not(var_1_18 <= 32766) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=4, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L119] var_1_21 = __VERIFIER_nondet_ulong() [L120] CALL assume_abort_if_not(var_1_21 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L120] RET assume_abort_if_not(var_1_21 >= 0) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L121] CALL assume_abort_if_not(var_1_21 <= 4294967295) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L121] RET assume_abort_if_not(var_1_21 <= 4294967295) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L122] CALL assume_abort_if_not(var_1_21 != 0) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L122] RET assume_abort_if_not(var_1_21 != 0) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L123] var_1_23 = __VERIFIER_nondet_uchar() [L124] CALL assume_abort_if_not(var_1_23 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L124] RET assume_abort_if_not(var_1_23 >= 0) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L125] CALL assume_abort_if_not(var_1_23 <= 0) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L125] RET assume_abort_if_not(var_1_23 <= 0) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L126] var_1_24 = __VERIFIER_nondet_uchar() [L127] CALL assume_abort_if_not(var_1_24 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L127] RET assume_abort_if_not(var_1_24 >= 0) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L128] CALL assume_abort_if_not(var_1_24 <= 0) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L128] RET assume_abort_if_not(var_1_24 <= 0) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=32, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L129] var_1_26 = __VERIFIER_nondet_uchar() [L130] CALL assume_abort_if_not(var_1_26 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=0, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L130] RET assume_abort_if_not(var_1_26 >= 0) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=0, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L131] CALL assume_abort_if_not(var_1_26 <= 127) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=0, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L131] RET assume_abort_if_not(var_1_26 <= 127) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=0, var_1_27=10, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L132] var_1_27 = __VERIFIER_nondet_uchar() [L133] CALL assume_abort_if_not(var_1_27 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=0, var_1_27=0, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L133] RET assume_abort_if_not(var_1_27 >= 0) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=0, var_1_27=0, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L134] CALL assume_abort_if_not(var_1_27 <= 127) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=0, var_1_27=0, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L134] RET assume_abort_if_not(var_1_27 <= 127) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=0, var_1_27=0, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=200, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L135] var_1_32 = __VERIFIER_nondet_uchar() [L136] CALL assume_abort_if_not(var_1_32 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=0, var_1_27=0, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=0, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L136] RET assume_abort_if_not(var_1_32 >= 0) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=0, var_1_27=0, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=0, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L137] CALL assume_abort_if_not(var_1_32 <= 254) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=0, var_1_27=0, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=0, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L137] RET assume_abort_if_not(var_1_32 <= 254) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=0, var_1_27=0, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=0, var_1_33=253/8, var_1_34=9999967/100, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L138] var_1_34 = __VERIFIER_nondet_double() [L139] CALL assume_abort_if_not((var_1_34 >= -922337.2036854765600e+13F && var_1_34 <= -1.0e-20F) || (var_1_34 <= 9223372.036854765600e+12F && var_1_34 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=0, var_1_27=0, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=0, var_1_33=253/8, var_1_34=5, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L20] COND FALSE !(!cond) [L139] RET assume_abort_if_not((var_1_34 >= -922337.2036854765600e+13F && var_1_34 <= -1.0e-20F) || (var_1_34 <= 9223372.036854765600e+12F && var_1_34 >= 1.0e-20F )) VAL [isInitial=1, var_1_13=4997/5, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=-10, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=100, var_1_26=0, var_1_27=0, var_1_28=1, var_1_29=256, var_1_30=1, var_1_31=4, var_1_32=0, var_1_33=253/8, var_1_34=5, var_1_35=10, var_1_36=5, var_1_38=10, var_1_39=0, var_1_7=1, var_1_8=1, var_1_9=-2] [L152] RET updateVariables() [L153] CALL step() [L53] var_1_31 = var_1_32 [L54] var_1_33 = var_1_34 [L55] var_1_35 = var_1_31 [L56] COND FALSE !(var_1_32 < var_1_35) [L61] var_1_38 = var_1_36 [L62] var_1_39 = 256 [L63] COND TRUE \read(var_1_8) [L64] var_1_13 = (((((var_1_14 + var_1_15)) < (((((-0.2f) < (var_1_16)) ? (-0.2f) : (var_1_16))))) ? ((var_1_14 + var_1_15)) : (((((-0.2f) < (var_1_16)) ? (-0.2f) : (var_1_16)))))) [L66] COND TRUE \read(var_1_8) [L67] var_1_25 = (var_1_26 + var_1_27) [L69] var_1_29 = var_1_27 [L70] var_1_30 = var_1_8 [L71] COND FALSE !((var_1_29 > var_1_25) && var_1_30) [L74] var_1_9 = ((((var_1_25) > ((((((var_1_25 - 10)) < (var_1_25)) ? ((var_1_25 - 10)) : (var_1_25))))) ? (var_1_25) : ((((((var_1_25 - 10)) < (var_1_25)) ? ((var_1_25 - 10)) : (var_1_25)))))) [L76] var_1_17 = ((var_1_18 - 25) - var_1_25) [L77] signed long int stepLocal_2 = var_1_25 + var_1_17; [L78] COND TRUE ((var_1_18 % var_1_21) & ((((1u) < 0 ) ? -(1u) : (1u)))) < stepLocal_2 [L79] var_1_20 = (var_1_23 || var_1_24) [L83] signed short int stepLocal_3 = var_1_9; [L84] COND FALSE !((~ var_1_29) > stepLocal_3) [L87] var_1_28 = (var_1_20 || ((! var_1_23) && (var_1_24 || var_1_7))) [L89] signed long int stepLocal_1 = (((var_1_9) > (var_1_25)) ? (var_1_9) : (var_1_25)); [L90] unsigned char stepLocal_0 = var_1_25; [L91] COND TRUE stepLocal_1 <= (var_1_25 - var_1_25) [L92] COND FALSE !(stepLocal_0 < var_1_25) [L153] RET step() [L154] CALL, EXPR property() [L144-L145] return (((((((((((((var_1_9) > (var_1_25)) ? (var_1_9) : (var_1_25))) <= (var_1_25 - var_1_25)) ? ((var_1_25 < var_1_25) ? (var_1_20 ? (var_1_1 == ((unsigned char) var_1_7)) : (var_1_1 == ((unsigned char) var_1_8))) : 1) : (var_1_1 == ((unsigned char) 0))) && (((var_1_29 > var_1_25) && var_1_30) ? (var_1_9 == ((signed short int) var_1_25)) : (var_1_9 == ((signed short int) ((((var_1_25) > ((((((var_1_25 - 10)) < (var_1_25)) ? ((var_1_25 - 10)) : (var_1_25))))) ? (var_1_25) : ((((((var_1_25 - 10)) < (var_1_25)) ? ((var_1_25 - 10)) : (var_1_25)))))))))) && (var_1_8 ? (var_1_13 == ((float) (((((var_1_14 + var_1_15)) < (((((-0.2f) < (var_1_16)) ? (-0.2f) : (var_1_16))))) ? ((var_1_14 + var_1_15)) : (((((-0.2f) < (var_1_16)) ? (-0.2f) : (var_1_16)))))))) : 1)) && (var_1_17 == ((signed short int) ((var_1_18 - 25) - var_1_25)))) && ((((var_1_18 % var_1_21) & ((((1u) < 0 ) ? -(1u) : (1u)))) < (var_1_25 + var_1_17)) ? (var_1_20 == ((unsigned char) (var_1_23 || var_1_24))) : (var_1_20 == ((unsigned char) var_1_7)))) && (var_1_8 ? (var_1_25 == ((unsigned char) (var_1_26 + var_1_27))) : 1)) && (((~ var_1_29) > var_1_9) ? (var_1_28 == ((unsigned char) (! var_1_7))) : (var_1_28 == ((unsigned char) (var_1_20 || ((! var_1_23) && (var_1_24 || var_1_7))))))) && (var_1_29 == ((unsigned short int) var_1_27))) && (var_1_30 == ((unsigned char) var_1_8)) ; [L154] RET, EXPR property() [L154] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [\old(cond)=0, cond=0, isInitial=1, var_1_13=6, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=32741, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=0, var_1_26=0, var_1_27=0, var_1_28=1, var_1_29=0, var_1_30=1, var_1_31=0, var_1_32=0, var_1_33=5, var_1_34=5, var_1_35=0, var_1_36=5, var_1_38=5, var_1_39=256, var_1_7=1, var_1_8=1, var_1_9=0] [L19] reach_error() VAL [\old(cond)=0, cond=0, isInitial=1, var_1_13=6, var_1_14=2, var_1_15=3, var_1_16=4, var_1_17=32741, var_1_18=32766, var_1_1=1, var_1_20=0, var_1_21=32766, var_1_23=0, var_1_24=0, var_1_25=0, var_1_26=0, var_1_27=0, var_1_28=1, var_1_29=0, var_1_30=1, var_1_31=0, var_1_32=0, var_1_33=5, var_1_34=5, var_1_35=0, var_1_36=5, var_1_38=5, var_1_39=256, var_1_7=1, var_1_8=1, var_1_9=0] * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.18ms. Allocated memory is still 117.4MB. Free memory is still 72.6MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 381.28ms. Allocated memory is still 144.7MB. Free memory was 112.6MB in the beginning and 97.8MB in the end (delta: 14.8MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 71.21ms. Allocated memory is still 144.7MB. Free memory was 97.8MB in the beginning and 93.6MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 44.11ms. Allocated memory is still 144.7MB. Free memory was 93.6MB in the beginning and 91.5MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 951.66ms. Allocated memory was 144.7MB in the beginning and 188.7MB in the end (delta: 44.0MB). Free memory was 91.5MB in the beginning and 148.6MB in the end (delta: -57.1MB). Peak memory consumption was 45.5MB. Max. memory is 16.1GB. * CodeCheck took 874.79ms. Allocated memory is still 188.7MB. Free memory was 148.6MB in the beginning and 111.9MB in the end (delta: 36.7MB). Peak memory consumption was 37.7MB. Max. memory is 16.1GB. * Witness Printer took 4.65ms. Allocated memory is still 188.7MB. Free memory was 111.9MB in the beginning and 110.9MB in the end (delta: 1.0MB). There was no memory consumed. Max. memory is 16.1GB. RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces [2023-11-19 03:30:57,471 INFO L540 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java -Dosgi.configuration.area=/tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/data/config -Xmx15G -Xms4m -jar /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/data -tc /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/config/KojakReach.xml -i ../../sv-benchmarks/c/hardness-nfm22/hardness_fillercode_fillercodesize_ps-cn-10_file-50.i -s /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/config/svcomp-Reach-32bit-Kojak_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Kojak --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash c4a52f5cd92f62bf93f5dc90929bc5553e1570b7f06b79b6f8e4705ffe1aa663 --- Real Ultimate output --- This is Ultimate 0.2.3-dev-9bd2c7f [2023-11-19 03:31:00,021 INFO L188 SettingsManager]: Resetting all preferences to default values... [2023-11-19 03:31:00,094 INFO L114 SettingsManager]: Loading settings from /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/config/svcomp-Reach-32bit-Kojak_Bitvector.epf [2023-11-19 03:31:00,135 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2023-11-19 03:31:00,136 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2023-11-19 03:31:00,136 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ALWAYS [2023-11-19 03:31:00,137 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2023-11-19 03:31:00,138 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2023-11-19 03:31:00,138 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2023-11-19 03:31:00,139 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2023-11-19 03:31:00,140 INFO L153 SettingsManager]: * sizeof long=4 [2023-11-19 03:31:00,140 INFO L153 SettingsManager]: * sizeof POINTER=4 [2023-11-19 03:31:00,141 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2023-11-19 03:31:00,141 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2023-11-19 03:31:00,142 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2023-11-19 03:31:00,142 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2023-11-19 03:31:00,143 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2023-11-19 03:31:00,143 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2023-11-19 03:31:00,144 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2023-11-19 03:31:00,144 INFO L153 SettingsManager]: * sizeof long double=12 [2023-11-19 03:31:00,145 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2023-11-19 03:31:00,145 INFO L153 SettingsManager]: * Use constant arrays=true [2023-11-19 03:31:00,146 INFO L151 SettingsManager]: Preferences of CodeCheck differ from their defaults: [2023-11-19 03:31:00,146 INFO L153 SettingsManager]: * Timeout in seconds=1000000 [2023-11-19 03:31:00,147 INFO L153 SettingsManager]: * Theory for external solver=ALL [2023-11-19 03:31:00,147 INFO L153 SettingsManager]: * Command for calling external solver=cvc4 --incremental --print-success --lang smt [2023-11-19 03:31:00,148 INFO L153 SettingsManager]: * Choose which separate solver to use for tracechecks=External_ModelsAndUnsatCoreMode [2023-11-19 03:31:00,148 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2023-11-19 03:31:00,149 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 [2023-11-19 03:31:00,149 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2023-11-19 03:31:00,150 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2023-11-19 03:31:00,150 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2023-11-19 03:31:00,150 INFO L153 SettingsManager]: * Trace refinement strategy=WALRUS [2023-11-19 03:31:00,151 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2023-11-19 03:31:00,151 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2023-11-19 03:31:00,152 INFO L153 SettingsManager]: * Use separate solver for trace checks=false [2023-11-19 03:31:00,152 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2023-11-19 03:31:00,153 INFO L153 SettingsManager]: * Logic for external solver=AUFBV WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/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.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Kojak Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> c4a52f5cd92f62bf93f5dc90929bc5553e1570b7f06b79b6f8e4705ffe1aa663 [2023-11-19 03:31:00,502 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2023-11-19 03:31:00,536 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2023-11-19 03:31:00,539 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2023-11-19 03:31:00,542 INFO L270 PluginConnector]: Initializing CDTParser... [2023-11-19 03:31:00,542 INFO L274 PluginConnector]: CDTParser initialized [2023-11-19 03:31:00,544 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/../../sv-benchmarks/c/hardness-nfm22/hardness_fillercode_fillercodesize_ps-cn-10_file-50.i [2023-11-19 03:31:03,754 INFO L533 CDTParser]: Created temporary CDT project at NULL [2023-11-19 03:31:04,076 INFO L384 CDTParser]: Found 1 translation units. [2023-11-19 03:31:04,077 INFO L180 CDTParser]: Scanning /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/sv-benchmarks/c/hardness-nfm22/hardness_fillercode_fillercodesize_ps-cn-10_file-50.i [2023-11-19 03:31:04,087 INFO L427 CDTParser]: About to delete temporary CDT project at /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/data/efd54199c/7698932d0f4042b884c0c95157e9cb52/FLAGae77ae97b [2023-11-19 03:31:04,101 INFO L435 CDTParser]: Successfully deleted /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/data/efd54199c/7698932d0f4042b884c0c95157e9cb52 [2023-11-19 03:31:04,104 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2023-11-19 03:31:04,106 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2023-11-19 03:31:04,107 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2023-11-19 03:31:04,107 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2023-11-19 03:31:04,112 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2023-11-19 03:31:04,113 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 19.11 03:31:04" (1/1) ... [2023-11-19 03:31:04,114 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@133870c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:31:04, skipping insertion in model container [2023-11-19 03:31:04,114 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 19.11 03:31:04" (1/1) ... [2023-11-19 03:31:04,148 INFO L177 MainTranslator]: Built tables and reachable declarations [2023-11-19 03:31:04,297 WARN L240 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/sv-benchmarks/c/hardness-nfm22/hardness_fillercode_fillercodesize_ps-cn-10_file-50.i[915,928] [2023-11-19 03:31:04,381 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-11-19 03:31:04,412 INFO L202 MainTranslator]: Completed pre-run [2023-11-19 03:31:04,460 WARN L240 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/sv-benchmarks/c/hardness-nfm22/hardness_fillercode_fillercodesize_ps-cn-10_file-50.i[915,928] [2023-11-19 03:31:04,557 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-11-19 03:31:04,581 INFO L206 MainTranslator]: Completed translation [2023-11-19 03:31:04,582 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:31:04 WrapperNode [2023-11-19 03:31:04,582 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2023-11-19 03:31:04,583 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2023-11-19 03:31:04,583 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2023-11-19 03:31:04,584 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2023-11-19 03:31:04,591 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:31:04" (1/1) ... [2023-11-19 03:31:04,619 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:31:04" (1/1) ... [2023-11-19 03:31:04,666 INFO L138 Inliner]: procedures = 27, calls = 36, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 158 [2023-11-19 03:31:04,668 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2023-11-19 03:31:04,669 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2023-11-19 03:31:04,669 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2023-11-19 03:31:04,670 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2023-11-19 03:31:04,680 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:31:04" (1/1) ... [2023-11-19 03:31:04,681 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:31:04" (1/1) ... [2023-11-19 03:31:04,697 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:31:04" (1/1) ... [2023-11-19 03:31:04,698 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:31:04" (1/1) ... [2023-11-19 03:31:04,713 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:31:04" (1/1) ... [2023-11-19 03:31:04,733 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:31:04" (1/1) ... [2023-11-19 03:31:04,739 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:31:04" (1/1) ... [2023-11-19 03:31:04,751 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:31:04" (1/1) ... [2023-11-19 03:31:04,756 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2023-11-19 03:31:04,764 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2023-11-19 03:31:04,764 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2023-11-19 03:31:04,764 INFO L274 PluginConnector]: RCFGBuilder initialized [2023-11-19 03:31:04,765 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 03:31:04" (1/1) ... [2023-11-19 03:31:04,771 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 [2023-11-19 03:31:04,788 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/z3 [2023-11-19 03:31:04,807 INFO L229 MonitoredProcess]: Starting monitored process 1 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 (exit command is (exit), workingDir is null) [2023-11-19 03:31:04,828 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:10000 (1)] Waiting until timeout for monitored process [2023-11-19 03:31:04,856 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2023-11-19 03:31:04,856 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2023-11-19 03:31:04,856 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2023-11-19 03:31:04,857 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2023-11-19 03:31:04,857 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2023-11-19 03:31:04,857 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2023-11-19 03:31:04,989 INFO L236 CfgBuilder]: Building ICFG [2023-11-19 03:31:04,991 INFO L262 CfgBuilder]: Building CFG for each procedure with an implementation [2023-11-19 03:31:05,552 INFO L277 CfgBuilder]: Performing block encoding [2023-11-19 03:31:05,800 INFO L297 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2023-11-19 03:31:05,800 INFO L302 CfgBuilder]: Removed 1 assume(true) statements. [2023-11-19 03:31:05,805 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 19.11 03:31:05 BoogieIcfgContainer [2023-11-19 03:31:05,806 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2023-11-19 03:31:05,806 INFO L112 PluginConnector]: ------------------------CodeCheck---------------------------- [2023-11-19 03:31:05,807 INFO L270 PluginConnector]: Initializing CodeCheck... [2023-11-19 03:31:05,817 INFO L274 PluginConnector]: CodeCheck initialized [2023-11-19 03:31:05,817 INFO L184 PluginConnector]: Executing the observer CodeCheckObserver from plugin CodeCheck for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 19.11 03:31:05" (1/1) ... [2023-11-19 03:31:05,829 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2023-11-19 03:31:05,884 INFO L82 GeneralOperation]: Start removeUnreachable. Operand no size info available [2023-11-19 03:31:05,893 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 45 states and 68 transitions. [2023-11-19 03:31:05,893 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 68 transitions. [2023-11-19 03:31:05,909 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2023-11-19 03:31:05,910 INFO L423 CodeCheckObserver]: Error Path is FOUND. [2023-11-19 03:31:05,911 INFO L173 SolverBuilder]: Constructing external solver with command: cvc4 --incremental --print-success --lang smt [2023-11-19 03:31:05,911 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/cvc4 [2023-11-19 03:31:05,912 INFO L229 MonitoredProcess]: Starting monitored process 2 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/cvc4 --incremental --print-success --lang smt (exit command is (exit), workingDir is null) [2023-11-19 03:31:05,918 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_e19ce2e0-1570-485c-981c-67328fd6bcba/bin/ukojak-verify-G8NBE6pJGL/cvc4 --incremental --print-success --lang smt (2)] Waiting until timeout for monitored process [2023-11-19 03:31:07,376 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-19 03:31:07,379 ERROR L592 CodeCheckObserver]: First Tracecheck threw exception Proofs are not supported [2023-11-19 03:31:07,666 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-11-19 03:31:07,680 INFO L262 TraceCheckSpWp]: Trace formula consists of 214 conjuncts, 36 conjunts are in the unsatisfiable core [2023-11-19 03:31:07,704 INFO L285 TraceCheckSpWp]: Computing forward predicates...