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

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



SPARK Simplifier Pro Edition


procedure Skein.Skein_512_Update




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

procedure_skein_512_update_1.
*** true .          /* all conclusions proved */


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

procedure_skein_512_update_2.
*** true .          /* all conclusions proved */


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

procedure_skein_512_update_3.
*** true .          /* all conclusions proved */


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

procedure_skein_512_update_4.
*** true .          /* all conclusions proved */


For path(s) from start to check associated with statement of line 793:

procedure_skein_512_update_5.
*** true .          /* all conclusions proved */


For path(s) from start to check associated with statement of line 795:

procedure_skein_512_update_6.
*** true .          /* all conclusions proved */


For path(s) from start to precondition check associated with statement of line 
          796:

procedure_skein_512_update_7.
*** true .          /* all conclusions proved */


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

procedure_skein_512_update_8.
*** true .          /* all conclusions proved */


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

procedure_skein_512_update_9.
*** true .          /* all conclusions proved */


For path(s) from start to check associated with statement of line 800:

procedure_skein_512_update_10.
*** true .          /* all conclusions proved */


For path(s) from start to precondition check associated with statement of line 
          803:

procedure_skein_512_update_11.
*** true .          /* all conclusions proved */


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

procedure_skein_512_update_12.
*** true .          /* all conclusions proved */


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

procedure_skein_512_update_13.
*** true .          /* all conclusions proved */


procedure_skein_512_update_14.
*** true .          /* all conclusions proved */


For path(s) from start to precondition check associated with statement of line 
          816:

procedure_skein_512_update_15.
H1:    fld_hash_bit_len(fld_h(ctx)) >= 1 .
H2:    fld_hash_bit_len(fld_h(ctx)) <= 2147483640 .
H3:    fld_byte_count(fld_h(ctx)) <= 64 .
H4:    msg__index__subtype__1__first = 0 .
H5:    msg__index__subtype__1__last <= 2147483582 .
H6:    for_all(i___2 : integer, 0 <= i___2 and i___2 <= 63 -> 0 <= element(
          fld_b(ctx), [i___2]) and element(fld_b(ctx), [i___2]) <= 255) .
H7:    for_all(i___1 : integer, 0 <= i___1 and i___1 <= 7 -> 0 <= element(fld_x(
          ctx), [i___1]) and element(fld_x(ctx), [i___1]) <= 
          18446744073709551615) .
H8:    fld_field_type(fld_tweak_words(fld_h(ctx))) >= 0 .
H9:    fld_field_type(fld_tweak_words(fld_h(ctx))) <= 63 .
H10:   fld_tree_level(fld_tweak_words(fld_h(ctx))) >= 0 .
H11:   fld_tree_level(fld_tweak_words(fld_h(ctx))) <= 127 .
H12:   fld_reserved(fld_tweak_words(fld_h(ctx))) >= 0 .
H13:   fld_reserved(fld_tweak_words(fld_h(ctx))) <= 65535 .
H14:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx))) >= 0 .
H15:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx))) <= 4294967295 .
H16:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx))) >= 0 .
H17:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx))) <= 18446744073709551615 .
H18:   for_all(i___1 : integer, msg__index__subtype__1__first <= i___1 and 
          i___1 <= msg__index__subtype__1__last -> 0 <= element(msg, [i___1]) 
          and element(msg, [i___1]) <= 255) .
H19:   msg__index__subtype__1__last + 1 + fld_byte_count(fld_h(ctx)) <= 
          2147483647 .
H20:   fld_byte_count(fld_h(ctx)) > 0 .
H21:   fld_hash_bit_len(fld_h(ctx)) > 0 .
H22:   fld_hash_bit_len(fld_h(ctx__1)) = fld_hash_bit_len(fld_h(ctx)) .
H23:   fld_byte_count(fld_h(ctx__1)) = 64 .
H24:   for_all(i___2 : integer, 0 <= i___2 and i___2 <= 63 -> 0 <= element(
          fld_b(ctx__1), [i___2]) and element(fld_b(ctx__1), [i___2]) <= 255) .
