extern void __VERIFIER_error() __attribute__ ((__noreturn__)); /********************************************************************** Copyright (c) 2013 Carnegie Mellon University. All Rights Reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following acknowledgments and disclaimers. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. The names "Carnegie Mellon University," "SEI" and/or "Software Engineering Institute" shall not be used to endorse or promote products derived from this software without prior written permission. For written permission, please contact permission@sei.cmu.edu. 4. Products derived from this software may not be called "SEI" nor may "SEI" appear in their names without prior written permission of permission@sei.cmu.edu. 5. Redistributions of any form whatsoever must retain the following acknowledgment: This material is based upon work funded and supported by the Department of Defense under Contract No. FA8721-05-C-0003 with Carnegie Mellon University for the operation of the Software Engineering Institute, a federally funded research and development center. Any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the United States Department of Defense. NO WARRANTY. THIS CARNEGIE MELLON UNIVERSITY AND SOFTWARE ENGINEERING INSTITUTE MATERIAL IS FURNISHEDON AN "AS-IS" BASIS. CARNEGIE MELLON UNIVERSITY MAKES NO WARRANTIES OF ANY KIND, EITHER EXPRESSED OR IMPLIED, AS TO ANY MATTER INCLUDING, BUT NOT LIMITED TO, WARRANTY OF FITNESS FOR PURPOSE OR MERCHANTABILITY, EXCLUSIVITY, OR RESULTS OBTAINED FROM USE OF THE MATERIAL. CARNEGIE MELLON UNIVERSITY DOES NOT MAKE ANY WARRANTY OF ANY KIND WITH RESPECT TO FREEDOM FROM PATENT, TRADEMARK, OR COPYRIGHT INFRINGEMENT. This material has been approved for public release and unlimited distribution. DM-0000575 **********************************************************************/ /* Generated by CIL v. 1.4.0 */ /* print_CIL_Input is true */ #line 1 "" unsigned char __startrek_start_t2[24] ; #line 1 "" unsigned char __startrek_end_t2[24] ; #line 1 "" unsigned char __startrek_start_t1[2] ; #line 1 "" unsigned char __startrek_end_t1[2] ; #line 1 "" unsigned char __startrek_start_t0[1] ; #line 1 "" unsigned char __startrek_end_t0[1] ; void __startrek_init_shared(void) ; #line 1 __inline static _Bool __startrek_cs_t2(void) ; #line 1 __inline static _Bool __startrek_cs_t1(void) ; #line 1 __inline static _Bool __startrek_cs_t0(void) ; _Bool __VERIFIER_nondet__Bool(void) ; unsigned char __VERIFIER_nondet_uchar(void) ; _Bool __VERIFIER_nondet_bool(void) ; extern int __VERIFIER_nondet_int(); void __VERIFIER_assume(_Bool arg ) ; #line 1 "" unsigned char __startrek_task ; #line 1 "" unsigned char __startrek_job ; #line 1 "" unsigned char __startrek_job_end ; #line 1 "" unsigned char __startrek_error_round ; #line 1 "" unsigned char __startrek_round ; #line 1 "" _Bool __startrek_lock = (_Bool)0; #line 1 "" _Bool __startrek_is_first_cs ; #line 1 "" unsigned char __startrek_hyper_period ; #line 1 "nxt.bug1.o" #pragma merger(0,"/tmp/aaaa/nxt.bug1.i","-S") #line 26 "src/startrek.h" void assert(_Bool arg) { if (!arg) { ERROR: __VERIFIER_error();} } #line 19 "src/balancer.h" static unsigned int ud_err_theta ; #line 20 "src/balancer.h" static unsigned int ud_psi ; #line 21 "src/balancer.h" static unsigned int ud_theta_lpf ; #line 22 "src/balancer.h" static unsigned int ud_theta_ref ; #line 23 "src/balancer.h" static unsigned int ud_thetadot_cmd_lpf ; #line 30 extern unsigned int A_D ; #line 35 extern unsigned int A_R ; #line 40 extern unsigned int K_F[4] ; #line 43 extern unsigned int K_I ; #line 46 extern unsigned int K_PHIDOT ; #line 49 extern unsigned int K_THETADOT ; #line 52 extern unsigned int const BATTERY_GAIN ; #line 53 extern unsigned int const BATTERY_OFFSET ; #line 56 "src/balancer.h" void balance_init(void) { { #line 63 ud_err_theta = 0.0F; #line 64 ud_theta_ref = 0.0F; #line 65 ud_thetadot_cmd_lpf = 0.0F; #line 66 ud_psi = 0.0F; #line 67 ud_theta_lpf = 0.0F; #line 68 return; } } #line 199 #line 72 "src/balancer.h" void balance_control(unsigned int args_cmd_forward , unsigned int args_cmd_turn , unsigned int args_gyro , unsigned int args_gyro_offset , unsigned int args_theta_m_l , unsigned int args_theta_m_r , unsigned int args_battery , char *ret_pwm_l , char *ret_pwm_r ) { unsigned int tmp_theta ; unsigned int tmp_theta_lpf ; unsigned int tmp_pwm_r_limiter ; unsigned int tmp_psidot ; unsigned int tmp_pwm_turn ; unsigned int tmp_pwm_l_limiter ; unsigned int tmp_thetadot_cmd_lpf ; unsigned int tmp[4] ; unsigned int tmp_theta_0[4] ; int tmp_0 ; int tmp___0 ; int tmp___1 ; { #line 101 tmp_thetadot_cmd_lpf = (((float )args_cmd_forward / 100.0F) * (float )K_THETADOT) * (1.0F - (float )A_R) + (float )(A_R * ud_thetadot_cmd_lpf); #line 114 tmp_theta = ((0.01745329238F * (float )args_theta_m_l + (float )ud_psi) + (0.01745329238F * (float )args_theta_m_r + (float )ud_psi)) * 0.5F; #line 125 tmp_theta_lpf = (1.0F - (float )A_D) * (float )tmp_theta + (float )(A_D * ud_theta_lpf); #line 132 tmp_psidot = (float )(args_gyro - args_gyro_offset) * 0.01745329238F; #line 154 tmp[0] = ud_theta_ref; #line 155 tmp[1] = 0.0F; #line 156 tmp[2] = tmp_thetadot_cmd_lpf; #line 157 tmp[3] = 0.0F; #line 158 tmp_theta_0[0] = tmp_theta; #line 159 tmp_theta_0[1] = ud_psi; #line 160 tmp_theta_0[2] = (float )(tmp_theta_lpf - ud_theta_lpf) / 0.00400000019F; #line 161 tmp_theta_0[3] = tmp_psidot; #line 162 tmp_pwm_r_limiter = 0.0F; #line 170 tmp_0 = 0; #line 171 tmp_pwm_r_limiter += (tmp[tmp_0] - tmp_theta_0[tmp_0]) * K_F[tmp_0]; #line 172 tmp_0 ++; #line 173 tmp_pwm_r_limiter += (tmp[tmp_0] - tmp_theta_0[tmp_0]) * K_F[tmp_0]; #line 174 tmp_0 ++; #line 175 tmp_pwm_r_limiter += (tmp[tmp_0] - tmp_theta_0[tmp_0]) * K_F[tmp_0]; #line 176 tmp_0 ++; #line 177 tmp_pwm_r_limiter += (tmp[tmp_0] - tmp_theta_0[tmp_0]) * K_F[tmp_0]; #line 178 tmp_0 ++; #line 184 tmp_pwm_r_limiter = (float )((K_I * ud_err_theta + tmp_pwm_r_limiter) / (unsigned int )(BATTERY_GAIN * (unsigned int const )args_battery - BATTERY_OFFSET)) * 100.0F; #line 193 tmp_pwm_turn = ((float )args_cmd_turn / 100.0F) * (float )K_PHIDOT; #line 196 tmp_pwm_l_limiter = tmp_pwm_r_limiter + tmp_pwm_turn; #line 199 tmp___0 = __VERIFIER_nondet_int(); #line 199 tmp_pwm_l_limiter = tmp___0; #line 204 *ret_pwm_l = (char )tmp_pwm_l_limiter; #line 207 tmp_pwm_r_limiter -= tmp_pwm_turn; #line 210 tmp___1 = __VERIFIER_nondet_int(); #line 210 tmp_pwm_r_limiter = tmp___1; #line 215 *ret_pwm_r = (char )tmp_pwm_r_limiter; #line 221 tmp_pwm_l_limiter = 0.00400000019F * (float )tmp_thetadot_cmd_lpf + (float )ud_theta_ref; #line 227 tmp_pwm_turn = 0.00400000019F * (float )tmp_psidot + (float )ud_psi; #line 235 tmp_pwm_r_limiter = (float )(ud_theta_ref - tmp_theta) * 0.00400000019F + (float )ud_err_theta; #line 242 ud_err_theta = tmp_pwm_r_limiter; #line 245 ud_theta_ref = tmp_pwm_l_limiter; #line 248 ud_thetadot_cmd_lpf = tmp_thetadot_cmd_lpf; #line 251 ud_psi = tmp_pwm_turn; #line 254 ud_theta_lpf = tmp_theta_lpf; #line 256 return; } } #line 40 "src/nxt.bug1.c" extern unsigned int __VERIFIER_nondet_U32() ; #line 41 extern char __VERIFIER_nondet_S8() ; #line 42 extern unsigned char __VERIFIER_nondet_U8() ; #line 1 "" __inline static unsigned char __startrek_read_nxtway_gs_mode(void) ; #line 1 __inline static void __startrek_write_nxtway_gs_mode(unsigned char arg ) ; #line 1 "" unsigned char _nxtway_gs_mode_[27] ; #line 1 "" unsigned char _i_nxtway_gs_mode_[27] ; #line 51 "src/nxt.bug1.c" unsigned char __startrek_hidden_nxtway_gs_mode = 0; #line 1 "" __inline static _Bool __startrek_read_obstacle_flag(void) ; #line 1 __inline static void __startrek_write_obstacle_flag(_Bool arg ) ; #line 1 "" _Bool _obstacle_flag_[27] ; #line 1 "" _Bool _i_obstacle_flag_[27] ; #line 52 "src/nxt.bug1.c" _Bool __startrek_hidden_obstacle_flag = 0; #line 54 extern void nxt_motor_set_count(unsigned char port , char pwm ) ; #line 56 "src/nxt.bug1.c" char nxt_motor_get_count(unsigned char port ) { char tmp ; { #line 57 tmp = __VERIFIER_nondet_S8(); #line 57 return (tmp); } } #line 62 unsigned int ecrobot_get_systick_ms(void) ; #line 62 "src/nxt.bug1.c" static unsigned int timer = 0; #line 60 "src/nxt.bug1.c" unsigned int ecrobot_get_systick_ms(void) { unsigned int r ; { #line 64 r = timer; #line 66 timer += 1000U; #line 67 return (r); } } #line 71 "src/nxt.bug1.c" unsigned int ecrobot_get_gyro_sensor(unsigned char port ) { unsigned int tmp ; { #line 72 tmp = __VERIFIER_nondet_U32(); #line 72 return (tmp); } } #line 74 extern void ecrobot_sound_tone(unsigned int , unsigned int , char ) ; #line 75 extern void ecrobot_status_monitor(char * ) ; #line 77 "src/nxt.bug1.c" void ecrobot_read_bt_packet(unsigned char *bt_receive_buf , unsigned char sz ) { { #line 79 *(bt_receive_buf + 0) = __VERIFIER_nondet_U8(); #line 80 *(bt_receive_buf + 1) = __VERIFIER_nondet_U8(); #line 81 return; } } #line 83 "src/nxt.bug1.c" unsigned int ecrobot_get_battery_voltage(void) { unsigned int tmp ; { #line 84 tmp = __VERIFIER_nondet_U32(); #line 84 return (tmp); } } #line 90 extern void nxt_motor_set_speed(unsigned char port , char speed , char one ) ; #line 96 extern void ecrobot_bt_data_logger(char , char ) ; #line 103 "src/nxt.bug1.c" static unsigned int gyro_offset ; #line 104 "src/nxt.bug1.c" static unsigned int avg_cnt ; #line 105 "src/nxt.bug1.c" static unsigned int cal_start_time ; #line 107 "src/nxt.bug1.c" static unsigned char bt_receive_buf[2] ; #line 100 "src/nxt.bug1.c" void OSEK_Task_ts1(void) { int i ; char cmd_forward ; char cmd_turn ; char pwm_l ; char pwm_r ; unsigned char tmp ; unsigned int tmp___0 ; unsigned int tmp___1 ; _Bool tmp___2 ; unsigned int tmp___3 ; char tmp___4 ; char tmp___5 ; unsigned int tmp___6 ; { #line 112 tmp = __startrek_read_nxtway_gs_mode(); #line 112 switch (tmp) { case 0: #line 115 gyro_offset = 0; #line 116 avg_cnt = 0; #line 117 i = 0; #line 117 while (i < 2) { #line 118 bt_receive_buf[i] = 0; #line 117 i ++; } #line 121 balance_init(); #line 122 nxt_motor_set_count(0, 0); #line 123 nxt_motor_set_count(1, 0); #line 124 cal_start_time = ecrobot_get_systick_ms(); #line 125 __startrek_write_nxtway_gs_mode(1); #line 126 break; case 1: #line 129 tmp___0 = ecrobot_get_gyro_sensor(3); #line 129 gyro_offset += tmp___0; #line 130 avg_cnt ++; #line 132 tmp___1 = ecrobot_get_systick_ms(); #line 132 if (tmp___1 - cal_start_time >= 1000U) { #line 133 gyro_offset /= avg_cnt; #line 134 ecrobot_sound_tone(440U, 500U, 30); #line 135 __startrek_write_nxtway_gs_mode(2); } #line 137 break; case 2: #line 145 ecrobot_read_bt_packet(bt_receive_buf, 2); #line 146 cmd_forward = - ((int )((char )bt_receive_buf[0])); #line 147 cmd_turn = (char )bt_receive_buf[1]; #line 149 tmp___2 = __startrek_read_obstacle_flag(); #line 149 if (tmp___2) { #line 151 cmd_forward = -100; #line 152 cmd_turn = 0; } #line 155 tmp___3 = ecrobot_get_battery_voltage(); #line 155 tmp___4 = nxt_motor_get_count(1); #line 155 tmp___5 = nxt_motor_get_count(0); #line 155 tmp___6 = ecrobot_get_gyro_sensor(3); #line 155 balance_control((unsigned int )cmd_forward, (unsigned int )cmd_turn, tmp___6, gyro_offset, (unsigned int )tmp___5, (unsigned int )tmp___4, tmp___3, & pwm_l, & pwm_r); #line 164 nxt_motor_set_speed(0, pwm_l, 1); #line 165 nxt_motor_set_speed(1, pwm_r, 1); #line 167 ecrobot_bt_data_logger(cmd_forward, cmd_turn); #line 168 break; default: #line 171 nxt_motor_set_speed(0, 0, 1); #line 172 nxt_motor_set_speed(1, 0, 1); #line 173 break; } #line 175 return; } } #line 178 "src/nxt.bug1.c" unsigned char ecrobot_get_sonar_sensor(unsigned char port ) { unsigned char tmp ; { #line 179 tmp = __VERIFIER_nondet_U8(); #line 179 return (tmp); } } #line 182 "src/nxt.bug1.c" void OSEK_Task_ts2(void) { unsigned char tmp ; unsigned char tmp___0 ; { #line 184 __startrek_write_obstacle_flag(0); #line 186 tmp = __startrek_read_nxtway_gs_mode(); #line 186 if (tmp == 2) { #line 186 tmp___0 = ecrobot_get_sonar_sensor(4); #line 186 if ((int )tmp___0 <= 25) { #line 188 __startrek_write_obstacle_flag(1); } } #line 190 return; } } #line 193 "src/nxt.bug1.c" __inline void __startrek_user_final(void) { int tmp ; { #line 1 "" tmp = _nxtway_gs_mode_[26]; #line 195 "src/nxt.bug1.c" assert(tmp != 2); #line 196 return; } } #line 204 "src/nxt.bug1.c" char __startrek_base_priority_OSEK_Task_ts2 = 1; #line 204 __inline static _Bool __startrek_entry_pt_OSEK_Task_ts2(void) ; #line 204 "src/nxt.bug1.c" __inline static _Bool __startrek_entry_pt_OSEK_Task_ts2(void) { { #line 204 OSEK_Task_ts2(); #line 204 return ((_Bool)1); } } #line 204 "src/nxt.bug1.c" void cil_keeperOSEK_Task_ts2(void) { { #line 204 __startrek_entry_pt_OSEK_Task_ts2(); #line 204 return; } } #line 205 "src/nxt.bug1.c" int __startrek_period_OSEK_Task_ts2 = 48; #line 206 "src/nxt.bug1.c" int __startrek_wcet_OSEK_Task_ts2 = 4; #line 207 "src/nxt.bug1.c" int __startrek_arrival_min_OSEK_Task_ts2 = 0; #line 207 "src/nxt.bug1.c" int __startrek_arrival_max_OSEK_Task_ts2 = 0; #line 209 "src/nxt.bug1.c" char __startrek_base_priority_OSEK_Task_ts1 = 2; #line 209 __inline static _Bool __startrek_entry_pt_OSEK_Task_ts1(void) ; #line 209 "src/nxt.bug1.c" __inline static _Bool __startrek_entry_pt_OSEK_Task_ts1(void) { { #line 209 OSEK_Task_ts1(); #line 209 return ((_Bool)1); } } #line 209 "src/nxt.bug1.c" void cil_keeperOSEK_Task_ts1(void) { { #line 209 __startrek_entry_pt_OSEK_Task_ts1(); #line 209 return; } } #line 210 "src/nxt.bug1.c" int __startrek_period_OSEK_Task_ts1 = 4; #line 211 "src/nxt.bug1.c" int __startrek_wcet_OSEK_Task_ts1 = 1; #line 212 "src/nxt.bug1.c" int __startrek_arrival_min_OSEK_Task_ts1 = 0; #line 212 "src/nxt.bug1.c" int __startrek_arrival_max_OSEK_Task_ts1 = 0; #line 215 extern void write_mode_on_lcd(unsigned char m ) ; #line 217 "src/nxt.bug1.c" void OSEK_Task_Background(void) { unsigned char m ; unsigned char tmp ; { #line 219 tmp = __startrek_read_nxtway_gs_mode(); #line 219 m = tmp; #line 220 ecrobot_status_monitor("NXTway-GS"); #line 221 write_mode_on_lcd(m); #line 222 return; } } #line 224 "src/nxt.bug1.c" char __startrek_base_priority_OSEK_Task_Background = 0; #line 224 __inline static _Bool __startrek_entry_pt_OSEK_Task_Background(void) ; #line 224 "src/nxt.bug1.c" __inline static _Bool __startrek_entry_pt_OSEK_Task_Background(void) { { #line 224 OSEK_Task_Background(); #line 224 return ((_Bool)1); } } #line 224 "src/nxt.bug1.c" void cil_keeperOSEK_Task_Background(void) { { #line 224 __startrek_entry_pt_OSEK_Task_Background(); #line 224 return; } } #line 225 "src/nxt.bug1.c" int __startrek_period_OSEK_Task_Background = 96; #line 226 "src/nxt.bug1.c" int __startrek_wcet_OSEK_Task_Background = 3; #line 227 "src/nxt.bug1.c" int __startrek_arrival_min_OSEK_Task_Background = 0; #line 227 "src/nxt.bug1.c" int __startrek_arrival_max_OSEK_Task_Background = 0; #line 234 "src/nxt.bug1.c" int __startrek_time_bound = 96; #line 1 "" __inline void __startrek_schedule_jobs(void) { { #line 1 "" __startrek_start_t0[0] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t0[0] = __VERIFIER_nondet_uchar(); #line 1 __VERIFIER_assume(0 <= __startrek_start_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t0[0] <= 26); #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_end_t0[0]); #line 1 __startrek_start_t1[0] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t1[0] = __VERIFIER_nondet_uchar(); #line 1 __startrek_start_t1[1] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t1[1] = __VERIFIER_nondet_uchar(); #line 1 __VERIFIER_assume(0 <= __startrek_start_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t1[1] <= 26); #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t1[0] <= __startrek_start_t1[1] - 1); #line 1 if (__startrek_start_t0[0] <= __startrek_end_t1[0]) { #line 1 if (__startrek_start_t1[0] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t1[0] < __startrek_end_t0[0]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t1[1]) { #line 1 if (__startrek_start_t1[1] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t1[1] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t1[0] < __startrek_start_t0[0]); } } } #line 1 __startrek_start_t2[0] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[0] = __startrek_start_t2[0]; #line 1 __startrek_start_t2[1] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[1] = __startrek_start_t2[1]; #line 1 __startrek_start_t2[2] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[2] = __startrek_start_t2[2]; #line 1 __startrek_start_t2[3] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[3] = __startrek_start_t2[3]; #line 1 __startrek_start_t2[4] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[4] = __startrek_start_t2[4]; #line 1 __startrek_start_t2[5] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[5] = __startrek_start_t2[5]; #line 1 __startrek_start_t2[6] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[6] = __startrek_start_t2[6]; #line 1 __startrek_start_t2[7] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[7] = __startrek_start_t2[7]; #line 1 __startrek_start_t2[8] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[8] = __startrek_start_t2[8]; #line 1 __startrek_start_t2[9] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[9] = __startrek_start_t2[9]; #line 1 __startrek_start_t2[10] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[10] = __startrek_start_t2[10]; #line 1 __startrek_start_t2[11] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[11] = __startrek_start_t2[11]; #line 1 __startrek_start_t2[12] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[12] = __startrek_start_t2[12]; #line 1 __startrek_start_t2[13] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[13] = __startrek_start_t2[13]; #line 1 __startrek_start_t2[14] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[14] = __startrek_start_t2[14]; #line 1 __startrek_start_t2[15] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[15] = __startrek_start_t2[15]; #line 1 __startrek_start_t2[16] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[16] = __startrek_start_t2[16]; #line 1 __startrek_start_t2[17] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[17] = __startrek_start_t2[17]; #line 1 __startrek_start_t2[18] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[18] = __startrek_start_t2[18]; #line 1 __startrek_start_t2[19] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[19] = __startrek_start_t2[19]; #line 1 __startrek_start_t2[20] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[20] = __startrek_start_t2[20]; #line 1 __startrek_start_t2[21] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[21] = __startrek_start_t2[21]; #line 1 __startrek_start_t2[22] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[22] = __startrek_start_t2[22]; #line 1 __startrek_start_t2[23] = __VERIFIER_nondet_uchar(); #line 1 __startrek_end_t2[23] = __startrek_start_t2[23]; #line 1 __VERIFIER_assume(0 <= __startrek_start_t2[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[23] <= 26); #line 1 __VERIFIER_assume(__startrek_end_t2[0] <= __startrek_start_t2[1] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[1] <= __startrek_start_t2[2] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[2] <= __startrek_start_t2[3] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[3] <= __startrek_start_t2[4] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[4] <= __startrek_start_t2[5] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[5] <= __startrek_start_t2[6] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[6] <= __startrek_start_t2[7] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[7] <= __startrek_start_t2[8] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[8] <= __startrek_start_t2[9] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[9] <= __startrek_start_t2[10] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[10] <= __startrek_start_t2[11] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[11] <= __startrek_start_t2[12] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[12] <= __startrek_start_t2[13] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[13] <= __startrek_start_t2[14] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[14] <= __startrek_start_t2[15] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[15] <= __startrek_start_t2[16] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[16] <= __startrek_start_t2[17] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[17] <= __startrek_start_t2[18] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[18] <= __startrek_start_t2[19] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[19] <= __startrek_start_t2[20] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[20] <= __startrek_start_t2[21] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[21] <= __startrek_start_t2[22] - 1); #line 1 __VERIFIER_assume(__startrek_end_t2[22] <= __startrek_start_t2[23] - 1); #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[0]) { #line 1 if (__startrek_start_t2[0] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[0] < __startrek_end_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[0]) { #line 1 if (__startrek_start_t2[0] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[0] < __startrek_end_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[0]) { #line 1 if (__startrek_start_t2[0] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[0] < __startrek_end_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[1]) { #line 1 if (__startrek_start_t2[1] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[1] < __startrek_end_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[1]) { #line 1 if (__startrek_start_t2[1] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[1] < __startrek_end_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[1]) { #line 1 if (__startrek_start_t2[1] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[1] < __startrek_end_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[2]) { #line 1 if (__startrek_start_t2[2] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[2]); #line 1 __VERIFIER_assume(__startrek_end_t2[2] < __startrek_end_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[2]) { #line 1 if (__startrek_start_t2[2] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[2]); #line 1 __VERIFIER_assume(__startrek_end_t2[2] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[0] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[2]) { #line 1 if (__startrek_start_t2[2] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[2]); #line 1 __VERIFIER_assume(__startrek_end_t2[2] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[0] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[3]) { #line 1 if (__startrek_start_t2[3] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[3]); #line 1 __VERIFIER_assume(__startrek_end_t2[3] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[0] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[3]) { #line 1 if (__startrek_start_t2[3] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[3]); #line 1 __VERIFIER_assume(__startrek_end_t2[3] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[1] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[3]) { #line 1 if (__startrek_start_t2[3] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[3]); #line 1 __VERIFIER_assume(__startrek_end_t2[3] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[1] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[4]) { #line 1 if (__startrek_start_t2[4] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[4]); #line 1 __VERIFIER_assume(__startrek_end_t2[4] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[1] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[4]) { #line 1 if (__startrek_start_t2[4] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[4]); #line 1 __VERIFIER_assume(__startrek_end_t2[4] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[2] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[4]) { #line 1 if (__startrek_start_t2[4] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[4]); #line 1 __VERIFIER_assume(__startrek_end_t2[4] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[2] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[5]) { #line 1 if (__startrek_start_t2[5] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[5]); #line 1 __VERIFIER_assume(__startrek_end_t2[5] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[2] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[5]) { #line 1 if (__startrek_start_t2[5] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[5]); #line 1 __VERIFIER_assume(__startrek_end_t2[5] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[3] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[5]) { #line 1 if (__startrek_start_t2[5] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[5]); #line 1 __VERIFIER_assume(__startrek_end_t2[5] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[3] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[6]) { #line 1 if (__startrek_start_t2[6] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[6]); #line 1 __VERIFIER_assume(__startrek_end_t2[6] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[3] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[6]) { #line 1 if (__startrek_start_t2[6] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[6]); #line 1 __VERIFIER_assume(__startrek_end_t2[6] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[4] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[6]) { #line 1 if (__startrek_start_t2[6] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[6]); #line 1 __VERIFIER_assume(__startrek_end_t2[6] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[4] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[7]) { #line 1 if (__startrek_start_t2[7] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[7]); #line 1 __VERIFIER_assume(__startrek_end_t2[7] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[4] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[7]) { #line 1 if (__startrek_start_t2[7] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[7]); #line 1 __VERIFIER_assume(__startrek_end_t2[7] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[5] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[7]) { #line 1 if (__startrek_start_t2[7] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[7]); #line 1 __VERIFIER_assume(__startrek_end_t2[7] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[5] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[8]) { #line 1 if (__startrek_start_t2[8] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[8]); #line 1 __VERIFIER_assume(__startrek_end_t2[8] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[5] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[8]) { #line 1 if (__startrek_start_t2[8] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[8]); #line 1 __VERIFIER_assume(__startrek_end_t2[8] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[6] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[8]) { #line 1 if (__startrek_start_t2[8] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[8]); #line 1 __VERIFIER_assume(__startrek_end_t2[8] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[6] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[9]) { #line 1 if (__startrek_start_t2[9] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[9]); #line 1 __VERIFIER_assume(__startrek_end_t2[9] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[6] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[9]) { #line 1 if (__startrek_start_t2[9] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[9]); #line 1 __VERIFIER_assume(__startrek_end_t2[9] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[7] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[9]) { #line 1 if (__startrek_start_t2[9] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[9]); #line 1 __VERIFIER_assume(__startrek_end_t2[9] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[7] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[10]) { #line 1 if (__startrek_start_t2[10] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[10]); #line 1 __VERIFIER_assume(__startrek_end_t2[10] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[7] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[10]) { #line 1 if (__startrek_start_t2[10] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[10]); #line 1 __VERIFIER_assume(__startrek_end_t2[10] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[8] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[10]) { #line 1 if (__startrek_start_t2[10] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[10]); #line 1 __VERIFIER_assume(__startrek_end_t2[10] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[8] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[11]) { #line 1 if (__startrek_start_t2[11] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[11]); #line 1 __VERIFIER_assume(__startrek_end_t2[11] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[8] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[11]) { #line 1 if (__startrek_start_t2[11] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[11]); #line 1 __VERIFIER_assume(__startrek_end_t2[11] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[9] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[11]) { #line 1 if (__startrek_start_t2[11] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[11]); #line 1 __VERIFIER_assume(__startrek_end_t2[11] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[9] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[12]) { #line 1 if (__startrek_start_t2[12] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[12]); #line 1 __VERIFIER_assume(__startrek_end_t2[12] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[9] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[12]) { #line 1 if (__startrek_start_t2[12] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[12]); #line 1 __VERIFIER_assume(__startrek_end_t2[12] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[10] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[12]) { #line 1 if (__startrek_start_t2[12] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[12]); #line 1 __VERIFIER_assume(__startrek_end_t2[12] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[10] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[13]) { #line 1 if (__startrek_start_t2[13] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[13]); #line 1 __VERIFIER_assume(__startrek_end_t2[13] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[10] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[13]) { #line 1 if (__startrek_start_t2[13] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[13]); #line 1 __VERIFIER_assume(__startrek_end_t2[13] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[11] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[13]) { #line 1 if (__startrek_start_t2[13] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[13]); #line 1 __VERIFIER_assume(__startrek_end_t2[13] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[11] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[14]) { #line 1 if (__startrek_start_t2[14] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[14]); #line 1 __VERIFIER_assume(__startrek_end_t2[14] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[11] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[14]) { #line 1 if (__startrek_start_t2[14] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[14]); #line 1 __VERIFIER_assume(__startrek_end_t2[14] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[12] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[14]) { #line 1 if (__startrek_start_t2[14] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[14]); #line 1 __VERIFIER_assume(__startrek_end_t2[14] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[12] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[15]) { #line 1 if (__startrek_start_t2[15] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[15]); #line 1 __VERIFIER_assume(__startrek_end_t2[15] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[12] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[15]) { #line 1 if (__startrek_start_t2[15] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[15]); #line 1 __VERIFIER_assume(__startrek_end_t2[15] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[13] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[15]) { #line 1 if (__startrek_start_t2[15] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[15]); #line 1 __VERIFIER_assume(__startrek_end_t2[15] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[13] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[16]) { #line 1 if (__startrek_start_t2[16] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[16]); #line 1 __VERIFIER_assume(__startrek_end_t2[16] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[13] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[16]) { #line 1 if (__startrek_start_t2[16] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[16]); #line 1 __VERIFIER_assume(__startrek_end_t2[16] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[14] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[16]) { #line 1 if (__startrek_start_t2[16] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[16]); #line 1 __VERIFIER_assume(__startrek_end_t2[16] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[14] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[17]) { #line 1 if (__startrek_start_t2[17] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[17]); #line 1 __VERIFIER_assume(__startrek_end_t2[17] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[14] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[17]) { #line 1 if (__startrek_start_t2[17] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[17]); #line 1 __VERIFIER_assume(__startrek_end_t2[17] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[15] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[17]) { #line 1 if (__startrek_start_t2[17] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[17]); #line 1 __VERIFIER_assume(__startrek_end_t2[17] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[15] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[18]) { #line 1 if (__startrek_start_t2[18] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[18]); #line 1 __VERIFIER_assume(__startrek_end_t2[18] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[15] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[18]) { #line 1 if (__startrek_start_t2[18] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[18]); #line 1 __VERIFIER_assume(__startrek_end_t2[18] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[16] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[18]) { #line 1 if (__startrek_start_t2[18] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[18]); #line 1 __VERIFIER_assume(__startrek_end_t2[18] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[16] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[19]) { #line 1 if (__startrek_start_t2[19] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[19]); #line 1 __VERIFIER_assume(__startrek_end_t2[19] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[16] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[19]) { #line 1 if (__startrek_start_t2[19] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[19]); #line 1 __VERIFIER_assume(__startrek_end_t2[19] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[17] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[19]) { #line 1 if (__startrek_start_t2[19] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[19]); #line 1 __VERIFIER_assume(__startrek_end_t2[19] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[17] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[20]) { #line 1 if (__startrek_start_t2[20] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[20]); #line 1 __VERIFIER_assume(__startrek_end_t2[20] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[17] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[20]) { #line 1 if (__startrek_start_t2[20] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[20]); #line 1 __VERIFIER_assume(__startrek_end_t2[20] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[18] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[20]) { #line 1 if (__startrek_start_t2[20] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[20]); #line 1 __VERIFIER_assume(__startrek_end_t2[20] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[18] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[21]) { #line 1 if (__startrek_start_t2[21] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[21]); #line 1 __VERIFIER_assume(__startrek_end_t2[21] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[18] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[21]) { #line 1 if (__startrek_start_t2[21] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[21]); #line 1 __VERIFIER_assume(__startrek_end_t2[21] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[19] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[21]) { #line 1 if (__startrek_start_t2[21] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[21]); #line 1 __VERIFIER_assume(__startrek_end_t2[21] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[19] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[22]) { #line 1 if (__startrek_start_t2[22] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[22]); #line 1 __VERIFIER_assume(__startrek_end_t2[22] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[19] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[22]) { #line 1 if (__startrek_start_t2[22] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[22]); #line 1 __VERIFIER_assume(__startrek_end_t2[22] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[20] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[22]) { #line 1 if (__startrek_start_t2[22] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[22]); #line 1 __VERIFIER_assume(__startrek_end_t2[22] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[20] < __startrek_start_t1[1]); } } } #line 1 if (__startrek_start_t0[0] <= __startrek_end_t2[23]) { #line 1 if (__startrek_start_t2[23] <= __startrek_end_t0[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t0[0] <= __startrek_start_t2[23]); #line 1 __VERIFIER_assume(__startrek_end_t2[23] < __startrek_end_t0[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[20] < __startrek_start_t0[0]); } } } #line 1 if (__startrek_start_t1[0] <= __startrek_end_t2[23]) { #line 1 if (__startrek_start_t2[23] <= __startrek_end_t1[0]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[0] <= __startrek_start_t2[23]); #line 1 __VERIFIER_assume(__startrek_end_t2[23] < __startrek_end_t1[0]); #line 1 __VERIFIER_assume(__startrek_end_t2[21] < __startrek_start_t1[0]); } } } #line 1 if (__startrek_start_t1[1] <= __startrek_end_t2[23]) { #line 1 if (__startrek_start_t2[23] <= __startrek_end_t1[1]) { { #line 1 __VERIFIER_assume(__startrek_start_t1[1] <= __startrek_start_t2[23]); #line 1 __VERIFIER_assume(__startrek_end_t2[23] < __startrek_end_t1[1]); #line 1 __VERIFIER_assume(__startrek_end_t2[21] < __startrek_start_t1[1]); } } } } } #line 1 "" __inline void __startrek_init_globals(void) { { #line 1 "" _i_obstacle_flag_[1] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[1] = _i_obstacle_flag_[1]; #line 1 _i_obstacle_flag_[2] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[2] = _i_obstacle_flag_[2]; #line 1 _i_obstacle_flag_[3] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[3] = _i_obstacle_flag_[3]; #line 1 _i_obstacle_flag_[4] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[4] = _i_obstacle_flag_[4]; #line 1 _i_obstacle_flag_[5] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[5] = _i_obstacle_flag_[5]; #line 1 _i_obstacle_flag_[6] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[6] = _i_obstacle_flag_[6]; #line 1 _i_obstacle_flag_[7] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[7] = _i_obstacle_flag_[7]; #line 1 _i_obstacle_flag_[8] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[8] = _i_obstacle_flag_[8]; #line 1 _i_obstacle_flag_[9] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[9] = _i_obstacle_flag_[9]; #line 1 _i_obstacle_flag_[10] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[10] = _i_obstacle_flag_[10]; #line 1 _i_obstacle_flag_[11] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[11] = _i_obstacle_flag_[11]; #line 1 _i_obstacle_flag_[12] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[12] = _i_obstacle_flag_[12]; #line 1 _i_obstacle_flag_[13] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[13] = _i_obstacle_flag_[13]; #line 1 _i_obstacle_flag_[14] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[14] = _i_obstacle_flag_[14]; #line 1 _i_obstacle_flag_[15] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[15] = _i_obstacle_flag_[15]; #line 1 _i_obstacle_flag_[16] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[16] = _i_obstacle_flag_[16]; #line 1 _i_obstacle_flag_[17] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[17] = _i_obstacle_flag_[17]; #line 1 _i_obstacle_flag_[18] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[18] = _i_obstacle_flag_[18]; #line 1 _i_obstacle_flag_[19] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[19] = _i_obstacle_flag_[19]; #line 1 _i_obstacle_flag_[20] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[20] = _i_obstacle_flag_[20]; #line 1 _i_obstacle_flag_[21] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[21] = _i_obstacle_flag_[21]; #line 1 _i_obstacle_flag_[22] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[22] = _i_obstacle_flag_[22]; #line 1 _i_obstacle_flag_[23] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[23] = _i_obstacle_flag_[23]; #line 1 _i_obstacle_flag_[24] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[24] = _i_obstacle_flag_[24]; #line 1 _i_obstacle_flag_[25] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[25] = _i_obstacle_flag_[25]; #line 1 _i_obstacle_flag_[26] = __VERIFIER_nondet__Bool(); #line 1 _obstacle_flag_[26] = _i_obstacle_flag_[26]; #line 1 _i_nxtway_gs_mode_[1] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[1] = _i_nxtway_gs_mode_[1]; #line 1 _i_nxtway_gs_mode_[2] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[2] = _i_nxtway_gs_mode_[2]; #line 1 _i_nxtway_gs_mode_[3] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[3] = _i_nxtway_gs_mode_[3]; #line 1 _i_nxtway_gs_mode_[4] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[4] = _i_nxtway_gs_mode_[4]; #line 1 _i_nxtway_gs_mode_[5] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[5] = _i_nxtway_gs_mode_[5]; #line 1 _i_nxtway_gs_mode_[6] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[6] = _i_nxtway_gs_mode_[6]; #line 1 _i_nxtway_gs_mode_[7] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[7] = _i_nxtway_gs_mode_[7]; #line 1 _i_nxtway_gs_mode_[8] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[8] = _i_nxtway_gs_mode_[8]; #line 1 _i_nxtway_gs_mode_[9] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[9] = _i_nxtway_gs_mode_[9]; #line 1 _i_nxtway_gs_mode_[10] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[10] = _i_nxtway_gs_mode_[10]; #line 1 _i_nxtway_gs_mode_[11] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[11] = _i_nxtway_gs_mode_[11]; #line 1 _i_nxtway_gs_mode_[12] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[12] = _i_nxtway_gs_mode_[12]; #line 1 _i_nxtway_gs_mode_[13] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[13] = _i_nxtway_gs_mode_[13]; #line 1 _i_nxtway_gs_mode_[14] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[14] = _i_nxtway_gs_mode_[14]; #line 1 _i_nxtway_gs_mode_[15] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[15] = _i_nxtway_gs_mode_[15]; #line 1 _i_nxtway_gs_mode_[16] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[16] = _i_nxtway_gs_mode_[16]; #line 1 _i_nxtway_gs_mode_[17] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[17] = _i_nxtway_gs_mode_[17]; #line 1 _i_nxtway_gs_mode_[18] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[18] = _i_nxtway_gs_mode_[18]; #line 1 _i_nxtway_gs_mode_[19] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[19] = _i_nxtway_gs_mode_[19]; #line 1 _i_nxtway_gs_mode_[20] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[20] = _i_nxtway_gs_mode_[20]; #line 1 _i_nxtway_gs_mode_[21] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[21] = _i_nxtway_gs_mode_[21]; #line 1 _i_nxtway_gs_mode_[22] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[22] = _i_nxtway_gs_mode_[22]; #line 1 _i_nxtway_gs_mode_[23] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[23] = _i_nxtway_gs_mode_[23]; #line 1 _i_nxtway_gs_mode_[24] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[24] = _i_nxtway_gs_mode_[24]; #line 1 _i_nxtway_gs_mode_[25] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[25] = _i_nxtway_gs_mode_[25]; #line 1 _i_nxtway_gs_mode_[26] = __VERIFIER_nondet_uchar(); #line 1 _nxtway_gs_mode_[26] = _i_nxtway_gs_mode_[26]; } } #line 1 "" __inline static _Bool __startrek_cs_t0(void) { _Bool c1 ; unsigned char o2 ; { #line 1 if (__startrek_is_first_cs) { { #line 1 "" __startrek_is_first_cs = 0; } } #line 1 if (__startrek_lock) { #line 1 return (0); } #line 1 c1 = __VERIFIER_nondet_bool(); #line 1 if (c1) { #line 1 return (0); } #line 1 o2 = __startrek_round; #line 1 __startrek_round = __VERIFIER_nondet_uchar(); #line 1 __VERIFIER_assume(__startrek_round > o2); #line 1 __VERIFIER_assume(__startrek_round <= __startrek_job_end); #line 1 if (__startrek_round != __startrek_job_end) { { #line 1 if (__startrek_start_t1[0] < __startrek_round) { #line 1 __VERIFIER_assume(__startrek_round > __startrek_end_t1[0]); } #line 1 if (__startrek_start_t1[1] < __startrek_round) { #line 1 __VERIFIER_assume(__startrek_round > __startrek_end_t1[1]); } } } #line 1 return (1); } } #line 1 "" __inline static _Bool __startrek_cs_t1(void) { _Bool c1 ; unsigned char o2 ; { #line 1 if (__startrek_is_first_cs) { { #line 1 "" __startrek_is_first_cs = 0; } } #line 1 if (__startrek_lock) { #line 1 return (0); } #line 1 c1 = __VERIFIER_nondet_bool(); #line 1 if (c1) { #line 1 return (0); } #line 1 o2 = __startrek_round; #line 1 __startrek_round = __VERIFIER_nondet_uchar(); #line 1 __VERIFIER_assume(__startrek_round > o2); #line 1 __VERIFIER_assume(__startrek_round <= __startrek_job_end); #line 1 if (__startrek_round != __startrek_job_end) { { } } #line 1 return (1); } } #line 1 "" __inline static _Bool __startrek_cs_t2(void) { { #line 1 "" return (0); } } #line 1 "" __inline void __startrek_check_assumptions(void) { { #line 1 "" __VERIFIER_assume(_i_obstacle_flag_[26] == _obstacle_flag_[25]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[25] == _obstacle_flag_[24]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[24] == _obstacle_flag_[23]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[23] == _obstacle_flag_[22]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[22] == _obstacle_flag_[21]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[21] == _obstacle_flag_[20]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[20] == _obstacle_flag_[19]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[19] == _obstacle_flag_[18]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[18] == _obstacle_flag_[17]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[17] == _obstacle_flag_[16]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[16] == _obstacle_flag_[15]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[15] == _obstacle_flag_[14]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[14] == _obstacle_flag_[13]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[13] == _obstacle_flag_[12]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[12] == _obstacle_flag_[11]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[11] == _obstacle_flag_[10]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[10] == _obstacle_flag_[9]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[9] == _obstacle_flag_[8]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[8] == _obstacle_flag_[7]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[7] == _obstacle_flag_[6]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[6] == _obstacle_flag_[5]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[5] == _obstacle_flag_[4]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[4] == _obstacle_flag_[3]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[3] == _obstacle_flag_[2]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[2] == _obstacle_flag_[1]); #line 1 __VERIFIER_assume(_i_obstacle_flag_[1] == _obstacle_flag_[0]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[26] == _nxtway_gs_mode_[25]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[25] == _nxtway_gs_mode_[24]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[24] == _nxtway_gs_mode_[23]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[23] == _nxtway_gs_mode_[22]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[22] == _nxtway_gs_mode_[21]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[21] == _nxtway_gs_mode_[20]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[20] == _nxtway_gs_mode_[19]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[19] == _nxtway_gs_mode_[18]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[18] == _nxtway_gs_mode_[17]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[17] == _nxtway_gs_mode_[16]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[16] == _nxtway_gs_mode_[15]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[15] == _nxtway_gs_mode_[14]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[14] == _nxtway_gs_mode_[13]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[13] == _nxtway_gs_mode_[12]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[12] == _nxtway_gs_mode_[11]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[11] == _nxtway_gs_mode_[10]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[10] == _nxtway_gs_mode_[9]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[9] == _nxtway_gs_mode_[8]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[8] == _nxtway_gs_mode_[7]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[7] == _nxtway_gs_mode_[6]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[6] == _nxtway_gs_mode_[5]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[5] == _nxtway_gs_mode_[4]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[4] == _nxtway_gs_mode_[3]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[3] == _nxtway_gs_mode_[2]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[2] == _nxtway_gs_mode_[1]); #line 1 __VERIFIER_assume(_i_nxtway_gs_mode_[1] == _nxtway_gs_mode_[0]); } } #line 1 "" __inline void __startrek_user_init(void) { { } } #line 1 "" __inline void __startrek_check_assertions(void) { { } } #line 1 "" void __main(void) { _Bool c1 ; { #line 1 "" __startrek_error_round = 27; #line 1 __startrek_schedule_jobs(); #line 1 __startrek_init_globals(); { { #line 1 __startrek_task = 0; #line 1 __startrek_job = 0; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t0[0]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t0[0]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_Background(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } } { #line 1 __startrek_task = 1; #line 1 __startrek_job = 0; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t1[0]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t1[0]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts2(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 1; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t1[1]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t1[1]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts2(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } } { #line 1 __startrek_task = 2; #line 1 __startrek_job = 0; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[0]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[0]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 1; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[1]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[1]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 2; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[2]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[2]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 3; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[3]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[3]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 4; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[4]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[4]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 5; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[5]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[5]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 6; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[6]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[6]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 7; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[7]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[7]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 8; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[8]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[8]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 9; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[9]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[9]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 10; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[10]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[10]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 11; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[11]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[11]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 12; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[12]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[12]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 13; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[13]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[13]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 14; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[14]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[14]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 15; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[15]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[15]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 16; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[16]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[16]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 17; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[17]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[17]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 18; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[18]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[18]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 19; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[19]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[19]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 20; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[20]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[20]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 21; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[21]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[21]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 22; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[22]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[22]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } #line 1 __startrek_job = 23; #line 1 __startrek_is_first_cs = 1; #line 1 __startrek_round = __startrek_start_t2[23]; #line 1 if (__startrek_round < __startrek_error_round) { { #line 1 __startrek_job_end = __startrek_end_t2[23]; #line 1 c1 = __startrek_entry_pt_OSEK_Task_ts1(); #line 1 __startrek_lock = 0; #line 1 __VERIFIER_assume(__startrek_round == __startrek_job_end); } } } } #line 1 __startrek_round = 27; #line 1 __startrek_check_assumptions(); #line 1 __startrek_check_assertions(); #line 1 if (__startrek_hyper_period == 0) { { #line 1 __startrek_user_final(); } } } } #line 1 "" int main(void) { { #line 1 "" __startrek_init_shared(); #line 1 __startrek_user_init(); #line 1 __startrek_hyper_period = 0; #line 1 __main(); } } #line 1 "" __inline static unsigned char __startrek_read_nxtway_gs_mode(void) { unsigned char r1 ; _Bool c2 ; unsigned char or3 ; { #line 1 switch (__startrek_task) { case 0: { #line 1 or3 = __startrek_round; #line 1 c2 = __startrek_cs_t0(); { } } #line 1 break; case 1: { #line 1 or3 = __startrek_round; #line 1 c2 = __startrek_cs_t1(); { } } #line 1 break; case 2: { #line 1 or3 = __startrek_round; #line 1 c2 = __startrek_cs_t2(); { } } #line 1 break; } #line 1 r1 = _nxtway_gs_mode_[__startrek_round]; #line 1 return (r1); } } #line 1 "" __inline static _Bool __startrek_read_obstacle_flag(void) { _Bool r1 ; _Bool c2 ; unsigned char or3 ; { #line 1 switch (__startrek_task) { case 0: { #line 1 or3 = __startrek_round; #line 1 c2 = __startrek_cs_t0(); { } } #line 1 break; case 1: { #line 1 or3 = __startrek_round; #line 1 c2 = __startrek_cs_t1(); { } } #line 1 break; case 2: { #line 1 or3 = __startrek_round; #line 1 c2 = __startrek_cs_t2(); { } } #line 1 break; } #line 1 r1 = _obstacle_flag_[__startrek_round]; #line 1 return (r1); } } #line 1 "" __inline static void __startrek_write_nxtway_gs_mode(unsigned char arg ) { _Bool c2 ; unsigned char or3 ; { #line 1 switch (__startrek_task) { case 0: { #line 1 or3 = __startrek_round; #line 1 c2 = __startrek_cs_t0(); { } } #line 1 break; case 1: { #line 1 or3 = __startrek_round; #line 1 c2 = __startrek_cs_t1(); { } } #line 1 break; case 2: { #line 1 or3 = __startrek_round; #line 1 c2 = __startrek_cs_t2(); { } } #line 1 break; } #line 1 _nxtway_gs_mode_[__startrek_round] = arg; } } #line 1 "" __inline static void __startrek_write_obstacle_flag(_Bool arg ) { _Bool c2 ; unsigned char or3 ; { #line 1 switch (__startrek_task) { case 0: { #line 1 or3 = __startrek_round; #line 1 c2 = __startrek_cs_t0(); { } } #line 1 break; case 1: { #line 1 or3 = __startrek_round; #line 1 c2 = __startrek_cs_t1(); { } } #line 1 break; case 2: { #line 1 or3 = __startrek_round; #line 1 c2 = __startrek_cs_t2(); { } } #line 1 break; } #line 1 _obstacle_flag_[__startrek_round] = arg; } } #line 1 "" __inline void __startrek_init_shared(void) { { #line 1 "" _obstacle_flag_[0] = __startrek_hidden_obstacle_flag; #line 1 _nxtway_gs_mode_[0] = __startrek_hidden_nxtway_gs_mode; } }