           *******************************************************
                       Semantic Analysis of SPARK Text
                             Examiner Pro Edition

           *******************************************************


                    procedure Skein.Skein_Start_New_Type




For path(s) from start to run-time check associated with statement of line 211:

procedure_skein_start_new_type_1.
H1:    true .
H2:    field_type >= spark__unsigned__u6__first .
H3:    field_type <= spark__unsigned__u6__last .
H4:    true .
H5:    true .
H6:    fld_byte_count(ctx) >= natural__first .
H7:    fld_byte_count(ctx) <= natural__last .
H8:    fld_hash_bit_len(ctx) >= hash_bit_length__first .
H9:    fld_hash_bit_len(ctx) <= hash_bit_length__last .
H10:   true .
H11:   true .
H12:   fld_field_type(fld_tweak_words(ctx)) >= 
           spark__unsigned__u6__first .
H13:   fld_field_type(fld_tweak_words(ctx)) <= 
           spark__unsigned__u6__last .
H14:   true .
H15:   fld_tree_level(fld_tweak_words(ctx)) >= 
           spark__unsigned__u7__first .
H16:   fld_tree_level(fld_tweak_words(ctx)) <= 
           spark__unsigned__u7__last .
H17:   fld_reserved(fld_tweak_words(ctx)) >= 
           spark__unsigned__u16__first .
H18:   fld_reserved(fld_tweak_words(ctx)) <= 
           spark__unsigned__u16__last .
H19:   fld_byte_count_msb(fld_tweak_words(ctx)) >= 
           spark__unsigned__u32__first .
H20:   fld_byte_count_msb(fld_tweak_words(ctx)) <= 
           spark__unsigned__u32__last .
H21:   fld_byte_count_lsb(fld_tweak_words(ctx)) >= 
           spark__unsigned__u64__first .
H22:   fld_byte_count_lsb(fld_tweak_words(ctx)) <= 
           spark__unsigned__u64__last .
        ->
C1:    field_type >= spark__unsigned__u6__first .
C2:    field_type <= spark__unsigned__u6__last .
C3:    0 >= spark__unsigned__u7__first .
C4:    0 <= spark__unsigned__u7__last .
C5:    0 >= spark__unsigned__u16__first .
C6:    0 <= spark__unsigned__u16__last .
C7:    0 >= spark__unsigned__u32__first .
C8:    0 <= spark__unsigned__u32__last .
C9:    0 >= spark__unsigned__u64__first .
C10:   0 <= spark__unsigned__u64__last .
 

For path(s) from start to run-time check associated with statement of line 219:

procedure_skein_start_new_type_2.
H1:    true .
H2:    field_type >= spark__unsigned__u6__first .
H3:    field_type <= spark__unsigned__u6__last .
H4:    true .
H5:    true .
H6:    fld_byte_count(ctx) >= natural__first .
H7:    fld_byte_count(ctx) <= natural__last .
H8:    fld_hash_bit_len(ctx) >= hash_bit_length__first .
H9:    fld_hash_bit_len(ctx) <= hash_bit_length__last .
H10:   true .
H11:   true .
H12:   fld_field_type(fld_tweak_words(ctx)) >= 
           spark__unsigned__u6__first .
H13:   fld_field_type(fld_tweak_words(ctx)) <= 
           spark__unsigned__u6__last .
H14:   true .
H15:   fld_tree_level(fld_tweak_words(ctx)) >= 
           spark__unsigned__u7__first .
H16:   fld_tree_level(fld_tweak_words(ctx)) <= 
           spark__unsigned__u7__last .
H17:   fld_reserved(fld_tweak_words(ctx)) >= 
           spark__unsigned__u16__first .
H18:   fld_reserved(fld_tweak_words(ctx)) <= 
           spark__unsigned__u16__last .
H19:   fld_byte_count_msb(fld_tweak_words(ctx)) >= 
           spark__unsigned__u32__first .
H20:   fld_byte_count_msb(fld_tweak_words(ctx)) <= 
           spark__unsigned__u32__last .
H21:   fld_byte_count_lsb(fld_tweak_words(ctx)) >= 
           spark__unsigned__u64__first .
H22:   fld_byte_count_lsb(fld_tweak_words(ctx)) <= 
           spark__unsigned__u64__last .