H25:   for_all(i___1 : integer, 0 <= i___1 and i___1 <= 7 -> 0 <= element(fld_x(
          ctx__1), [i___1]) and element(fld_x(ctx__1), [i___1]) <= 
          18446744073709551615) .
H26:   fld_hash_bit_len(fld_h(ctx)) <= 2147483640 .
H27:   fld_field_type(fld_tweak_words(fld_h(ctx__1))) >= 0 .
H28:   fld_field_type(fld_tweak_words(fld_h(ctx__1))) <= 63 .
H29:   fld_tree_level(fld_tweak_words(fld_h(ctx__1))) >= 0 .
H30:   fld_tree_level(fld_tweak_words(fld_h(ctx__1))) <= 127 .
H31:   fld_reserved(fld_tweak_words(fld_h(ctx__1))) >= 0 .
H32:   fld_reserved(fld_tweak_words(fld_h(ctx__1))) <= 65535 .
H33:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx__1))) >= 0 .
H34:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx__1))) <= 4294967295 .
H35:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx__1))) >= 0 .
H36:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx__1))) <= 
          18446744073709551615 .
H37:   for_all(i___1 : integer, 0 <= i___1 and i___1 <= 63 -> 0 <= element(
          fld_b(ctx__1), [i___1]) and element(fld_b(ctx__1), [i___1]) <= 255) .
H38:   fld_hash_bit_len(fld_h(ctx)) >= 1 .
H39:   fld_hash_bit_len(fld_h(ctx)) <= 2147483640 .
H40:   fld_hash_bit_len(fld_h(ctx__2)) = fld_hash_bit_len(fld_h(ctx)) .
H41:   fld_byte_count(fld_h(ctx__1)) >= 0 .
H42:   fld_byte_count(fld_h(ctx__1)) <= 64 .
H43:   fld_byte_count(fld_h(ctx__2)) = fld_byte_count(fld_h(ctx__1)) .
H44:   for_all(i___2 : integer, 0 <= i___2 and i___2 <= 63 -> 0 <= element(
          fld_b(ctx__2), [i___2]) and element(fld_b(ctx__2), [i___2]) <= 255) .
H45:   for_all(i___1 : integer, 0 <= i___1 and i___1 <= 7 -> 0 <= element(fld_x(
          ctx__2), [i___1]) and element(fld_x(ctx__2), [i___1]) <= 
          18446744073709551615) .
H46:   fld_field_type(fld_tweak_words(fld_h(ctx__2))) >= 0 .
H47:   fld_field_type(fld_tweak_words(fld_h(ctx__2))) <= 63 .
H48:   fld_tree_level(fld_tweak_words(fld_h(ctx__2))) >= 0 .
H49:   fld_tree_level(fld_tweak_words(fld_h(ctx__2))) <= 127 .
H50:   fld_reserved(fld_tweak_words(fld_h(ctx__2))) >= 0 .
H51:   fld_reserved(fld_tweak_words(fld_h(ctx__2))) <= 65535 .
H52:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx__2))) >= 0 .
H53:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx__2))) <= 4294967295 .
H54:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx__2))) >= 0 .
H55:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx__2))) <= 
          18446744073709551615 .
H56:   msg__index__subtype__1__last + fld_byte_count(fld_h(ctx)) > 127 .
H57:   (msg__index__subtype__1__last + 1 - (64 - fld_byte_count(fld_h(ctx))) - 
          1) div 64 >= 1 .
H58:   (msg__index__subtype__1__last + 1 - (64 - fld_byte_count(fld_h(ctx))) - 
          1) div 64 <= 33554431 .
