@ -196,7 +196,7 @@ let%test_module _ =
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            % a_2  =  % a0_10 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					          ∧  16  =  % m_8  =  % n_9 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					          ∧  ( ⟨ 16 , % a_2 ⟩ ^ ⟨ 16 , % a1_11 ⟩ )  =  % a_1 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					          ∧  ( ( 16  ×   1 )   +  (1  ×    %k_5 ) )  - [  % k_5 ,  16  ) ->  ⟨ 16 , % a1_11 ⟩  | } ] 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					          ∧  ( 16  +   %k_5 )  - [  % k_5 ,  16  ) ->  ⟨ 16 , % a1_11 ⟩  | } ] 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    let % expect_test  _  = 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      infer_frame 
 
				
			 
			
		
	
	
		
			
				
					
						
						
						
							
								 
							 
						
					 
				
				 
				 
				
					@ -218,7 +218,7 @@ let%test_module _ =
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            % a_2  =  % a0_10 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					          ∧  16  =  % m_8  =  % n_9 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					          ∧  ( ⟨ 16 , % a_2 ⟩ ^ ⟨ 16 , % a1_11 ⟩ )  =  % a_1 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					          ∧  ( ( 16  ×   1 )   +  (1  ×    %k_5 ) )  - [  % k_5 ,  16  ) ->  ⟨ 16 , % a1_11 ⟩  | } ] 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					          ∧  ( 16  +   %k_5 )  - [  % k_5 ,  16  ) ->  ⟨ 16 , % a1_11 ⟩  | } ] 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    let  seg_split_symbolically  = 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					      Sh . star 
 
				
			 
			
		
	
	
		
			
				
					
						
						
						
							
								 
							 
						
					 
				
				 
				 
				
					@ -237,8 +237,7 @@ let%test_module _ =
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        { | 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        (  infer_frame : 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            % l_6 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					              - [  % l_6 ,  16  ) -> 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					              ⟨ ( 8  ×   % n_9 ) , % a_2 ⟩ ^ ⟨ ( ( 16  ×   1 )  +  ( - 8  ×   % n_9 ) ) , % a_3 ⟩ 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					              - [  % l_6 ,  16  ) ->  ⟨ ( 8  ×   % n_9 ) , % a_2 ⟩ ^ ⟨ ( 16  +  ( - 8  ×   % n_9 ) ) , % a_3 ⟩ 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					          *  (  (   2  =  % n_9  ∧  emp ) 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            ∨   (   0  =  % n_9  ∧  emp ) 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            ∨   (   1  =  % n_9  ∧  emp ) 
 
				
			 
			
		
	
	
		
			
				
					
						
						
						
							
								 
							 
						
					 
				
				 
				 
				
					@ -249,7 +248,7 @@ let%test_module _ =
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            (  (   % a_1  =  % a_2 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					               ∧  2  =  % n_9 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					               ∧  16  =  % m_8 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					               ∧  ( ( 16  ×   1 )   +  (1  ×    %l_6 ) )  - [  % l_6 ,  16  ) ->  ⟨ 0 , % a_3 ⟩ ) 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					               ∧  ( 16  +   %l_6 )  - [  % l_6 ,  16  ) ->  ⟨ 0 , % a_3 ⟩ ) 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            ∨   (   % a_3  =  _ 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					               ∧  1  =  % n_9 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					               ∧  16  =  % m_8 
 
				
			 
			
		
	
	
		
			
				
					
						
						
						
							
								 
							 
						
					 
				
				 
				 
				
					@ -273,8 +272,7 @@ let%test_module _ =
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        (  infer_frame : 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					            ( % n_9  ≤  2 ) 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					          ∧  % l_6 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					              - [  % l_6 ,  16  ) -> 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					              ⟨ ( 8  ×   % n_9 ) , % a_2 ⟩ ^ ⟨ ( ( 16  ×   1 )  +  ( - 8  ×   % n_9 ) ) , % a_3 ⟩ 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					              - [  % l_6 ,  16  ) ->  ⟨ ( 8  ×   % n_9 ) , % a_2 ⟩ ^ ⟨ ( 16  +  ( - 8  ×   % n_9 ) ) , % a_3 ⟩ 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					          \ -  ∃  % a_1 ,  % m_8  . 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					              % l_6  - [  % l_6 ,  % m_8  ) ->  ⟨ % m_8 , % a_1 ⟩ 
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					        )  infer_frame :  | } ]