H23:   field_type >= spark__unsigned__u6__first .
H24:   field_type <= spark__unsigned__u6__last .
H25:   0 >= spark__unsigned__u7__first .
H26:   0 <= spark__unsigned__u7__last .
H27:   0 >= spark__unsigned__u16__first .
H28:   0 <= spark__unsigned__u16__last .
H29:   0 >= spark__unsigned__u32__first .
H30:   0 <= spark__unsigned__u32__last .
H31:   0 >= spark__unsigned__u64__first .
H32:   0 <= spark__unsigned__u64__last .
        ->
C1:    0 >= natural__first .
C2:    0 <= natural__last .
 

For path(s) from start to finish:

procedure_skein_start_new_type_3.
H1:    true .
H2:    field_type >= spark__unsigned__u6__first .
H3:    field_type <= spark__unsigned__u6__last .
H4:    true .
H5:    true .
H6:    fld_byte_count(ctx) >= natural__first .
H7:    fld_byte_count(ctx) <= natural__last .
H8:    fld_hash_bit_len(ctx) >= hash_bit_length__first .
H9:    fld_hash_bit_len(ctx) <= hash_bit_length__last .
H10:   true .
H11:   true .
H12:   fld_field_type(fld_tweak_words(ctx)) >= 
           spark__unsigned__u6__first .
H13:   fld_field_type(fld_tweak_words(ctx)) <= 
           spark__unsigned__u6__last .
H14:   true .
H15:   fld_tree_level(fld_tweak_words(ctx)) >= 
           spark__unsigned__u7__first .
H16:   fld_tree_level(fld_tweak_words(ctx)) <= 
           spark__unsigned__u7__last .
H17:   fld_reserved(fld_tweak_words(ctx)) >= 
           spark__unsigned__u16__first .
H18:   fld_reserved(fld_tweak_words(ctx)) <= 
           spark__unsigned__u16__last .
H19:   fld_byte_count_msb(fld_tweak_words(ctx)) >= 
           spark__unsigned__u32__first .
H20:   fld_byte_count_msb(fld_tweak_words(ctx)) <= 
           spark__unsigned__u32__last .
H21:   fld_byte_count_lsb(fld_tweak_words(ctx)) >= 
           spark__unsigned__u64__first .
H22:   fld_byte_count_lsb(fld_tweak_words(ctx)) <= 
           spark__unsigned__u64__last .
H23:   field_type >= spark__unsigned__u6__first .
H24:   field_type <= spark__unsigned__u6__last .
H25:   0 >= spark__unsigned__u7__first .
H26:   0 <= spark__unsigned__u7__last .
H27:   0 >= spark__unsigned__u16__first .
H28:   0 <= spark__unsigned__u16__last .
H29:   0 >= spark__unsigned__u32__first .
H30:   0 <= spark__unsigned__u32__last .
H31:   0 >= spark__unsigned__u64__first .
H32:   0 <= spark__unsigned__u64__last .
H33:   0 >= natural__first .
H34:   0 <= natural__last .
        ->
C1:    upf_byte_count(upf_tweak_words(ctx, mk__tweak_value(
           byte_count_lsb := 0, byte_count_msb := 0, 
           reserved := 0, tree_level := 0, bit_pad := false, 
           field_type := field_type, first_block := 
           first_block, final_block := final_block)), 0) = 
           upf_byte_count(upf_tweak_words(ctx, 
           mk__tweak_value(byte_count_lsb := 0, 
           byte_count_msb := 0, reserved := 0, tree_level := 0, 
           bit_pad := false, field_type := field_type, 
           first_block := first_block, final_block := 
           final_block)), 0) .
C2:    fld_hash_bit_len(upf_byte_count(upf_tweak_words(ctx, 
           mk__tweak_value(byte_count_lsb := 0, 
           byte_count_msb := 0, reserved := 0, tree_level := 0, 
           bit_pad := false, field_type := field_type, 
           first_block := first_block, final_block := 
           final_block)), 0)) = fld_hash_bit_len(ctx) .
C3:    fld_byte_count(upf_byte_count(upf_tweak_words(ctx, 
           mk__tweak_value(byte_count_lsb := 0, 
           byte_count_msb := 0, reserved := 0, tree_level := 0, 
           bit_pad := false, field_type := field_type, 
           first_block := first_block, final_block := 
           final_block)), 0)) = 0 .
 