H59:   integer__size >= 0 .
H60:   natural__size >= 0 .
H61:   spark__unsigned__u6__size >= 0 .
H62:   spark__unsigned__u7__size >= 0 .
H63:   spark__unsigned__byte__size >= 0 .
H64:   spark__unsigned__u16__size >= 0 .
H65:   spark__unsigned__u32__size >= 0 .
H66:   spark__unsigned__u64__size >= 0 .
H67:   spark__crypto__word_count_t__size >= 0 .
H68:   hash_bit_length__size >= 0 .
H69:   initialized_hash_bit_length__size >= 0 .
H70:   skein_512_state_words_index__size >= 0 .
H71:   skein_512_block_bytes_count__size >= 0 .
H72:   skein_512_block_bytes_index__size >= 0 .
H73:   positive_block_512_count_t__size >= 0 .
H74:   skein_512_context__size >= 0 .
H75:   msg__index__subtype__1__first <= msg__index__subtype__1__last .
H76:   context_header__size >= 0 .
H77:   msg__index__subtype__1__first >= 0 .
H78:   msg__index__subtype__1__last >= 0 .
H79:   msg__index__subtype__1__last <= 2147483647 .
H80:   msg__index__subtype__1__first <= 2147483647 .
       ->
C1:    msg__index__subtype__1__last + 64 * ((64 - (msg__index__subtype__1__last 
          + fld_byte_count(fld_h(ctx)))) div 64) + fld_byte_count(fld_h(ctx)) > 
          62 .
C2:    64 - fld_byte_count(fld_h(ctx)) + 63 <= msg__index__subtype__1__last .


procedure_skein_512_update_16.
*** true .          /* all conclusions proved */


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

procedure_skein_512_update_17.
*** true .          /* all conclusions proved */


procedure_skein_512_update_18.
*** true .          /* all conclusions proved */


For path(s) from start to check associated with statement of line 824:

procedure_skein_512_update_19.
H1:    fld_hash_bit_len(fld_h(ctx)) >= 1 .
H2:    fld_hash_bit_len(fld_h(ctx)) <= 2147483640 .
H3:    fld_byte_count(fld_h(ctx)) <= 64 .
H4:    msg__index__subtype__1__first = 0 .
H5:    msg__index__subtype__1__last <= 2147483582 .
H6:    for_all(i___2 : integer, 0 <= i___2 and i___2 <= 63 -> 0 <= element(
          fld_b(ctx), [i___2]) and element(fld_b(ctx), [i___2]) <= 255) .
H7:    for_all(i___1 : integer, 0 <= i___1 and i___1 <= 7 -> 0 <= element(fld_x(
          ctx), [i___1]) and element(fld_x(ctx), [i___1]) <= 
          18446744073709551615) .
H8:    fld_field_type(fld_tweak_words(fld_h(ctx))) >= 0 .
H9:    fld_field_type(fld_tweak_words(fld_h(ctx))) <= 63 .
H10:   fld_tree_level(fld_tweak_words(fld_h(ctx))) >= 0 .
H11:   fld_tree_level(fld_tweak_words(fld_h(ctx))) <= 127 .
H12:   fld_reserved(fld_tweak_words(fld_h(ctx))) >= 0 .
H13:   fld_reserved(fld_tweak_words(fld_h(ctx))) <= 65535 .
H14:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx))) >= 0 .
H15:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx))) <= 4294967295 .
H16:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx))) >= 0 .
H17:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx))) <= 18446744073709551615 .
H18:   for_all(i___1 : integer, msg__index__subtype__1__first <= i___1 and 
          i___1 <= msg__index__subtype__1__last -> 0 <= element(msg, [i___1]) 
          and element(msg, [i___1]) <= 255) .
H19:   msg__index__subtype__1__last + 1 + fld_byte_count(fld_h(ctx)) <= 
          2147483647 .
H20:   fld_byte_count(fld_h(ctx)) > 0 .
H21:   fld_hash_bit_len(fld_h(ctx)) > 0 .
H22:   fld_hash_bit_len(fld_h(ctx__1)) = fld_hash_bit_len(fld_h(ctx)) .
H23:   fld_byte_count(fld_h(ctx__1)) = 64 .
H24:   for_all(i___2 : integer, 0 <= i___2 and i___2 <= 63 -> 0 <= element(
          fld_b(ctx__1), [i___2]) and element(fld_b(ctx__1), [i___2]) <= 255) .
H25:   for_all(i___1 : integer, 0 <= i___1 and i___1 <= 7 -> 0 <= element(fld_x(
          ctx__1), [i___1]) and element(fld_x(ctx__1), [i___1]) <= 
          18446744073709551615) .
H26:   fld_hash_bit_len(fld_h(ctx)) <= 2147483640 .
H27:   fld_field_type(fld_tweak_words(fld_h(ctx__1))) >= 0 .
H28:   fld_field_type(fld_tweak_words(fld_h(ctx__1))) <= 63 .
H29:   fld_tree_level(fld_tweak_words(fld_h(ctx__1))) >= 0 .
H30:   fld_tree_level(fld_tweak_words(fld_h(ctx__1))) <= 127 .
H31:   fld_reserved(fld_tweak_words(fld_h(ctx__1))) >= 0 .
H32:   fld_reserved(fld_tweak_words(fld_h(ctx__1))) <= 65535 .
H33:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx__1))) >= 0 .
H34:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx__1))) <= 4294967295 .
H35:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx__1))) >= 0 .
H36:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx__1))) <= 
          18446744073709551615 .
H37:   for_all(i___1 : integer, 0 <= i___1 and i___1 <= 63 -> 0 <= element(
          fld_b(ctx__1), [i___1]) and element(fld_b(ctx__1), [i___1]) <= 255) .
H38:   fld_hash_bit_len(fld_h(ctx)) >= 1 .
H39:   fld_hash_bit_len(fld_h(ctx)) <= 2147483640 .
H40:   fld_hash_bit_len(fld_h(ctx__2)) = fld_hash_bit_len(fld_h(ctx)) .
H41:   fld_byte_count(fld_h(ctx__1)) >= 0 .
H42:   fld_byte_count(fld_h(ctx__1)) <= 64 .
H43:   fld_byte_count(fld_h(ctx__2)) = fld_byte_count(fld_h(ctx__1)) .
H44:   for_all(i___2 : integer, 0 <= i___2 and i___2 <= 63 -> 0 <= element(
          fld_b(ctx__2), [i___2]) and element(fld_b(ctx__2), [i___2]) <= 255) .
H45:   for_all(i___1 : integer, 0 <= i___1 and i___1 <= 7 -> 0 <= element(fld_x(
          ctx__2), [i___1]) and element(fld_x(ctx__2), [i___1]) <= 
          18446744073709551615) .
H46:   fld_field_type(fld_tweak_words(fld_h(ctx__2))) >= 0 .
H47:   fld_field_type(fld_tweak_words(fld_h(ctx__2))) <= 63 .
H48:   fld_tree_level(fld_tweak_words(fld_h(ctx__2))) >= 0 .
H49:   fld_tree_level(fld_tweak_words(fld_h(ctx__2))) <= 127 .
H50:   fld_reserved(fld_tweak_words(fld_h(ctx__2))) >= 0 .
H51:   fld_reserved(fld_tweak_words(fld_h(ctx__2))) <= 65535 .
H52:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx__2))) >= 0 .
H53:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx__2))) <= 4294967295 .
H54:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx__2))) >= 0 .
H55:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx__2))) <= 
          18446744073709551615 .
H56:   msg__index__subtype__1__last + fld_byte_count(fld_h(ctx)) > 127 .
H57:   (msg__index__subtype__1__last + 1 - (64 - fld_byte_count(fld_h(ctx))) - 
          1) div 64 >= 1 .
H58:   (msg__index__subtype__1__last + 1 - (64 - fld_byte_count(fld_h(ctx))) - 
          1) div 64 <= 33554431 .
H59:   msg__index__subtype__1__last + 64 * ((64 - (msg__index__subtype__1__last 
          + fld_byte_count(fld_h(ctx)))) div 64) + fld_byte_count(fld_h(ctx)) > 
          62 .
H60:   fld_hash_bit_len(fld_h(ctx)) >= 1 .
H61:   fld_hash_bit_len(fld_h(ctx)) <= 2147483640 .
H62:   fld_hash_bit_len(fld_h(ctx__3)) = fld_hash_bit_len(fld_h(ctx__2)) .
H63:   fld_byte_count(fld_h(ctx__3)) = 0 .
H64:   for_all(i___2 : integer, 0 <= i___2 and i___2 <= 63 -> 0 <= element(
          fld_b(ctx__3), [i___2]) and element(fld_b(ctx__3), [i___2]) <= 255) .
H65:   for_all(i___1 : integer, 0 <= i___1 and i___1 <= 7 -> 0 <= element(fld_x(
          ctx__3), [i___1]) and element(fld_x(ctx__3), [i___1]) <= 
          18446744073709551615) .
H66:   fld_field_type(fld_tweak_words(fld_h(ctx__3))) >= 0 .
H67:   fld_field_type(fld_tweak_words(fld_h(ctx__3))) <= 63 .
H68:   fld_tree_level(fld_tweak_words(fld_h(ctx__3))) >= 0 .
H69:   fld_tree_level(fld_tweak_words(fld_h(ctx__3))) <= 127 .
H70:   fld_reserved(fld_tweak_words(fld_h(ctx__3))) >= 0 .
H71:   fld_reserved(fld_tweak_words(fld_h(ctx__3))) <= 65535 .
H72:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx__3))) >= 0 .
H73:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx__3))) <= 4294967295 .
H74:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx__3))) >= 0 .
H75:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx__3))) <= 
          18446744073709551615 .
H76:   (msg__index__subtype__1__last + 1 - (64 - fld_byte_count(fld_h(ctx))) - 
          1) div 64 * 64 >= 0 .
H77:   (msg__index__subtype__1__last + 1 - (64 - fld_byte_count(fld_h(ctx))) - 
          1) div 64 * 64 <= 2147483647 .
H78:   integer__size >= 0 .
H79:   natural__size >= 0 .
H80:   spark__unsigned__u6__size >= 0 .
H81:   spark__unsigned__u7__size >= 0 .
H82:   spark__unsigned__byte__size >= 0 .
H83:   spark__unsigned__u16__size >= 0 .
H84:   spark__unsigned__u32__size >= 0 .
H85:   spark__unsigned__u64__size >= 0 .
H86:   spark__crypto__word_count_t__size >= 0 .
H87:   hash_bit_length__size >= 0 .
H88:   initialized_hash_bit_length__size >= 0 .
H89:   skein_512_state_words_index__size >= 0 .
H90:   skein_512_block_bytes_count__size >= 0 .
H91:   skein_512_block_bytes_index__size >= 0 .
H92:   positive_block_512_count_t__size >= 0 .
H93:   skein_512_context__size >= 0 .
H94:   msg__index__subtype__1__first <= msg__index__subtype__1__last .
H95:   context_header__size >= 0 .
H96:   msg__index__subtype__1__first >= 0 .
H97:   msg__index__subtype__1__last >= 0 .
H98:   msg__index__subtype__1__first <= 2147483647 .
       ->
C1:    msg__index__subtype__1__last + 64 * ((64 - (msg__index__subtype__1__last 
          + fld_byte_count(fld_h(ctx)))) div 64) + fld_byte_count(fld_h(ctx)) > 
          63 .


procedure_skein_512_update_20.
*** true .          /* all conclusions proved */


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

procedure_skein_512_update_21.
*** true .          /* all conclusions proved */


procedure_skein_512_update_22.
*** true .          /* all conclusions proved */


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

procedure_skein_512_update_23.
*** true .          /* all conclusions proved */


procedure_skein_512_update_24.
*** true .          /* all conclusions proved */


For path(s) from start to precondition check associated with statement of line 
          835:

procedure_skein_512_update_25.
H1:    fld_hash_bit_len(fld_h(ctx)) >= 1 .
H2:    fld_hash_bit_len(fld_h(ctx)) <= 2147483640 .
H3:    fld_byte_count(fld_h(ctx)) <= 64 .
H4:    msg__index__subtype__1__first = 0 .
H5:    msg__index__subtype__1__last <= 2147483582 .
H6:    for_all(i___2 : integer, 0 <= i___2 and i___2 <= 63 -> 0 <= element(
          fld_b(ctx), [i___2]) and element(fld_b(ctx), [i___2]) <= 255) .
H7:    for_all(i___1 : integer, 0 <= i___1 and i___1 <= 7 -> 0 <= element(fld_x(
          ctx), [i___1]) and element(fld_x(ctx), [i___1]) <= 
          18446744073709551615) .
H8:    fld_field_type(fld_tweak_words(fld_h(ctx))) >= 0 .
H9:    fld_field_type(fld_tweak_words(fld_h(ctx))) <= 63 .
H10:   fld_tree_level(fld_tweak_words(fld_h(ctx))) >= 0 .
H11:   fld_tree_level(fld_tweak_words(fld_h(ctx))) <= 127 .
H12:   fld_reserved(fld_tweak_words(fld_h(ctx))) >= 0 .
H13:   fld_reserved(fld_tweak_words(fld_h(ctx))) <= 65535 .
H14:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx))) >= 0 .
H15:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx))) <= 4294967295 .
H16:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx))) >= 0 .
H17:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx))) <= 18446744073709551615 .
H18:   for_all(i___1 : integer, msg__index__subtype__1__first <= i___1 and 
          i___1 <= msg__index__subtype__1__last -> 0 <= element(msg, [i___1]) 
          and element(msg, [i___1]) <= 255) .
H19:   msg__index__subtype__1__last + 1 + fld_byte_count(fld_h(ctx)) <= 
          2147483647 .
H20:   fld_byte_count(fld_h(ctx)) > 0 .
H21:   fld_hash_bit_len(fld_h(ctx)) > 0 .
H22:   fld_hash_bit_len(fld_h(ctx__1)) = fld_hash_bit_len(fld_h(ctx)) .
H23:   fld_byte_count(fld_h(ctx__1)) = 64 .
H24:   for_all(i___2 : integer, 0 <= i___2 and i___2 <= 63 -> 0 <= element(
          fld_b(ctx__1), [i___2]) and element(fld_b(ctx__1), [i___2]) <= 255) .
H25:   for_all(i___1 : integer, 0 <= i___1 and i___1 <= 7 -> 0 <= element(fld_x(
          ctx__1), [i___1]) and element(fld_x(ctx__1), [i___1]) <= 
          18446744073709551615) .
H26:   fld_hash_bit_len(fld_h(ctx)) <= 2147483640 .
H27:   fld_field_type(fld_tweak_words(fld_h(ctx__1))) >= 0 .
H28:   fld_field_type(fld_tweak_words(fld_h(ctx__1))) <= 63 .
H29:   fld_tree_level(fld_tweak_words(fld_h(ctx__1))) >= 0 .
H30:   fld_tree_level(fld_tweak_words(fld_h(ctx__1))) <= 127 .
H31:   fld_reserved(fld_tweak_words(fld_h(ctx__1))) >= 0 .
H32:   fld_reserved(fld_tweak_words(fld_h(ctx__1))) <= 65535 .
H33:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx__1))) >= 0 .
H34:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx__1))) <= 4294967295 .
H35:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx__1))) >= 0 .
H36:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx__1))) <= 
          18446744073709551615 .
H37:   for_all(i___1 : integer, 0 <= i___1 and i___1 <= 63 -> 0 <= element(
          fld_b(ctx__1), [i___1]) and element(fld_b(ctx__1), [i___1]) <= 255) .
H38:   fld_hash_bit_len(fld_h(ctx)) >= 1 .
H39:   fld_hash_bit_len(fld_h(ctx)) <= 2147483640 .
H40:   fld_hash_bit_len(fld_h(ctx__2)) = fld_hash_bit_len(fld_h(ctx)) .
H41:   fld_byte_count(fld_h(ctx__1)) >= 0 .
H42:   fld_byte_count(fld_h(ctx__1)) <= 64 .
H43:   fld_byte_count(fld_h(ctx__2)) = fld_byte_count(fld_h(ctx__1)) .
H44:   for_all(i___2 : integer, 0 <= i___2 and i___2 <= 63 -> 0 <= element(
          fld_b(ctx__2), [i___2]) and element(fld_b(ctx__2), [i___2]) <= 255) .
H45:   for_all(i___1 : integer, 0 <= i___1 and i___1 <= 7 -> 0 <= element(fld_x(
          ctx__2), [i___1]) and element(fld_x(ctx__2), [i___1]) <= 
          18446744073709551615) .
H46:   fld_field_type(fld_tweak_words(fld_h(ctx__2))) >= 0 .
H47:   fld_field_type(fld_tweak_words(fld_h(ctx__2))) <= 63 .
H48:   fld_tree_level(fld_tweak_words(fld_h(ctx__2))) >= 0 .
H49:   fld_tree_level(fld_tweak_words(fld_h(ctx__2))) <= 127 .
H50:   fld_reserved(fld_tweak_words(fld_h(ctx__2))) >= 0 .
H51:   fld_reserved(fld_tweak_words(fld_h(ctx__2))) <= 65535 .
H52:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx__2))) >= 0 .
H53:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx__2))) <= 4294967295 .
H54:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx__2))) >= 0 .
H55:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx__2))) <= 
          18446744073709551615 .
H56:   msg__index__subtype__1__last + fld_byte_count(fld_h(ctx)) > 127 .
H57:   (msg__index__subtype__1__last + 1 - (64 - fld_byte_count(fld_h(ctx))) - 
          1) div 64 >= 1 .
H58:   fld_hash_bit_len(fld_h(ctx)) >= 1 .
H59:   fld_hash_bit_len(fld_h(ctx)) <= 2147483640 .
H60:   fld_hash_bit_len(fld_h(ctx__3)) = fld_hash_bit_len(fld_h(ctx__2)) .
H61:   fld_byte_count(fld_h(ctx__3)) = 0 .
H62:   for_all(i___2 : integer, 0 <= i___2 and i___2 <= 63 -> 0 <= element(
          fld_b(ctx__3), [i___2]) and element(fld_b(ctx__3), [i___2]) <= 255) .
H63:   for_all(i___1 : integer, 0 <= i___1 and i___1 <= 7 -> 0 <= element(fld_x(
          ctx__3), [i___1]) and element(fld_x(ctx__3), [i___1]) <= 
          18446744073709551615) .
H64:   fld_field_type(fld_tweak_words(fld_h(ctx__3))) >= 0 .
H65:   fld_field_type(fld_tweak_words(fld_h(ctx__3))) <= 63 .
H66:   fld_tree_level(fld_tweak_words(fld_h(ctx__3))) >= 0 .
H67:   fld_tree_level(fld_tweak_words(fld_h(ctx__3))) <= 127 .
H68:   fld_reserved(fld_tweak_words(fld_h(ctx__3))) >= 0 .
H69:   fld_reserved(fld_tweak_words(fld_h(ctx__3))) <= 65535 .
H70:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx__3))) >= 0 .
H71:   fld_byte_count_msb(fld_tweak_words(fld_h(ctx__3))) <= 4294967295 .
H72:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx__3))) >= 0 .
H73:   fld_byte_count_lsb(fld_tweak_words(fld_h(ctx__3))) <= 
          18446744073709551615 .
H74:   (msg__index__subtype__1__last + 1 - (64 - fld_byte_count(fld_h(ctx))) - 
          1) div 64 * 64 >= 0 .
H75:   msg__index__subtype__1__last + 64 * ((64 - (msg__index__subtype__1__last 
          + fld_byte_count(fld_h(ctx)))) div 64) + fld_byte_count(fld_h(ctx)) > 
          63 .
H76:   - 63 + (msg__index__subtype__1__last + 64 * ((64 - (
          msg__index__subtype__1__last + fld_byte_count(fld_h(ctx)))) div 64) + 
          fld_byte_count(fld_h(ctx))) <= 2147483647 .
H77:   64 - fld_byte_count(fld_h(ctx)) + (msg__index__subtype__1__last + 1 - (
          64 - fld_byte_count(fld_h(ctx))) - 1) div 64 * 64 >= 0 .
H78:   64 * ((64 - (msg__index__subtype__1__last + fld_byte_count(fld_h(ctx)))) 
          div 64) + fld_byte_count(fld_h(ctx)) > - 2147483584 .
H79:   integer__size >= 0 .
H80:   natural__size >= 0 .
H81:   spark__unsigned__u6__size >= 0 .
H82:   spark__unsigned__u7__size >= 0 .
H83:   spark__unsigned__byte__size >= 0 .
H84:   spark__unsigned__u16__size >= 0 .
H85:   spark__unsigned__u32__size >= 0 .
H86:   spark__unsigned__u64__size >= 0 .
H87:   spark__crypto__word_count_t__size >= 0 .
H88:   hash_bit_length__size >= 0 .
H89:   initialized_hash_bit_length__size >= 0 .
H90:   skein_512_state_words_index__size >= 0 .
H91:   skein_512_block_bytes_count__size >= 0 .
H92:   skein_512_block_bytes_index__size >= 0 .
H93:   positive_block_512_count_t__size >= 0 .
H94:   skein_512_context__size >= 0 .
H95:   msg__index__subtype__1__first <= msg__index__subtype__1__last .
H96:   context_header__size >= 0 .
H97:   msg__index__subtype__1__first >= 0 .
H98:   msg__index__subtype__1__last >= 0 .
H99:   msg__index__subtype__1__first <= 2147483647 .
       ->
C1:    64 - fld_byte_count(fld_h(ctx)) + (msg__index__subtype__1__last + 1 - (
          64 - fld_byte_count(fld_h(ctx))) - 1) div 64 * 64 + (
          msg__index__subtype__1__last + 1 - (64 - fld_byte_count(fld_h(ctx))) 
          - (msg__index__subtype__1__last + 1 - (64 - fld_byte_count(fld_h(ctx))
          ) - 1) div 64 * 64 - 1) <= msg__index__subtype__1__last .
C2:    - 64 + (msg__index__subtype__1__last + 64 * ((64 - (
          msg__index__subtype__1__last + fld_byte_count(fld_h(ctx)))) div 64) + 
          fld_byte_count(fld_h(ctx)) + fld_byte_count(fld_h(ctx__3))) <= 63 .


procedure_skein_512_update_26.
*** true .          /* all conclusions proved */


procedure_skein_512_update_27.
*** true .          /* all conclusions proved */


procedure_skein_512_update_28.
*** true .   /* contradiction within hypotheses. */



procedure_skein_512_update_29.
*** true .          /* all conclusions proved */


For path(s) from start to finish:

procedure_skein_512_update_30.
*** true .          /* all conclusions proved */


procedure_skein_512_update_31.
*** true .          /* all conclusions proved */


procedure_skein_512_update_32.
*** true .          /* all conclusions proved */


procedure_skein_512_update_33.
*** true .          /* all conclusions proved */


procedure_skein_512_update_34.
*** true .          /* all conclusions proved */


For checks of refinement integrity: 

procedure_skein_512_update_35.
*** true .   /* proved using user-defined proof rules. */


procedure_skein_512_update_36.
*** true .   /* proved using user-defined proof rules. */


