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

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



SPARK Simplifier GPL 2012
Copyright (C) 2012 Altran Praxis Limited, Bath, U.K.

procedure Process_Dns_Request.Process_Response_Cname






@@@@@@@@@@  VC: procedure_process_response_cname_1.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
***  Proved C1:  start_byte >= dns_types__packet_bytes_range__first
     using hypothesis H3.
***  Proved C2:  start_byte <= dns_types__packet_bytes_range__last
     using hypothesis H4.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_2.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified C1 on reading formula in, to give:
     %%%  C1:  true
***  Proved C1:  true
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
<S>  New C2:  1 <= rr_type__returnedrecordsindextype__last
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__classtype__first <= fld_class(fld_inherit(element(cnames, [
          i___1]))) and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 and 
          i___2 <= rr_type__wirestringtypeindex__last -> character__first <= 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          and element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]
          ) <= character__last))
<S>  New C2:  true
***  Proved C2:  true
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_3.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
%%%  Simplified C1 on reading formula in, to give:
     %%%  C1:  true
***  Proved C1:  true
***  Proved C2:  rr_type__returnedrecordsindextype__first <= 
          rr_type__returnedrecordsindextype__last
     using hypothesis H28.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_4.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
***  Proved C1:  rr_type__wirenamelength(fld_canonicaldomainname(element(
          cnames, [rr_type__returnedrecordsindextype__first]))) >= 
          rr_type__wirestringtypeindex__first
     using hypothesis H31.
***  Proved C2:  rr_type__wirenamelength(fld_canonicaldomainname(element(
          cnames, [rr_type__returnedrecordsindextype__first]))) <= 
          rr_type__wirestringtypeindex__last
     using hypothesis H32.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_5.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified C7 on reading formula in, to give:
     %%%  C7:  true
***  Proved C7:  true
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New C1:  dns_types__packet_size - (12 + dns_types__header_bits div 8) >= - 
          9223372036854775808
<S>  New C3:  dns_types__header_bits div 8 >= - 9223372036854775820
<S>  New C5:  dns_types__header_bits div 8 >= - 9223372036854775808
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New C2:  dns_types__packet_size - (12 + dns_types__header_bits div 8) <= 
          9223372036854775807
<S>  New C4:  dns_types__header_bits div 8 <= 9223372036854775795
<S>  New C6:  dns_types__header_bits div 8 <= 9223372036854775807
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New C8:  start_byte >= - 2147483648
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New C9:  start_byte <= 2147483647
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H1:  start_byte <= 8192
<S>  New C1:  12 + dns_types__header_bits div 8 <= 9223372036854784000
<S>  New C2:  - 9223372036854767615 <= 12 + dns_types__header_bits div 8
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New C3:  true
<S>  New C5:  true
<S>  New C4:  true
<S>  New C6:  true
<S>  New C1:  true
<S>  New C2:  true
-S-  Applied substitution rule process_resp_rules(3).
     This was achieved by replacing all occurrences of 
          rr_type__maxdomainnamelength by:
          128.
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) = 129 or element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H8:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H9:  qname_location <= 16383
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H3:  start_byte >= 1
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H10:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H16:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H18:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H20:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H22:  fld_arcount(fld_header(output_packet)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H12:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H13:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H14:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H15:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) = 129 or element(fld_canonicaldomainname(element(cnames, [1])), 
          [rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1]))
          )]) = 0 and for_all(q_ : integer, 1 <= q_ and q_ <= 
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1])))
           - 1 -> element(fld_canonicaldomainname(element(cnames, [1])), [q_]) 
          <> 0)
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 1
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 129
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H28:  true
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
***  Proved C8:  start_byte >= - 2147483648
     using hypothesis H3.
***  Proved C9:  start_byte <= 2147483647
     using hypothesis H1.
***  Proved C3:  true
***  Proved C5:  true
***  Proved C4:  true
***  Proved C6:  true
***  Proved C1:  true
***  Proved C2:  true
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_6.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
***  Proved C3:  start_byte + 1 >= dns_types__packet_bytes_range__first
     using hypothesis H3.
-S-  Applied substitution rule process_resp_rules(114).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__first by:
          0.
<S>  New C1:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          >= 0
<S>  New C6:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(115).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__last by:
          65535.
<S>  New C2:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          <= 65535
<S>  New C7:  qname_location <= 65535
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New C4:  start_byte <= 8179
<S>  New C5:  start_byte <= 8178
-S-  Applied substitution rule process_resp_rules(35).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__first by:
          - 2147483648.
<S>  New C8:  start_byte >= - 2147483649
-S-  Applied substitution rule process_resp_rules(36).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__last by:
          2147483647.
<S>  New C9:  start_byte <= 2147483646
***  Proved C9:  start_byte <= 2147483646
     using hypothesis H4.
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H1:  start_byte <= 8192
<S>  New H38:  8192 - (12 + dns_types__header_bits div 8) >= system__min_int
<S>  New H39:  8192 - (12 + dns_types__header_bits div 8) <= system__max_int
<S>  New H47:  start_byte < 8192 - (12 + dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H40:  24 >= system__min_int
<S>  New H41:  24 <= system__max_int
<S>  New H42:  12 >= system__min_int
<S>  New H43:  12 <= system__max_int
<S>  New H38:  8168 >= system__min_int
<S>  New H39:  8168 <= system__max_int
<S>  New H47:  start_byte < 8168
-S-  Applied substitution rule process_resp_rules(3).
     This was achieved by replacing all occurrences of 
          rr_type__maxdomainnamelength by:
          128.
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) = 129 or element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H40:  true
<S>  New H42:  true
<S>  New H38:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H41:  true
<S>  New H43:  true
<S>  New H39:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H45:  start_byte >= - 2147483648
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H46:  start_byte <= 2147483647
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H8:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H9:  qname_location <= 16383
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H3:  start_byte >= 1
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H10:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H16:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H18:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H20:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H22:  fld_arcount(fld_header(output_packet)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H12:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H13:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H14:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H15:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(118).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__modulus by:
          65536.
<S>  New C1:  (qname_location + 49152) mod 65536 >= 0
<S>  New C2:  (qname_location + 49152) mod 65536 <= 65535
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) = 129 or element(fld_canonicaldomainname(element(cnames, [1])), 
          [rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1]))
          )]) = 0 and for_all(q_ : integer, 1 <= q_ and q_ <= 
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1])))
           - 1 -> element(fld_canonicaldomainname(element(cnames, [1])), [q_]) 
          <> 0)
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 1
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 129
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H28:  true
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
***  Proved C6:  qname_location >= 0
     using hypothesis H8.
***  Proved C7:  qname_location <= 65535
     using hypothesis H9.
***  Proved C4:  start_byte <= 8179
     using hypothesis H47.
***  Proved C5:  start_byte <= 8178
     using hypothesis H47.
***  Proved C8:  start_byte >= - 2147483649
     using hypothesis H45.
***  Proved C1:  (qname_location + 49152) mod 65536 >= 0
***  Proved C2:  (qname_location + 49152) mod 65536 <= 65535
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_7.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H59 on reading formula in, to give:
     %%%  H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
***  Proved C3:  start_byte + 3 >= dns_types__packet_bytes_range__first
     using hypothesis H3.
***  Proved C5:  start_byte + 3 >= dns_types__packet_bytes_range__base__first
     using hypothesis H57.
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= dns_types__packet_bytes_range__last -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= dns_types__packet_bytes_range__last -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New C1:  true
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= dns_types__packet_bytes_range__last -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
<S>  New H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= dns_types__packet_bytes_range__last -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= 255)
<S>  New C2:  true
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H53:  start_byte <= 8179
<S>  New H54:  start_byte <= 8178
<S>  New H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> 0 <= element(fld_bytes(output_packet), [
          i___1]) and element(fld_bytes(output_packet), [i___1]) <= 255)
<S>  New H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> 0 <= element(fld_bytes(output_packet__1), [
          i___1]) and element(fld_bytes(output_packet__1), [i___1]) <= 255)
<S>  New C4:  start_byte <= 8177
-S-  Applied substitution rule process_resp_rules(36).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__last by:
          2147483647.
<S>  New H58:  start_byte <= 2147483646
<S>  New C6:  start_byte <= 2147483644
***  Proved C1:  true
***  Proved C2:  true
***  Proved C6:  start_byte <= 2147483644
     using hypothesis H4.
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H1:  start_byte <= 8192
<S>  New H38:  8192 - (12 + dns_types__header_bits div 8) >= system__min_int
<S>  New H39:  8192 - (12 + dns_types__header_bits div 8) <= system__max_int
<S>  New H47:  start_byte < 8192 - (12 + dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H40:  24 >= system__min_int
<S>  New H41:  24 <= system__max_int
<S>  New H42:  12 >= system__min_int
<S>  New H43:  12 <= system__max_int
<S>  New H38:  8168 >= system__min_int
<S>  New H39:  8168 <= system__max_int
<S>  New H47:  start_byte < 8168
-S-  Applied substitution rule process_resp_rules(3).
     This was achieved by replacing all occurrences of 
          rr_type__maxdomainnamelength by:
          128.
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) = 129 or element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H40:  true
<S>  New H42:  true
<S>  New H38:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H41:  true
<S>  New H43:  true
<S>  New H39:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H45:  start_byte >= - 2147483648
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H46:  start_byte <= 2147483647
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H8:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H9:  qname_location <= 16383
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H3:  start_byte >= 1
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
<S>  New H52:  start_byte >= 0
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(35).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__first by:
          - 2147483648.
<S>  New H57:  start_byte >= - 2147483649
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H10:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H16:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H18:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H20:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H22:  fld_arcount(fld_header(output_packet)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H12:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H13:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H14:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H15:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(114).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__first by:
          0.
<S>  New H50:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          >= 0
<S>  New H55:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(115).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__last by:
          65535.
<S>  New H51:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          <= 65535
<S>  New H56:  qname_location <= 65535
-S-  Applied substitution rule process_resp_rules(118).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__modulus by:
          65536.
<S>  New H50:  (qname_location + 49152) mod 65536 >= 0
<S>  New H51:  (qname_location + 49152) mod 65536 <= 65535
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) = 129 or element(fld_canonicaldomainname(element(cnames, [1])), 
          [rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1]))
          )]) = 0 and for_all(q_ : integer, 1 <= q_ and q_ <= 
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1])))
           - 1 -> element(fld_canonicaldomainname(element(cnames, [1])), [q_]) 
          <> 0)
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 1
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 129
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H28:  true
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
***  Proved C4:  start_byte <= 8177
     using hypothesis H47.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_8.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H59 on reading formula in, to give:
     %%%  H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
***  Proved C1:  5 >= dns_types__byte__first
     using hypothesis H62.
***  Proved C3:  start_byte + 4 >= dns_types__packet_bytes_range__first
     using hypothesis H3.
***  Proved C5:  start_byte + 4 >= dns_types__packet_bytes_range__base__first
     using hypothesis H57.
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 255)
<S>  New H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 255)
<S>  New H63:  true
<S>  New C2:  true
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H53:  start_byte <= 8179
<S>  New H54:  start_byte <= 8178
<S>  New H65:  start_byte <= 8177
<S>  New H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
<S>  New H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= 255)
<S>  New C4:  start_byte <= 8176
-S-  Applied substitution rule process_resp_rules(36).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__last by:
          2147483647.
<S>  New H58:  start_byte <= 2147483646
<S>  New H67:  start_byte <= 2147483644
<S>  New C6:  start_byte <= 2147483643
***  Proved C2:  true
***  Proved C6:  start_byte <= 2147483643
     using hypothesis H4.
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H1:  start_byte <= 8192
<S>  New H38:  8192 - (12 + dns_types__header_bits div 8) >= system__min_int
<S>  New H39:  8192 - (12 + dns_types__header_bits div 8) <= system__max_int
<S>  New H47:  start_byte < 8192 - (12 + dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H40:  24 >= system__min_int
<S>  New H41:  24 <= system__max_int
<S>  New H42:  12 >= system__min_int
<S>  New H43:  12 <= system__max_int
<S>  New H38:  8168 >= system__min_int
<S>  New H39:  8168 <= system__max_int
<S>  New H47:  start_byte < 8168
-S-  Applied substitution rule process_resp_rules(3).
     This was achieved by replacing all occurrences of 
          rr_type__maxdomainnamelength by:
          128.
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) = 129 or element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H40:  true
<S>  New H42:  true
<S>  New H38:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H41:  true
<S>  New H43:  true
<S>  New H39:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H45:  start_byte >= - 2147483648
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H46:  start_byte <= 2147483647
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H8:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H9:  qname_location <= 16383
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H3:  start_byte >= 1
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 255)
<S>  New H52:  start_byte >= 0
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 255)
<S>  New H64:  start_byte >= - 2
-S-  Applied substitution rule process_resp_rules(35).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__first by:
          - 2147483648.
<S>  New H57:  start_byte >= - 2147483649
<S>  New H66:  start_byte >= - 2147483651
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H62:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H10:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H16:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H18:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H20:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H22:  fld_arcount(fld_header(output_packet)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H12:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H13:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H14:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H15:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(114).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__first by:
          0.
<S>  New H50:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          >= 0
<S>  New H55:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(115).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__last by:
          65535.
<S>  New H51:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          <= 65535
<S>  New H56:  qname_location <= 65535
-S-  Applied substitution rule process_resp_rules(118).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__modulus by:
          65536.
<S>  New H50:  (qname_location + 49152) mod 65536 >= 0
<S>  New H51:  (qname_location + 49152) mod 65536 <= 65535
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) = 129 or element(fld_canonicaldomainname(element(cnames, [1])), 
          [rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1]))
          )]) = 0 and for_all(q_ : integer, 1 <= q_ and q_ <= 
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1])))
           - 1 -> element(fld_canonicaldomainname(element(cnames, [1])), [q_]) 
          <> 0)
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 1
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 129
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H28:  true
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
***  Proved C4:  start_byte <= 8176
     using hypothesis H47.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_9.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H59 on reading formula in, to give:
     %%%  H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
***  Proved C1:  0 >= dns_types__byte__first
     using hypothesis H62.
***  Proved C2:  0 <= dns_types__byte__last
     using hypothesis H63.
***  Proved C3:  start_byte + 5 >= dns_types__packet_bytes_range__first
     using hypothesis H3.
***  Proved C5:  start_byte + 5 >= dns_types__packet_bytes_range__base__first
     using hypothesis H57.
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H53:  start_byte <= 8179
<S>  New H54:  start_byte <= 8178
<S>  New H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New H65:  start_byte <= 8177
<S>  New H71:  start_byte <= 8176
<S>  New C4:  start_byte <= 8175
-S-  Applied substitution rule process_resp_rules(36).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__last by:
          2147483647.
<S>  New H58:  start_byte <= 2147483646
<S>  New H67:  start_byte <= 2147483644
<S>  New H73:  start_byte <= 2147483643
<S>  New C6:  start_byte <= 2147483642
***  Proved C6:  start_byte <= 2147483642
     using hypothesis H4.
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H1:  start_byte <= 8192
<S>  New H38:  8192 - (12 + dns_types__header_bits div 8) >= system__min_int
<S>  New H39:  8192 - (12 + dns_types__header_bits div 8) <= system__max_int
<S>  New H47:  start_byte < 8192 - (12 + dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H40:  24 >= system__min_int
<S>  New H41:  24 <= system__max_int
<S>  New H42:  12 >= system__min_int
<S>  New H43:  12 <= system__max_int
<S>  New H38:  8168 >= system__min_int
<S>  New H39:  8168 <= system__max_int
<S>  New H47:  start_byte < 8168
-S-  Applied substitution rule process_resp_rules(3).
     This was achieved by replacing all occurrences of 
          rr_type__maxdomainnamelength by:
          128.
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) = 129 or element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H40:  true
<S>  New H42:  true
<S>  New H38:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H41:  true
<S>  New H43:  true
<S>  New H39:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H45:  start_byte >= - 2147483648
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H46:  start_byte <= 2147483647
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H8:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H9:  qname_location <= 16383
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H3:  start_byte >= 1
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
<S>  New H52:  start_byte >= 0
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
<S>  New H64:  start_byte >= - 2
<S>  New H70:  start_byte >= - 3
-S-  Applied substitution rule process_resp_rules(35).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__first by:
          - 2147483648.
<S>  New H57:  start_byte >= - 2147483649
<S>  New H66:  start_byte >= - 2147483651
<S>  New H72:  start_byte >= - 2147483652
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H62:  true
<S>  New H68:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H63:  true
<S>  New H69:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H10:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H16:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H18:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H20:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H22:  fld_arcount(fld_header(output_packet)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H12:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H13:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H14:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H15:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(114).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__first by:
          0.
<S>  New H50:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          >= 0
<S>  New H55:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(115).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__last by:
          65535.
<S>  New H51:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          <= 65535
<S>  New H56:  qname_location <= 65535
-S-  Applied substitution rule process_resp_rules(118).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__modulus by:
          65536.
<S>  New H50:  (qname_location + 49152) mod 65536 >= 0
<S>  New H51:  (qname_location + 49152) mod 65536 <= 65535
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) = 129 or element(fld_canonicaldomainname(element(cnames, [1])), 
          [rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1]))
          )]) = 0 and for_all(q_ : integer, 1 <= q_ and q_ <= 
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1])))
           - 1 -> element(fld_canonicaldomainname(element(cnames, [1])), [q_]) 
          <> 0)
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 1
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 129
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H28:  true
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
***  Proved C4:  start_byte <= 8175
     using hypothesis H47.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_10.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H59 on reading formula in, to give:
     %%%  H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H62).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H63).
***  Proved C1:  1 >= dns_types__byte__first
     using hypothesis H62.
***  Proved C2:  1 <= dns_types__byte__last
     using hypothesis H69.
***  Proved C3:  start_byte + 6 >= dns_types__packet_bytes_range__first
     using hypothesis H3.
***  Proved C5:  start_byte + 6 >= dns_types__packet_bytes_range__base__first
     using hypothesis H57.
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H53:  start_byte <= 8179
<S>  New H54:  start_byte <= 8178
<S>  New H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New H65:  start_byte <= 8177
<S>  New H71:  start_byte <= 8176
<S>  New H77:  start_byte <= 8175
<S>  New C4:  start_byte <= 8174
-S-  Applied substitution rule process_resp_rules(36).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__last by:
          2147483647.
<S>  New H58:  start_byte <= 2147483646
<S>  New H67:  start_byte <= 2147483644
<S>  New H73:  start_byte <= 2147483643
<S>  New H79:  start_byte <= 2147483642
<S>  New C6:  start_byte <= 2147483641
***  Proved C6:  start_byte <= 2147483641
     using hypothesis H4.
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H1:  start_byte <= 8192
<S>  New H38:  8192 - (12 + dns_types__header_bits div 8) >= system__min_int
<S>  New H39:  8192 - (12 + dns_types__header_bits div 8) <= system__max_int
<S>  New H47:  start_byte < 8192 - (12 + dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H40:  24 >= system__min_int
<S>  New H41:  24 <= system__max_int
<S>  New H42:  12 >= system__min_int
<S>  New H43:  12 <= system__max_int
<S>  New H38:  8168 >= system__min_int
<S>  New H39:  8168 <= system__max_int
<S>  New H47:  start_byte < 8168
-S-  Applied substitution rule process_resp_rules(3).
     This was achieved by replacing all occurrences of 
          rr_type__maxdomainnamelength by:
          128.
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) = 129 or element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H40:  true
<S>  New H42:  true
<S>  New H38:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H41:  true
<S>  New H43:  true
<S>  New H39:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H45:  start_byte >= - 2147483648
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H46:  start_byte <= 2147483647
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H8:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H9:  qname_location <= 16383
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H3:  start_byte >= 1
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
<S>  New H52:  start_byte >= 0
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
<S>  New H64:  start_byte >= - 2
<S>  New H70:  start_byte >= - 3
<S>  New H76:  start_byte >= - 4
-S-  Applied substitution rule process_resp_rules(35).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__first by:
          - 2147483648.
<S>  New H57:  start_byte >= - 2147483649
<S>  New H66:  start_byte >= - 2147483651
<S>  New H72:  start_byte >= - 2147483652
<S>  New H78:  start_byte >= - 2147483653
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H62:  true
<S>  New H68:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H63:  true
<S>  New H69:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H10:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H16:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H18:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H20:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H22:  fld_arcount(fld_header(output_packet)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H12:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H13:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H14:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H15:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(114).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__first by:
          0.
<S>  New H50:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          >= 0
<S>  New H55:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(115).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__last by:
          65535.
<S>  New H51:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          <= 65535
<S>  New H56:  qname_location <= 65535
-S-  Applied substitution rule process_resp_rules(118).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__modulus by:
          65536.
<S>  New H50:  (qname_location + 49152) mod 65536 >= 0
<S>  New H51:  (qname_location + 49152) mod 65536 <= 65535
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) = 129 or element(fld_canonicaldomainname(element(cnames, [1])), 
          [rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1]))
          )]) = 0 and for_all(q_ : integer, 1 <= q_ and q_ <= 
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1])))
           - 1 -> element(fld_canonicaldomainname(element(cnames, [1])), [q_]) 
          <> 0)
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 1
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 129
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H28:  true
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
***  Proved C4:  start_byte <= 8174
     using hypothesis H47.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_11.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H59 on reading formula in, to give:
     %%%  H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H62).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H63).
---  Hypothesis H86 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H87 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified C6 on reading formula in, to give:
     %%%  C6:  true
***  Proved C3:  start_byte + 7 >= dns_types__packet_bytes_range__first
     using hypothesis H3.
***  Proved C6:  true
***  Proved C7:  rr_type__returnedrecordsindextype__first <= 
          rr_type__returnedrecordsindextype__last
     using hypothesis H28.
***  Proved C8:  start_byte + 7 >= dns_types__packet_bytes_range__base__first
     using hypothesis H57.
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
<S>  New C1:  fld_ttlinseconds(fld_inherit(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 0
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New C2:  fld_ttlinseconds(fld_inherit(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 4294967295
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H53:  start_byte <= 8179
<S>  New H54:  start_byte <= 8178
<S>  New H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New H65:  start_byte <= 8177
<S>  New H71:  start_byte <= 8176
<S>  New H77:  start_byte <= 8175
<S>  New H83:  start_byte <= 8174
<S>  New C4:  start_byte <= 8173
<S>  New C5:  start_byte <= 8170
-S-  Applied substitution rule process_resp_rules(36).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__last by:
          2147483647.
<S>  New H58:  start_byte <= 2147483646
<S>  New H67:  start_byte <= 2147483644
<S>  New H73:  start_byte <= 2147483643
<S>  New H79:  start_byte <= 2147483642
<S>  New H85:  start_byte <= 2147483641
<S>  New C9:  start_byte <= 2147483640
***  Proved C9:  start_byte <= 2147483640
     using hypothesis H4.
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H1:  start_byte <= 8192
<S>  New H38:  8192 - (12 + dns_types__header_bits div 8) >= system__min_int
<S>  New H39:  8192 - (12 + dns_types__header_bits div 8) <= system__max_int
<S>  New H47:  start_byte < 8192 - (12 + dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H40:  24 >= system__min_int
<S>  New H41:  24 <= system__max_int
<S>  New H42:  12 >= system__min_int
<S>  New H43:  12 <= system__max_int
<S>  New H38:  8168 >= system__min_int
<S>  New H39:  8168 <= system__max_int
<S>  New H47:  start_byte < 8168
-S-  Applied substitution rule process_resp_rules(3).
     This was achieved by replacing all occurrences of 
          rr_type__maxdomainnamelength by:
          128.
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) = 129 or element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H40:  true
<S>  New H42:  true
<S>  New H38:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H41:  true
<S>  New H43:  true
<S>  New H39:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H45:  start_byte >= - 2147483648
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H46:  start_byte <= 2147483647
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H8:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H9:  qname_location <= 16383
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H3:  start_byte >= 1
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
<S>  New H52:  start_byte >= 0
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
<S>  New H64:  start_byte >= - 2
<S>  New H70:  start_byte >= - 3
<S>  New H76:  start_byte >= - 4
<S>  New H82:  start_byte >= - 5
-S-  Applied substitution rule process_resp_rules(35).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__first by:
          - 2147483648.
<S>  New H57:  start_byte >= - 2147483649
<S>  New H66:  start_byte >= - 2147483651
<S>  New H72:  start_byte >= - 2147483652
<S>  New H78:  start_byte >= - 2147483653
<S>  New H84:  start_byte >= - 2147483654
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H62:  true
<S>  New H68:  true
<S>  New H80:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H63:  true
<S>  New H69:  true
<S>  New H81:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H10:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H16:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H18:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H20:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H22:  fld_arcount(fld_header(output_packet)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H12:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H13:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H14:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H15:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(114).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__first by:
          0.
<S>  New H50:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          >= 0
<S>  New H55:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(115).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__last by:
          65535.
<S>  New H51:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          <= 65535
<S>  New H56:  qname_location <= 65535
-S-  Applied substitution rule process_resp_rules(118).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__modulus by:
          65536.
<S>  New H50:  (qname_location + 49152) mod 65536 >= 0
<S>  New H51:  (qname_location + 49152) mod 65536 <= 65535
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) = 129 or element(fld_canonicaldomainname(element(cnames, [1])), 
          [rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1]))
          )]) = 0 and for_all(q_ : integer, 1 <= q_ and q_ <= 
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1])))
           - 1 -> element(fld_canonicaldomainname(element(cnames, [1])), [q_]) 
          <> 0)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 1
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 129
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
<S>  New C1:  fld_ttlinseconds(fld_inherit(element(cnames, [1]))) >= 0
<S>  New C2:  fld_ttlinseconds(fld_inherit(element(cnames, [1]))) <= 4294967295
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H28:  true
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
***  Proved C4:  start_byte <= 8173
     using hypothesis H47.
***  Proved C5:  start_byte <= 8170
     using hypothesis H47.
***  Proved C1:  fld_ttlinseconds(fld_inherit(element(cnames, [1]))) >= 0
     using hypothesis H5.
***  Proved C2:  fld_ttlinseconds(fld_inherit(element(cnames, [1]))) <= 
          4294967295
     using hypothesis H5.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_12.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H59 on reading formula in, to give:
     %%%  H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H62).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H63).
---  Hypothesis H86 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H87 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H93 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H94 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H97 on reading formula in, to give:
     %%%  H97:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__2), [i___1]
          ) and element(fld_bytes(output_packet__2), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H98 on reading formula in, to give:
     %%%  H98:  fld_header(output_packet__2) = fld_header(output_packet__1)
%%%  Simplified H99 on reading formula in, to give:
     %%%  H99:  output_packet__2 = upf_bytes(output_packet__1, fld_bytes(
          output_packet__2))
---  Hypothesis H100 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H101 has been replaced by "true".  (It is already present, as 
          H4).
---  Hypothesis H102 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H103 has been replaced by "true".  (It is already present, as 
          H32).
***  Proved C3:  start_byte + 11 >= dns_types__packet_bytes_range__first
     using hypothesis H3.
***  Proved C8:  start_byte + 11 >= dns_types__packet_bytes_range__base__first
     using hypothesis H57.
-S-  Applied substitution rule process_resp_rules(114).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__first by:
          0.
<S>  New H50:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          >= 0
<S>  New H55:  qname_location >= 0
<S>  New C1:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 0
<S>  New C6:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 0
-S-  Applied substitution rule process_resp_rules(115).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__last by:
          65535.
<S>  New H51:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          <= 65535
<S>  New H56:  qname_location <= 65535
<S>  New C2:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 65535
<S>  New C7:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 65535
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H53:  start_byte <= 8179
<S>  New H54:  start_byte <= 8178
<S>  New H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New H65:  start_byte <= 8177
<S>  New H71:  start_byte <= 8176
<S>  New H77:  start_byte <= 8175
<S>  New H83:  start_byte <= 8174
<S>  New H91:  start_byte <= 8173
<S>  New H92:  start_byte <= 8170
<S>  New H97:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= dns_types__byte__last)
<S>  New C4:  start_byte <= 8169
<S>  New C5:  start_byte <= 8168
-S-  Applied substitution rule process_resp_rules(36).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__last by:
          2147483647.
<S>  New H58:  start_byte <= 2147483646
<S>  New H67:  start_byte <= 2147483644
<S>  New H73:  start_byte <= 2147483643
<S>  New H79:  start_byte <= 2147483642
<S>  New H85:  start_byte <= 2147483641
<S>  New H96:  start_byte <= 2147483640
<S>  New C9:  start_byte <= 2147483636
***  Proved C9:  start_byte <= 2147483636
     using hypothesis H4.
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H1:  start_byte <= 8192
<S>  New H38:  8192 - (12 + dns_types__header_bits div 8) >= system__min_int
<S>  New H39:  8192 - (12 + dns_types__header_bits div 8) <= system__max_int
<S>  New H47:  start_byte < 8192 - (12 + dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H40:  24 >= system__min_int
<S>  New H41:  24 <= system__max_int
<S>  New H42:  12 >= system__min_int
<S>  New H43:  12 <= system__max_int
<S>  New H38:  8168 >= system__min_int
<S>  New H39:  8168 <= system__max_int
<S>  New H47:  start_byte < 8168
-S-  Applied substitution rule process_resp_rules(3).
     This was achieved by replacing all occurrences of 
          rr_type__maxdomainnamelength by:
          128.
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) = 129 or element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H40:  true
<S>  New H42:  true
<S>  New H38:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H41:  true
<S>  New H43:  true
<S>  New H39:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H45:  start_byte >= - 2147483648
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H46:  start_byte <= 2147483647
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H8:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H9:  qname_location <= 16383
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H3:  start_byte >= 1
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
<S>  New H52:  start_byte >= 0
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
<S>  New H64:  start_byte >= - 2
<S>  New H70:  start_byte >= - 3
<S>  New H76:  start_byte >= - 4
<S>  New H82:  start_byte >= - 5
<S>  New H90:  start_byte >= - 6
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__2), [i___1]
          ) and element(fld_bytes(output_packet__2), [i___1]) <= 
          dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(35).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__first by:
          - 2147483648.
<S>  New H57:  start_byte >= - 2147483649
<S>  New H66:  start_byte >= - 2147483651
<S>  New H72:  start_byte >= - 2147483652
<S>  New H78:  start_byte >= - 2147483653
<S>  New H84:  start_byte >= - 2147483654
<S>  New H95:  start_byte >= - 2147483655
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H62:  true
<S>  New H68:  true
<S>  New H80:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H63:  true
<S>  New H69:  true
<S>  New H81:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= 255)
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H10:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H16:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H18:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H20:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H22:  fld_arcount(fld_header(output_packet)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H12:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H13:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H14:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H15:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(118).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__modulus by:
          65536.
<S>  New H50:  (qname_location + 49152) mod 65536 >= 0
<S>  New H51:  (qname_location + 49152) mod 65536 <= 65535
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
<S>  New H88:  fld_ttlinseconds(fld_inherit(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 0
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H89:  fld_ttlinseconds(fld_inherit(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 4294967295
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) = 129 or element(fld_canonicaldomainname(element(cnames, [1])), 
          [rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1]))
          )]) = 0 and for_all(q_ : integer, 1 <= q_ and q_ <= 
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1])))
           - 1 -> element(fld_canonicaldomainname(element(cnames, [1])), [q_]) 
          <> 0)
<S>  New H88:  fld_ttlinseconds(fld_inherit(element(cnames, [1]))) >= 0
<S>  New H89:  fld_ttlinseconds(fld_inherit(element(cnames, [1]))) <= 4294967295
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 1
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 129
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
<S>  New C1:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 0
<S>  New C6:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 0
<S>  New C2:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 65535
<S>  New C7:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 65535
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H28:  true
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
***  Proved C4:  start_byte <= 8169
     using hypothesis H47.
***  Proved C5:  start_byte <= 8168
     using hypothesis H47.
***  Proved C1:  rr_type__wirenamelength(fld_canonicaldomainname(element(
          cnames, [1]))) >= 0
     using hypothesis H31.
***  Proved C6:  rr_type__wirenamelength(fld_canonicaldomainname(element(
          cnames, [1]))) >= 0
     using hypothesis H31.
***  Proved C2:  rr_type__wirenamelength(fld_canonicaldomainname(element(
          cnames, [1]))) <= 65535
     using hypothesis H32.
***  Proved C7:  rr_type__wirenamelength(fld_canonicaldomainname(element(
          cnames, [1]))) <= 65535
     using hypothesis H32.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_13.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H59 on reading formula in, to give:
     %%%  H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H62).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H63).
---  Hypothesis H86 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H87 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H93 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H94 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H97 on reading formula in, to give:
     %%%  H97:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__2), [i___1]
          ) and element(fld_bytes(output_packet__2), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H98 on reading formula in, to give:
     %%%  H98:  fld_header(output_packet__2) = fld_header(output_packet__1)
%%%  Simplified H99 on reading formula in, to give:
     %%%  H99:  output_packet__2 = upf_bytes(output_packet__1, fld_bytes(
          output_packet__2))
---  Hypothesis H100 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H101 has been replaced by "true".  (It is already present, as 
          H4).
---  Hypothesis H102 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H103 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H109 has been replaced by "true".  (It is already present, as 
          H104).
---  Hypothesis H110 has been replaced by "true".  (It is already present, as 
          H105).
%%%  Simplified H113 on reading formula in, to give:
     %%%  H113:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__3), [i___1]
          ) and element(fld_bytes(output_packet__3), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H116 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H117 has been replaced by "true".  (It is already present, as 
          H4).
***  Proved C1:  start_byte + 12 >= dns_types__packet_bytes_range__first
     using hypothesis H3.
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H53:  start_byte <= 8179
<S>  New H54:  start_byte <= 8178
<S>  New H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New H65:  start_byte <= 8177
<S>  New H71:  start_byte <= 8176
<S>  New H77:  start_byte <= 8175
<S>  New H83:  start_byte <= 8174
<S>  New H91:  start_byte <= 8173
<S>  New H92:  start_byte <= 8170
<S>  New H97:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= dns_types__byte__last)
<S>  New H107:  start_byte <= 8169
<S>  New H108:  start_byte <= 8168
<S>  New H113:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet__3), [i___1]) and element(fld_bytes(
          output_packet__3), [i___1]) <= dns_types__byte__last)
<S>  New C2:  start_byte <= 8168
***  Proved C2:  start_byte <= 8168
     using hypothesis H108.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_14.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H59 on reading formula in, to give:
     %%%  H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H62).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H63).
---  Hypothesis H86 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H87 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H93 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H94 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H97 on reading formula in, to give:
     %%%  H97:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__2), [i___1]
          ) and element(fld_bytes(output_packet__2), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H98 on reading formula in, to give:
     %%%  H98:  fld_header(output_packet__2) = fld_header(output_packet__1)
%%%  Simplified H99 on reading formula in, to give:
     %%%  H99:  output_packet__2 = upf_bytes(output_packet__1, fld_bytes(
          output_packet__2))
---  Hypothesis H100 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H101 has been replaced by "true".  (It is already present, as 
          H4).
---  Hypothesis H102 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H103 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H109 has been replaced by "true".  (It is already present, as 
          H104).
---  Hypothesis H110 has been replaced by "true".  (It is already present, as 
          H105).
%%%  Simplified H113 on reading formula in, to give:
     %%%  H113:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__3), [i___1]
          ) and element(fld_bytes(output_packet__3), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H116 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H117 has been replaced by "true".  (It is already present, as 
          H4).
---  Hypothesis H120 has been replaced by "true".  (It is already present, as 
          H118).
---  Hypothesis H121 has been replaced by "true".  (It is already present, as 
          H119).
%%%  Simplified C9 on reading formula in, to give:
     %%%  C9:  true
***  Proved C7:  dns_types__header_bits div 8 >= system__min_int
     using hypothesis H42.
***  Proved C8:  dns_types__header_bits div 8 <= system__max_int
     using hypothesis H43.
***  Proved C9:  true
***  Proved C10:  start_byte + 12 >= integer__first
     using hypothesis H45.
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H8:  qname_location >= 0
<S>  New C1:  start_byte + 12 + dns_types__header_bits div 8 >= 0
<S>  New C3:  start_byte + 12 + dns_types__header_bits div 8 >= 0
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H9:  qname_location <= 16383
<S>  New C2:  start_byte + 12 + dns_types__header_bits div 8 <= 16383
<S>  New C4:  start_byte + 12 + dns_types__header_bits div 8 <= 16383
-S-  Applied substitution rule process_resp_rules(9).
     This was achieved by replacing all occurrences of integer__base__first by:
          - 2147483648.
<S>  New C5:  start_byte + 12 + dns_types__header_bits div 8 >= - 2147483648
-S-  Applied substitution rule process_resp_rules(10).
     This was achieved by replacing all occurrences of integer__base__last by:
          2147483647.
<S>  New C6:  start_byte + 12 + dns_types__header_bits div 8 <= 2147483647
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H46:  start_byte <= 2147483647
<S>  New C11:  start_byte <= 2147483635
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H1:  start_byte <= 8192
<S>  New H38:  8192 - (12 + dns_types__header_bits div 8) >= system__min_int
<S>  New H39:  8192 - (12 + dns_types__header_bits div 8) <= system__max_int
<S>  New H47:  start_byte < 8192 - (12 + dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H40:  24 >= system__min_int
<S>  New H41:  24 <= system__max_int
<S>  New H42:  12 >= system__min_int
<S>  New H43:  12 <= system__max_int
<S>  New H38:  8168 >= system__min_int
<S>  New H39:  8168 <= system__max_int
<S>  New H47:  start_byte < 8168
<S>  New C1:  start_byte + 12 >= - 12
<S>  New C3:  start_byte + 12 >= - 12
<S>  New C2:  start_byte + 12 <= 16371
<S>  New C4:  start_byte + 12 <= 16371
<S>  New C5:  start_byte + 12 >= - 2147483660
<S>  New C6:  start_byte + 12 <= 2147483635
-S-  Applied substitution rule process_resp_rules(3).
     This was achieved by replacing all occurrences of 
          rr_type__maxdomainnamelength by:
          128.
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) = 129 or element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H40:  true
<S>  New H42:  true
<S>  New H38:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H41:  true
<S>  New H43:  true
<S>  New H39:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H45:  start_byte >= - 2147483648
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H3:  start_byte >= 1
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H52:  start_byte >= 0
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New H64:  start_byte >= - 2
<S>  New H70:  start_byte >= - 3
<S>  New H76:  start_byte >= - 4
<S>  New H82:  start_byte >= - 5
<S>  New H90:  start_byte >= - 6
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= dns_types__byte__last)
<S>  New H106:  start_byte >= - 10
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet__3), [i___1]) and element(fld_bytes(
          output_packet__3), [i___1]) <= dns_types__byte__last)
<S>  New H118:  start_byte >= - 11
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H53:  start_byte <= 8179
<S>  New H54:  start_byte <= 8178
<S>  New H65:  start_byte <= 8177
<S>  New H71:  start_byte <= 8176
<S>  New H77:  start_byte <= 8175
<S>  New H83:  start_byte <= 8174
<S>  New H91:  start_byte <= 8173
<S>  New H92:  start_byte <= 8170
<S>  New H107:  start_byte <= 8169
<S>  New H108:  start_byte <= 8168
<S>  New H119:  start_byte <= 8168
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__2), [i___1]
          ) and element(fld_bytes(output_packet__2), [i___1]) <= 
          dns_types__byte__last)
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__3), [i___1]
          ) and element(fld_bytes(output_packet__3), [i___1]) <= 
          dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(35).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__first by:
          - 2147483648.
<S>  New H57:  start_byte >= - 2147483649
<S>  New H66:  start_byte >= - 2147483651
<S>  New H72:  start_byte >= - 2147483652
<S>  New H78:  start_byte >= - 2147483653
<S>  New H84:  start_byte >= - 2147483654
<S>  New H95:  start_byte >= - 2147483655
<S>  New H111:  start_byte >= - 2147483659
-S-  Applied substitution rule process_resp_rules(36).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__last by:
          2147483647.
<S>  New H58:  start_byte <= 2147483646
<S>  New H67:  start_byte <= 2147483644
<S>  New H73:  start_byte <= 2147483643
<S>  New H79:  start_byte <= 2147483642
<S>  New H85:  start_byte <= 2147483641
<S>  New H96:  start_byte <= 2147483640
<S>  New H112:  start_byte <= 2147483636
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H62:  true
<S>  New H68:  true
<S>  New H80:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= dns_types__byte__last)
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__3), [i___1]) and element(fld_bytes(
          output_packet__3), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H63:  true
<S>  New H69:  true
<S>  New H81:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= 255)
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= 255)
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__3), [i___1]) and element(fld_bytes(
          output_packet__3), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H10:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H16:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H18:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H20:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H22:  fld_arcount(fld_header(output_packet)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H12:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H13:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H14:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H15:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(114).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__first by:
          0.
<S>  New H50:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          >= 0
<S>  New H55:  qname_location >= 0
<S>  New H104:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) >= 0
-S-  Applied substitution rule process_resp_rules(115).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__last by:
          65535.
<S>  New H51:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          <= 65535
<S>  New H56:  qname_location <= 65535
<S>  New H105:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) <= 65535
-S-  Applied substitution rule process_resp_rules(118).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__modulus by:
          65536.
<S>  New H50:  (qname_location + 49152) mod 65536 >= 0
<S>  New H51:  (qname_location + 49152) mod 65536 <= 65535
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
<S>  New H88:  fld_ttlinseconds(fld_inherit(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 0
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H89:  fld_ttlinseconds(fld_inherit(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 4294967295
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) = 129 or element(fld_canonicaldomainname(element(cnames, [1])), 
          [rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1]))
          )]) = 0 and for_all(q_ : integer, 1 <= q_ and q_ <= 
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1])))
           - 1 -> element(fld_canonicaldomainname(element(cnames, [1])), [q_]) 
          <> 0)
<S>  New H104:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [1]))) >= 0
<S>  New H105:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [1]))) <= 65535
<S>  New H88:  fld_ttlinseconds(fld_inherit(element(cnames, [1]))) >= 0
<S>  New H89:  fld_ttlinseconds(fld_inherit(element(cnames, [1]))) <= 4294967295
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 1
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 129
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H28:  true
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
%%%  Simplified C1 further, to give:
     %%%  C1:  start_byte >= - 24
%%%  Simplified C2 further, to give:
     %%%  C2:  start_byte <= 16359
%%%  Simplified C3 further, to give:
     %%%  C3:  start_byte >= - 24
%%%  Simplified C4 further, to give:
     %%%  C4:  start_byte <= 16359
%%%  Simplified C5 further, to give:
     %%%  C5:  start_byte >= - 2147483672
%%%  Simplified C6 further, to give:
     %%%  C6:  start_byte <= 2147483623
***  Proved C11:  start_byte <= 2147483635
     using hypothesis H47.
***  Proved C1:  start_byte >= - 24
     using hypothesis H3.
***  Proved C2:  start_byte <= 16359
     using hypothesis H47.
***  Proved C3:  start_byte >= - 24
     using hypothesis H3.
***  Proved C4:  start_byte <= 16359
     using hypothesis H47.
***  Proved C5:  start_byte >= - 2147483672
     using hypothesis H45.
***  Proved C6:  start_byte <= 2147483623
     using hypothesis H47.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_15.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified C9 on reading formula in, to give:
     %%%  C9:  true
***  Proved C7:  dns_types__header_bits div 8 >= system__min_int
     using hypothesis H42.
***  Proved C8:  dns_types__header_bits div 8 <= system__max_int
     using hypothesis H43.
***  Proved C9:  true
***  Proved C10:  start_byte >= integer__first
     using hypothesis H45.
***  Proved C11:  start_byte <= integer__last
     using hypothesis H46.
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H8:  qname_location >= 0
<S>  New C1:  start_byte + dns_types__header_bits div 8 >= 0
<S>  New C3:  start_byte + dns_types__header_bits div 8 >= 0
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H9:  qname_location <= 16383
<S>  New C2:  start_byte + dns_types__header_bits div 8 <= 16383
<S>  New C4:  start_byte + dns_types__header_bits div 8 <= 16383
-S-  Applied substitution rule process_resp_rules(9).
     This was achieved by replacing all occurrences of integer__base__first by:
          - 2147483648.
<S>  New C5:  start_byte + dns_types__header_bits div 8 >= - 2147483648
-S-  Applied substitution rule process_resp_rules(10).
     This was achieved by replacing all occurrences of integer__base__last by:
          2147483647.
<S>  New C6:  start_byte + dns_types__header_bits div 8 <= 2147483647
>>>  Restructured hypothesis H47 into:
     >>>  H47:  dns_types__packet_size - (12 + dns_types__header_bits div 8) <= 
          start_byte
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H1:  start_byte <= 8192
<S>  New H38:  8192 - (12 + dns_types__header_bits div 8) >= system__min_int
<S>  New H39:  8192 - (12 + dns_types__header_bits div 8) <= system__max_int
<S>  New H47:  8192 - (12 + dns_types__header_bits div 8) <= start_byte
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H40:  24 >= system__min_int
<S>  New H41:  24 <= system__max_int
<S>  New H42:  12 >= system__min_int
<S>  New H43:  12 <= system__max_int
<S>  New H38:  8168 >= system__min_int
<S>  New H39:  8168 <= system__max_int
<S>  New H47:  8168 <= start_byte
<S>  New C1:  start_byte >= - 12
<S>  New C3:  start_byte >= - 12
<S>  New C2:  start_byte <= 16371
<S>  New C4:  start_byte <= 16371
<S>  New C5:  start_byte >= - 2147483660
<S>  New C6:  start_byte <= 2147483635
-S-  Applied substitution rule process_resp_rules(3).
     This was achieved by replacing all occurrences of 
          rr_type__maxdomainnamelength by:
          128.
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) = 129 or element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H40:  true
<S>  New H42:  true
<S>  New H38:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H41:  true
<S>  New H43:  true
<S>  New H39:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H45:  start_byte >= - 2147483648
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H46:  start_byte <= 2147483647
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H3:  start_byte >= 1
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H10:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H16:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H18:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H20:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H22:  fld_arcount(fld_header(output_packet)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H12:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H13:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H14:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H15:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) = 129 or element(fld_canonicaldomainname(element(cnames, [1])), 
          [rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1]))
          )]) = 0 and for_all(q_ : integer, 1 <= q_ and q_ <= 
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1])))
           - 1 -> element(fld_canonicaldomainname(element(cnames, [1])), [q_]) 
          <> 0)
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 1
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 129
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H28:  true
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
***  Proved C1:  start_byte >= - 12
     using hypothesis H47.
***  Proved C3:  start_byte >= - 12
     using hypothesis H47.
***  Proved C2:  start_byte <= 16371
     using hypothesis H1.
***  Proved C4:  start_byte <= 16371
     using hypothesis H1.
***  Proved C5:  start_byte >= - 2147483660
     using hypothesis H47.
***  Proved C6:  start_byte <= 2147483635
     using hypothesis H1.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_16.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H59 on reading formula in, to give:
     %%%  H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H62).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H63).
---  Hypothesis H86 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H87 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H93 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H94 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H97 on reading formula in, to give:
     %%%  H97:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__2), [i___1]
          ) and element(fld_bytes(output_packet__2), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H98 on reading formula in, to give:
     %%%  H98:  fld_header(output_packet__2) = fld_header(output_packet__1)
%%%  Simplified H99 on reading formula in, to give:
     %%%  H99:  output_packet__2 = upf_bytes(output_packet__1, fld_bytes(
          output_packet__2))
---  Hypothesis H100 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H101 has been replaced by "true".  (It is already present, as 
          H4).
---  Hypothesis H102 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H103 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H109 has been replaced by "true".  (It is already present, as 
          H104).
---  Hypothesis H110 has been replaced by "true".  (It is already present, as 
          H105).
%%%  Simplified H113 on reading formula in, to give:
     %%%  H113:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__3), [i___1]
          ) and element(fld_bytes(output_packet__3), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H116 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H117 has been replaced by "true".  (It is already present, as 
          H4).
---  Hypothesis H120 has been replaced by "true".  (It is already present, as 
          H118).
---  Hypothesis H121 has been replaced by "true".  (It is already present, as 
          H119).
---  Hypothesis H124 has been replaced by "true".  (It is already present, as 
          H122).
---  Hypothesis H125 has been replaced by "true".  (It is already present, as 
          H123).
---  Hypothesis H128 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H129 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H130 has been replaced by "true".  (It is already present, as 
          H44).
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New C1:  true
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 
          character__first <= element(fld_canonicaldomainname(element(cnames, [
          i___1])), [i___2]) and element(fld_canonicaldomainname(element(
          cnames, [i___1])), [i___2]) <= character__last))
<S>  New C2:  true
***  Proved C1:  true
***  Proved C2:  true
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_17.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H52 has been replaced by "true".  (It is already present, as 
          H50).
---  Hypothesis H53 has been replaced by "true".  (It is already present, as 
          H51).
---  Hypothesis H56 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H57 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H58 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H59 has been replaced by "true".  (It is already present, as 
          H45).
---  Hypothesis H60 has been replaced by "true".  (It is already present, as 
          H46).
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New C1:  true
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 
          character__first <= element(fld_canonicaldomainname(element(cnames, [
          i___1])), [i___2]) and element(fld_canonicaldomainname(element(
          cnames, [i___1])), [i___2]) <= character__last))
<S>  New C2:  true
***  Proved C1:  true
***  Proved C2:  true
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_18.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H59 on reading formula in, to give:
     %%%  H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H62).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H63).
---  Hypothesis H86 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H87 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H93 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H94 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H97 on reading formula in, to give:
     %%%  H97:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__2), [i___1]
          ) and element(fld_bytes(output_packet__2), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H98 on reading formula in, to give:
     %%%  H98:  fld_header(output_packet__2) = fld_header(output_packet__1)
%%%  Simplified H99 on reading formula in, to give:
     %%%  H99:  output_packet__2 = upf_bytes(output_packet__1, fld_bytes(
          output_packet__2))
---  Hypothesis H100 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H101 has been replaced by "true".  (It is already present, as 
          H4).
---  Hypothesis H102 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H103 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H109 has been replaced by "true".  (It is already present, as 
          H104).
---  Hypothesis H110 has been replaced by "true".  (It is already present, as 
          H105).
%%%  Simplified H113 on reading formula in, to give:
     %%%  H113:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__3), [i___1]
          ) and element(fld_bytes(output_packet__3), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H116 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H117 has been replaced by "true".  (It is already present, as 
          H4).
---  Hypothesis H120 has been replaced by "true".  (It is already present, as 
          H118).
---  Hypothesis H121 has been replaced by "true".  (It is already present, as 
          H119).
---  Hypothesis H124 has been replaced by "true".  (It is already present, as 
          H122).
---  Hypothesis H125 has been replaced by "true".  (It is already present, as 
          H123).
---  Hypothesis H128 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H129 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H130 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H135 has been replaced by "true".  (It is already present, as 
          H118).
---  Hypothesis H136 has been replaced by "true".  (It is already present, as 
          H119).
---  Hypothesis H137 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H138 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H139 has been replaced by "true".  (It is already present, as 
          H133).
---  Hypothesis H140 has been replaced by "true".  (It is already present, as 
          H134).
%%%  Simplified C5 on reading formula in, to give:
     %%%  C5:  true
***  Proved C1:  start_byte + 12 + dns_types__header_bits div 8 >= 
          integer__base__first
     using hypothesis H126.
***  Proved C2:  start_byte + 12 + dns_types__header_bits div 8 <= 
          integer__base__last
     using hypothesis H127.
***  Proved C3:  dns_types__header_bits div 8 >= system__min_int
     using hypothesis H42.
***  Proved C4:  dns_types__header_bits div 8 <= system__max_int
     using hypothesis H43.
***  Proved C5:  true
***  Proved C6:  start_byte + 12 >= integer__first
     using hypothesis H131.
***  Proved C7:  start_byte + 12 <= integer__last
     using hypothesis H132.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_19.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H52 has been replaced by "true".  (It is already present, as 
          H50).
---  Hypothesis H53 has been replaced by "true".  (It is already present, as 
          H51).
---  Hypothesis H56 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H57 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H58 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H59 has been replaced by "true".  (It is already present, as 
          H45).
---  Hypothesis H60 has been replaced by "true".  (It is already present, as 
          H46).
---  Hypothesis H63 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H64 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H65 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H66 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H67 has been replaced by "true".  (It is already present, as 
          H61).
---  Hypothesis H68 has been replaced by "true".  (It is already present, as 
          H62).
%%%  Simplified C5 on reading formula in, to give:
     %%%  C5:  true
***  Proved C1:  start_byte + dns_types__header_bits div 8 >= 
          integer__base__first
     using hypothesis H54.
***  Proved C2:  start_byte + dns_types__header_bits div 8 <= 
          integer__base__last
     using hypothesis H55.
***  Proved C3:  dns_types__header_bits div 8 >= system__min_int
     using hypothesis H42.
***  Proved C4:  dns_types__header_bits div 8 <= system__max_int
     using hypothesis H43.
***  Proved C5:  true
***  Proved C6:  start_byte >= integer__first
     using hypothesis H45.
***  Proved C7:  start_byte <= integer__last
     using hypothesis H46.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_20.  @@@@@@@@@@
%%%  Simplified H8 on reading formula in, to give:
     %%%  H8:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H9 on reading formula in, to give:
     %%%  H9:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H10 on reading formula in, to give:
     %%%  H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H15 on reading formula in, to give:
     %%%  H15:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H17 on reading formula in, to give:
     %%%  H17:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H29 on reading formula in, to give:
     %%%  H29:  fld_ancount(fld_header(output_packet~)) = 0
---  Hypothesis H38 has been replaced by "true".  (It is already present, as 
          H36).
---  Hypothesis H39 has been replaced by "true".  (It is already present, as 
          H37).
---  Hypothesis H40 has been replaced by "true".  (It is already present, as 
          H34).
---  Hypothesis H41 has been replaced by "true".  (It is already present, as 
          H35).
%%%  Simplified H42 on reading formula in, to give:
     %%%  H42:  true
---  Hypothesis H44 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H45 has been replaced by "true".  (It is already present, as 
          H33).
---  Hypothesis H46 has been replaced by "true".  (It is already present, as 
          H34).
---  Hypothesis H47 has been replaced by "true".  (It is already present, as 
          H35).
---  Hypothesis H50 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H51 has been replaced by "true".  (It is already present, as 
          H33).
---  Hypothesis H54 has been replaced by "true".  (It is already present, as 
          H48).
---  Hypothesis H55 has been replaced by "true".  (It is already present, as 
          H49).
%%%  Simplified C5 on reading formula in, to give:
     %%%  C5:  true
***  Proved C5:  true
-S-  Applied substitution rule process_resp_rules(9).
     This was achieved by replacing all occurrences of integer__base__first by:
          - 2147483648.
<S>  New C1:  current_byte + 1 + dns_types__header_bits div 8 >= - 2147483648
-S-  Applied substitution rule process_resp_rules(10).
     This was achieved by replacing all occurrences of integer__base__last by:
          2147483647.
<S>  New C2:  current_byte + 1 + dns_types__header_bits div 8 <= 2147483647
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New C3:  dns_types__header_bits div 8 >= - 9223372036854775808
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New C4:  dns_types__header_bits div 8 <= 9223372036854775807
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New C6:  current_byte >= - 2147483649
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New C7:  current_byte <= 2147483646
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H5:  current_byte + dns_types__header_bits div 8 < 8192
<S>  New H28:  start_byte <= 8192
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H5:  current_byte < 8180
<S>  New C1:  current_byte + 1 >= - 2147483660
<S>  New C2:  current_byte + 1 <= 2147483635
<S>  New C3:  true
<S>  New C4:  true
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H11:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H12:  qname_location <= 16383
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H6:  start_byte >= 1
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H30:  current_byte >= 1
<S>  New H32:  current_byte >= 0
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H7:  start_byte <= 8180
<S>  New H31:  current_byte <= 8180
<S>  New H33:  current_byte <= 8179
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H36:  element(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [i]) >= 0
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H37:  element(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [i]) <= 255
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H13:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H19:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H21:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H23:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H25:  fld_arcount(fld_header(output_packet)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H14:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H20:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H22:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H24:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H26:  fld_arcount(fld_header(output_packet)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H15:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H16:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H17:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H18:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H8:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H8:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H9:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H9:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H34:  i >= 1
<S>  New H48:  i >= 0
<S>  New H52:  name_length >= 1
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          and element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]
          ) <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H1:  i < 129
<S>  New H35:  i <= 129
<S>  New H49:  i <= 128
<S>  New H53:  name_length <= 129
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H43:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H36:  element(fld_canonicaldomainname(element(cnames, [1])), [i]) >= 0
<S>  New H37:  element(fld_canonicaldomainname(element(cnames, [1])), [i]) <= 
          255
<S>  New H8:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H9:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H10:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H43:  true
<S>  New H8:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H9:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H10:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
%%%  Simplified C1 further, to give:
     %%%  C1:  current_byte >= - 2147483661
%%%  Simplified C2 further, to give:
     %%%  C2:  current_byte <= 2147483634
***  Proved C6:  current_byte >= - 2147483649
     using hypothesis H30.
***  Proved C7:  current_byte <= 2147483646
     using hypothesis H5.
***  Proved C3:  true
***  Proved C4:  true
***  Proved C1:  current_byte >= - 2147483661
     using hypothesis H30.
***  Proved C2:  current_byte <= 2147483634
     using hypothesis H5.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_21.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H59 on reading formula in, to give:
     %%%  H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H62).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H63).
---  Hypothesis H86 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H87 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H93 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H94 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H97 on reading formula in, to give:
     %%%  H97:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__2), [i___1]
          ) and element(fld_bytes(output_packet__2), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H98 on reading formula in, to give:
     %%%  H98:  fld_header(output_packet__2) = fld_header(output_packet__1)
%%%  Simplified H99 on reading formula in, to give:
     %%%  H99:  output_packet__2 = upf_bytes(output_packet__1, fld_bytes(
          output_packet__2))
---  Hypothesis H100 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H101 has been replaced by "true".  (It is already present, as 
          H4).
---  Hypothesis H102 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H103 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H109 has been replaced by "true".  (It is already present, as 
          H104).
---  Hypothesis H110 has been replaced by "true".  (It is already present, as 
          H105).
%%%  Simplified H113 on reading formula in, to give:
     %%%  H113:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__3), [i___1]
          ) and element(fld_bytes(output_packet__3), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H116 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H117 has been replaced by "true".  (It is already present, as 
          H4).
---  Hypothesis H120 has been replaced by "true".  (It is already present, as 
          H118).
---  Hypothesis H121 has been replaced by "true".  (It is already present, as 
          H119).
---  Hypothesis H124 has been replaced by "true".  (It is already present, as 
          H122).
---  Hypothesis H125 has been replaced by "true".  (It is already present, as 
          H123).
---  Hypothesis H128 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H129 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H130 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H135 has been replaced by "true".  (It is already present, as 
          H118).
---  Hypothesis H136 has been replaced by "true".  (It is already present, as 
          H119).
---  Hypothesis H137 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H138 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H139 has been replaced by "true".  (It is already present, as 
          H133).
---  Hypothesis H140 has been replaced by "true".  (It is already present, as 
          H134).
---  Hypothesis H141 has been replaced by "true".  (It is already present, as 
          H126).
---  Hypothesis H142 has been replaced by "true".  (It is already present, as 
          H127).
---  Hypothesis H143 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H144 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H145 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H146 has been replaced by "true".  (It is already present, as 
          H131).
---  Hypothesis H147 has been replaced by "true".  (It is already present, as 
          H132).
%%%  Simplified C8 on reading formula in, to give:
     %%%  C8:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified C9 on reading formula in, to give:
     %%%  C9:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified C10 on reading formula in, to give:
     %%%  C10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified C15 on reading formula in, to give:
     %%%  C15:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet__3))
%%%  Simplified C17 on reading formula in, to give:
     %%%  C17:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet__3))
%%%  Simplified C27 on reading formula in, to give:
     %%%  C27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__3), [i___1]
          ) and element(fld_bytes(output_packet__3), [i___1]) <= 
          dns_types__byte__last)
***  Proved C1:  1 < rr_type__wirestringtypeindex__last
     using hypothesis H149.
***  Proved C2:  1 <= rr_type__wirenamelength(fld_canonicaldomainname(element(
          cnames, [rr_type__returnedrecordsindextype__first])))
     using hypothesis H148.
***  Proved C4:  start_byte + 12 >= start_byte
***  Proved C5:  start_byte + 12 + dns_types__header_bits div 8 < 
          dns_types__packet_size
     using hypothesis H150.
***  Proved C6:  start_byte >= dns_types__packet_bytes_range__first
     using hypothesis H3.
***  Proved C7:  start_byte <= dns_types__packet_bytes_range__last
     using hypothesis H4.
***  Proved C8:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
     using hypothesis H5.
***  Proved C9:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
     using hypothesis H6.
***  Proved C10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
     using hypothesis H7.
***  Proved C11:  start_byte + 12 + dns_types__header_bits div 8 >= 
          dns_types__qname_ptr_range__first
     using hypothesis H122.
***  Proved C12:  start_byte + 12 + dns_types__header_bits div 8 <= 
          dns_types__qname_ptr_range__last
     using hypothesis H123.
***  Proved C27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__3), [i___1]
          ) and element(fld_bytes(output_packet__3), [i___1]) <= 
          dns_types__byte__last)
     using hypothesis H113.
***  Proved C28:  start_byte <= dns_types__packet_size
     using hypothesis H1.
***  Proved C29:  fld_ancount(fld_header(output_packet)) = 0
     using hypothesis H2.
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H10:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H16:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H18:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H20:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H22:  fld_arcount(fld_header(output_packet)) >= 0
<S>  New C13:  fld_messageid(fld_header(output_packet__3)) >= 0
<S>  New C19:  fld_qdcount(fld_header(output_packet__3)) >= 0
<S>  New C21:  fld_ancount(fld_header(output_packet__3)) >= 0
<S>  New C23:  fld_nscount(fld_header(output_packet__3)) >= 0
<S>  New C25:  fld_arcount(fld_header(output_packet__3)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
<S>  New C14:  fld_messageid(fld_header(output_packet__3)) <= 65535
<S>  New C20:  fld_qdcount(fld_header(output_packet__3)) <= 65535
<S>  New C22:  fld_ancount(fld_header(output_packet__3)) <= 65535
<S>  New C24:  fld_nscount(fld_header(output_packet__3)) <= 65535
<S>  New C26:  fld_arcount(fld_header(output_packet__3)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H12:  dns_types__query <= fld_opcode(fld_header(output_packet))
<S>  New C15:  dns_types__query <= fld_opcode(fld_header(output_packet__3))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H13:  fld_opcode(fld_header(output_packet)) <= dns_types__status
<S>  New C16:  fld_opcode(fld_header(output_packet__3)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H14:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
<S>  New C17:  dns_types__no_error <= fld_rcode(fld_header(output_packet__3))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H15:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
<S>  New C18:  fld_rcode(fld_header(output_packet__3)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H1:  start_byte <= 8192
<S>  New H38:  8192 - (12 + dns_types__header_bits div 8) >= system__min_int
<S>  New H39:  8192 - (12 + dns_types__header_bits div 8) <= system__max_int
<S>  New H47:  start_byte < 8192 - (12 + dns_types__header_bits div 8)
<S>  New H150:  start_byte + 12 + dns_types__header_bits div 8 < 8192
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H40:  24 >= system__min_int
<S>  New H41:  24 <= system__max_int
<S>  New H42:  12 >= system__min_int
<S>  New H43:  12 <= system__max_int
<S>  New H122:  start_byte + 12 + 12 >= dns_types__qname_ptr_range__first
<S>  New H123:  start_byte + 12 + 12 <= dns_types__qname_ptr_range__last
<S>  New H126:  start_byte + 12 + 12 >= integer__base__first
<S>  New H127:  start_byte + 12 + 12 <= integer__base__last
<S>  New H38:  8168 >= system__min_int
<S>  New H39:  8168 <= system__max_int
<S>  New H47:  start_byte < 8168
<S>  New H150:  start_byte + 12 < 8180
-S-  Applied substitution rule process_resp_rules(3).
     This was achieved by replacing all occurrences of 
          rr_type__maxdomainnamelength by:
          128.
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) = 129 or element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H40:  true
<S>  New H42:  true
<S>  New H38:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H41:  true
<S>  New H43:  true
<S>  New H39:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H45:  start_byte >= - 2147483648
<S>  New H131:  start_byte >= - 2147483660
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H46:  start_byte <= 2147483647
<S>  New H132:  start_byte <= 2147483635
-S-  Applied substitution rule process_resp_rules(9).
     This was achieved by replacing all occurrences of integer__base__first by:
          - 2147483648.
<S>  New H126:  start_byte >= - 2147483672
-S-  Applied substitution rule process_resp_rules(10).
     This was achieved by replacing all occurrences of integer__base__last by:
          2147483647.
<S>  New H127:  start_byte <= 2147483623
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H8:  qname_location >= 0
<S>  New H122:  start_byte >= - 24
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H9:  qname_location <= 16383
<S>  New H123:  start_byte <= 16359
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H3:  start_byte >= 1
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H52:  start_byte >= 0
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New H64:  start_byte >= - 2
<S>  New H70:  start_byte >= - 3
<S>  New H76:  start_byte >= - 4
<S>  New H82:  start_byte >= - 5
<S>  New H90:  start_byte >= - 6
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= dns_types__byte__last)
<S>  New H106:  start_byte >= - 10
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet__3), [i___1]) and element(fld_bytes(
          output_packet__3), [i___1]) <= dns_types__byte__last)
<S>  New H118:  start_byte >= - 11
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H53:  start_byte <= 8179
<S>  New H54:  start_byte <= 8178
<S>  New H65:  start_byte <= 8177
<S>  New H71:  start_byte <= 8176
<S>  New H77:  start_byte <= 8175
<S>  New H83:  start_byte <= 8174
<S>  New H91:  start_byte <= 8173
<S>  New H92:  start_byte <= 8170
<S>  New H107:  start_byte <= 8169
<S>  New H108:  start_byte <= 8168
<S>  New H119:  start_byte <= 8168
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__2), [i___1]
          ) and element(fld_bytes(output_packet__2), [i___1]) <= 
          dns_types__byte__last)
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__3), [i___1]
          ) and element(fld_bytes(output_packet__3), [i___1]) <= 
          dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(35).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__first by:
          - 2147483648.
<S>  New H57:  start_byte >= - 2147483649
<S>  New H66:  start_byte >= - 2147483651
<S>  New H72:  start_byte >= - 2147483652
<S>  New H78:  start_byte >= - 2147483653
<S>  New H84:  start_byte >= - 2147483654
<S>  New H95:  start_byte >= - 2147483655
<S>  New H111:  start_byte >= - 2147483659
-S-  Applied substitution rule process_resp_rules(36).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__last by:
          2147483647.
<S>  New H58:  start_byte <= 2147483646
<S>  New H67:  start_byte <= 2147483644
<S>  New H73:  start_byte <= 2147483643
<S>  New H79:  start_byte <= 2147483642
<S>  New H85:  start_byte <= 2147483641
<S>  New H96:  start_byte <= 2147483640
<S>  New H112:  start_byte <= 2147483636
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H62:  true
<S>  New H68:  true
<S>  New H80:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= dns_types__byte__last)
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__3), [i___1]) and element(fld_bytes(
          output_packet__3), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H63:  true
<S>  New H69:  true
<S>  New H81:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= 255)
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= 255)
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__3), [i___1]) and element(fld_bytes(
          output_packet__3), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(114).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__first by:
          0.
<S>  New H50:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          >= 0
<S>  New H55:  qname_location >= 0
<S>  New H104:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) >= 0
-S-  Applied substitution rule process_resp_rules(115).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__last by:
          65535.
<S>  New H51:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          <= 65535
<S>  New H56:  qname_location <= 65535
<S>  New H105:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) <= 65535
-S-  Applied substitution rule process_resp_rules(118).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__modulus by:
          65536.
<S>  New H50:  (qname_location + 49152) mod 65536 >= 0
<S>  New H51:  (qname_location + 49152) mod 65536 <= 65535
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
<S>  New H88:  fld_ttlinseconds(fld_inherit(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 0
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H89:  fld_ttlinseconds(fld_inherit(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 4294967295
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New H133:  true
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H134:  true
<S>  New H149:  true
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H148:  1 <= rr_type__wirenamelength(fld_canonicaldomainname(element(
          cnames, [1])))
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) = 129 or element(fld_canonicaldomainname(element(cnames, [1])), 
          [rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1]))
          )]) = 0 and for_all(q_ : integer, 1 <= q_ and q_ <= 
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1])))
           - 1 -> element(fld_canonicaldomainname(element(cnames, [1])), [q_]) 
          <> 0)
<S>  New H104:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [1]))) >= 0
<S>  New H105:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [1]))) <= 65535
<S>  New H88:  fld_ttlinseconds(fld_inherit(element(cnames, [1]))) >= 0
<S>  New H89:  fld_ttlinseconds(fld_inherit(element(cnames, [1]))) <= 4294967295
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 1
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 129
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H28:  true
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
%%%  Simplified H150 further, to give:
     %%%  H150:  start_byte < 8168
---  Eliminated hypothesis H25 (true-hypothesis).
---  Eliminated hypothesis H26 (true-hypothesis).
---  Eliminated hypothesis H27 (true-hypothesis).
---  Eliminated hypothesis H29 (true-hypothesis).
---  Eliminated hypothesis H30 (true-hypothesis).
---  Eliminated hypothesis H34 (true-hypothesis).
---  Eliminated hypothesis H35 (true-hypothesis).
---  Eliminated hypothesis H36 (true-hypothesis).
---  Eliminated hypothesis H37 (true-hypothesis).
---  Eliminated hypothesis H44 (true-hypothesis).
---  Eliminated hypothesis H48 (true-hypothesis).
---  Eliminated hypothesis H49 (true-hypothesis).
---  Eliminated hypothesis H74 (true-hypothesis).
---  Eliminated hypothesis H75 (true-hypothesis).
---  Eliminated hypothesis H86 (true-hypothesis).
---  Eliminated hypothesis H87 (true-hypothesis).
---  Eliminated hypothesis H93 (true-hypothesis).
---  Eliminated hypothesis H94 (true-hypothesis).
---  Eliminated hypothesis H100 (true-hypothesis).
---  Eliminated hypothesis H101 (true-hypothesis).
---  Eliminated hypothesis H102 (true-hypothesis).
---  Eliminated hypothesis H103 (true-hypothesis).
---  Eliminated hypothesis H109 (true-hypothesis).
---  Eliminated hypothesis H110 (true-hypothesis).
---  Eliminated hypothesis H116 (true-hypothesis).
---  Eliminated hypothesis H117 (true-hypothesis).
---  Eliminated hypothesis H120 (true-hypothesis).
---  Eliminated hypothesis H121 (true-hypothesis).
---  Eliminated hypothesis H124 (true-hypothesis).
---  Eliminated hypothesis H125 (true-hypothesis).
---  Eliminated hypothesis H128 (true-hypothesis).
---  Eliminated hypothesis H129 (true-hypothesis).
---  Eliminated hypothesis H130 (true-hypothesis).
---  Eliminated hypothesis H135 (true-hypothesis).
---  Eliminated hypothesis H136 (true-hypothesis).
---  Eliminated hypothesis H137 (true-hypothesis).
---  Eliminated hypothesis H138 (true-hypothesis).
---  Eliminated hypothesis H139 (true-hypothesis).
---  Eliminated hypothesis H140 (true-hypothesis).
---  Eliminated hypothesis H141 (true-hypothesis).
---  Eliminated hypothesis H142 (true-hypothesis).
---  Eliminated hypothesis H143 (true-hypothesis).
---  Eliminated hypothesis H144 (true-hypothesis).
---  Eliminated hypothesis H145 (true-hypothesis).
---  Eliminated hypothesis H146 (true-hypothesis).
---  Eliminated hypothesis H147 (true-hypothesis).
---  Eliminated hypothesis H40 (true-hypothesis).
---  Eliminated hypothesis H42 (true-hypothesis).
---  Eliminated hypothesis H38 (true-hypothesis).
---  Eliminated hypothesis H41 (true-hypothesis).
---  Eliminated hypothesis H43 (true-hypothesis).
---  Eliminated hypothesis H39 (true-hypothesis).
---  Eliminated hypothesis H62 (true-hypothesis).
---  Eliminated hypothesis H68 (true-hypothesis).
---  Eliminated hypothesis H80 (true-hypothesis).
---  Eliminated hypothesis H63 (true-hypothesis).
---  Eliminated hypothesis H69 (true-hypothesis).
---  Eliminated hypothesis H81 (true-hypothesis).
---  Eliminated hypothesis H133 (true-hypothesis).
---  Eliminated hypothesis H134 (true-hypothesis).
---  Eliminated hypothesis H149 (true-hypothesis).
---  Eliminated hypothesis H28 (true-hypothesis).
---  Eliminated hypothesis H150 (duplicate of H47).
---  Eliminated hypothesis H55 (duplicate of H8).
---  Eliminated hypothesis H119 (duplicate of H108).
---  Eliminated hypothesis H148 (duplicate of H31).
---  Eliminated hypothesis H1 (redundant, given H4).
---  Eliminated hypothesis H4 (redundant, given H47).
---  Eliminated hypothesis H18 (redundant, given H2).
---  Eliminated hypothesis H19 (redundant, given H2).
---  Eliminated hypothesis H45 (redundant, given H3).
---  Eliminated hypothesis H46 (redundant, given H47).
---  Eliminated hypothesis H52 (redundant, given H3).
---  Eliminated hypothesis H53 (redundant, given H47).
---  Eliminated hypothesis H54 (redundant, given H47).
---  Eliminated hypothesis H56 (redundant, given H9).
---  Eliminated hypothesis H57 (redundant, given H3).
---  Eliminated hypothesis H58 (redundant, given H47).
---  Eliminated hypothesis H64 (redundant, given H3).
---  Eliminated hypothesis H65 (redundant, given H47).
---  Eliminated hypothesis H66 (redundant, given H3).
---  Eliminated hypothesis H67 (redundant, given H47).
---  Eliminated hypothesis H70 (redundant, given H3).
---  Eliminated hypothesis H71 (redundant, given H47).
---  Eliminated hypothesis H72 (redundant, given H3).
---  Eliminated hypothesis H73 (redundant, given H47).
---  Eliminated hypothesis H76 (redundant, given H3).
---  Eliminated hypothesis H77 (redundant, given H47).
---  Eliminated hypothesis H78 (redundant, given H3).
---  Eliminated hypothesis H79 (redundant, given H47).
---  Eliminated hypothesis H82 (redundant, given H3).
---  Eliminated hypothesis H83 (redundant, given H47).
---  Eliminated hypothesis H84 (redundant, given H3).
---  Eliminated hypothesis H85 (redundant, given H47).
---  Eliminated hypothesis H90 (redundant, given H3).
---  Eliminated hypothesis H91 (redundant, given H47).
---  Eliminated hypothesis H92 (redundant, given H47).
---  Eliminated hypothesis H95 (redundant, given H3).
---  Eliminated hypothesis H96 (redundant, given H47).
---  Eliminated hypothesis H104 (redundant, given H31).
---  Eliminated hypothesis H105 (redundant, given H32).
---  Eliminated hypothesis H106 (redundant, given H3).
---  Eliminated hypothesis H107 (redundant, given H47).
---  Eliminated hypothesis H108 (redundant, given H47).
---  Eliminated hypothesis H111 (redundant, given H3).
---  Eliminated hypothesis H112 (redundant, given H47).
---  Eliminated hypothesis H118 (redundant, given H3).
---  Eliminated hypothesis H122 (redundant, given H3).
---  Eliminated hypothesis H123 (redundant, given H47).
---  Eliminated hypothesis H126 (redundant, given H3).
---  Eliminated hypothesis H127 (redundant, given H47).
---  Eliminated hypothesis H131 (redundant, given H3).
---  Eliminated hypothesis H132 (redundant, given H47).
-S-  Substituted hypothesis H60.
     This was achieved by replacing all occurrences of fld_header(
          output_packet__1) by:
          fld_header(output_packet).
-S-  Substituted hypothesis H114.
     This was achieved by replacing all occurrences of fld_header(
          output_packet__3) by:
          fld_header(output_packet__2).
-S-  Substituted hypothesis H98.
     This was achieved by replacing all occurrences of fld_header(
          output_packet__2) by:
          fld_header(output_packet).
***  Proved C3:  fld_ancount(fld_header(output_packet)) = 0
     using hypothesis H2.
***  Proved C13:  fld_messageid(fld_header(output_packet)) >= 0
     using hypothesis H10.
***  Proved C19:  fld_qdcount(fld_header(output_packet)) >= 0
     using hypothesis H16.
***  Proved C21:  fld_ancount(fld_header(output_packet)) >= 0
     using hypothesis H18.
***  Proved C23:  fld_nscount(fld_header(output_packet)) >= 0
     using hypothesis H20.
***  Proved C25:  fld_arcount(fld_header(output_packet)) >= 0
     using hypothesis H22.
***  Proved C14:  fld_messageid(fld_header(output_packet)) <= 65535
     using hypothesis H11.
***  Proved C20:  fld_qdcount(fld_header(output_packet)) <= 65535
     using hypothesis H17.
***  Proved C22:  fld_ancount(fld_header(output_packet)) <= 65535
     using hypothesis H19.
***  Proved C24:  fld_nscount(fld_header(output_packet)) <= 65535
     using hypothesis H21.
***  Proved C26:  fld_arcount(fld_header(output_packet)) <= 65535
     using hypothesis H23.
***  Proved C15:  dns_types__query <= fld_opcode(fld_header(output_packet))
     using hypothesis H12.
***  Proved C16:  fld_opcode(fld_header(output_packet)) <= dns_types__status
     using hypothesis H13.
***  Proved C17:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
     using hypothesis H14.
***  Proved C18:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
     using hypothesis H15.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_22.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H52 has been replaced by "true".  (It is already present, as 
          H50).
---  Hypothesis H53 has been replaced by "true".  (It is already present, as 
          H51).
---  Hypothesis H56 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H57 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H58 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H59 has been replaced by "true".  (It is already present, as 
          H45).
---  Hypothesis H60 has been replaced by "true".  (It is already present, as 
          H46).
---  Hypothesis H63 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H64 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H65 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H66 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H67 has been replaced by "true".  (It is already present, as 
          H61).
---  Hypothesis H68 has been replaced by "true".  (It is already present, as 
          H62).
---  Hypothesis H69 has been replaced by "true".  (It is already present, as 
          H54).
---  Hypothesis H70 has been replaced by "true".  (It is already present, as 
          H55).
---  Hypothesis H71 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H72 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H73 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H45).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H46).
%%%  Simplified C4 on reading formula in, to give:
     %%%  C4:  true
%%%  Simplified C8 on reading formula in, to give:
     %%%  C8:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified C9 on reading formula in, to give:
     %%%  C9:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified C10 on reading formula in, to give:
     %%%  C10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified C15 on reading formula in, to give:
     %%%  C15:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified C17 on reading formula in, to give:
     %%%  C17:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified C27 on reading formula in, to give:
     %%%  C27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
***  Proved C1:  1 < rr_type__wirestringtypeindex__last
     using hypothesis H77.
***  Proved C2:  1 <= rr_type__wirenamelength(fld_canonicaldomainname(element(
          cnames, [rr_type__returnedrecordsindextype__first])))
     using hypothesis H76.
***  Proved C3:  fld_ancount(fld_header(output_packet)) = 0
     using hypothesis H2.
***  Proved C4:  true
***  Proved C5:  start_byte + dns_types__header_bits div 8 < 
          dns_types__packet_size
     using hypothesis H78.
***  Proved C6:  start_byte >= dns_types__packet_bytes_range__first
     using hypothesis H3.
***  Proved C7:  start_byte <= dns_types__packet_bytes_range__last
     using hypothesis H4.
***  Proved C8:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
     using hypothesis H5.
***  Proved C9:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
     using hypothesis H6.
***  Proved C10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
     using hypothesis H7.
***  Proved C11:  start_byte + dns_types__header_bits div 8 >= 
          dns_types__qname_ptr_range__first
     using hypothesis H50.
***  Proved C12:  start_byte + dns_types__header_bits div 8 <= 
          dns_types__qname_ptr_range__last
     using hypothesis H51.
***  Proved C13:  fld_messageid(fld_header(output_packet)) >= 
          dns_types__unsigned_short__first
     using hypothesis H10.
***  Proved C14:  fld_messageid(fld_header(output_packet)) <= 
          dns_types__unsigned_short__last
     using hypothesis H11.
***  Proved C15:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
     using hypothesis H12.
***  Proved C16:  fld_opcode(fld_header(output_packet)) <= 
          dns_types__opcode_type__last
     using hypothesis H13.
***  Proved C17:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
     using hypothesis H14.
***  Proved C18:  fld_rcode(fld_header(output_packet)) <= 
          dns_types__response_code__last
     using hypothesis H15.
***  Proved C19:  fld_qdcount(fld_header(output_packet)) >= 
          dns_types__unsigned_short__first
     using hypothesis H16.
***  Proved C20:  fld_qdcount(fld_header(output_packet)) <= 
          dns_types__unsigned_short__last
     using hypothesis H17.
***  Proved C21:  fld_ancount(fld_header(output_packet)) >= 
          dns_types__unsigned_short__first
     using hypothesis H18.
***  Proved C22:  fld_ancount(fld_header(output_packet)) <= 
          dns_types__unsigned_short__last
     using hypothesis H19.
***  Proved C23:  fld_nscount(fld_header(output_packet)) >= 
          dns_types__unsigned_short__first
     using hypothesis H20.
***  Proved C24:  fld_nscount(fld_header(output_packet)) <= 
          dns_types__unsigned_short__last
     using hypothesis H21.
***  Proved C25:  fld_arcount(fld_header(output_packet)) >= 
          dns_types__unsigned_short__first
     using hypothesis H22.
***  Proved C26:  fld_arcount(fld_header(output_packet)) <= 
          dns_types__unsigned_short__last
     using hypothesis H23.
***  Proved C27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
     using hypothesis H24.
***  Proved C28:  start_byte <= dns_types__packet_size
     using hypothesis H1.
***  Proved C29:  fld_ancount(fld_header(output_packet)) = 0
     using hypothesis H2.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_23.  @@@@@@@@@@
%%%  Simplified H8 on reading formula in, to give:
     %%%  H8:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H9 on reading formula in, to give:
     %%%  H9:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H10 on reading formula in, to give:
     %%%  H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H15 on reading formula in, to give:
     %%%  H15:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H17 on reading formula in, to give:
     %%%  H17:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H29 on reading formula in, to give:
     %%%  H29:  fld_ancount(fld_header(output_packet~)) = 0
---  Hypothesis H38 has been replaced by "true".  (It is already present, as 
          H36).
---  Hypothesis H39 has been replaced by "true".  (It is already present, as 
          H37).
---  Hypothesis H40 has been replaced by "true".  (It is already present, as 
          H34).
---  Hypothesis H41 has been replaced by "true".  (It is already present, as 
          H35).
%%%  Simplified H42 on reading formula in, to give:
     %%%  H42:  true
---  Hypothesis H44 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H45 has been replaced by "true".  (It is already present, as 
          H33).
---  Hypothesis H46 has been replaced by "true".  (It is already present, as 
          H34).
---  Hypothesis H47 has been replaced by "true".  (It is already present, as 
          H35).
---  Hypothesis H50 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H51 has been replaced by "true".  (It is already present, as 
          H33).
---  Hypothesis H54 has been replaced by "true".  (It is already present, as 
          H48).
---  Hypothesis H55 has been replaced by "true".  (It is already present, as 
          H49).
%%%  Simplified H60 on reading formula in, to give:
     %%%  H60:  true
%%%  Simplified C3 on reading formula in, to give:
     %%%  C3:  fld_ancount(fld_header(output_packet)) = 0
%%%  Simplified C8 on reading formula in, to give:
     %%%  C8:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified C9 on reading formula in, to give:
     %%%  C9:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified C10 on reading formula in, to give:
     %%%  C10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified C13 on reading formula in, to give:
     %%%  C13:  fld_messageid(fld_header(output_packet)) >= 
          dns_types__unsigned_short__first
%%%  Simplified C14 on reading formula in, to give:
     %%%  C14:  fld_messageid(fld_header(output_packet)) <= 
          dns_types__unsigned_short__last
%%%  Simplified C15 on reading formula in, to give:
     %%%  C15:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified C16 on reading formula in, to give:
     %%%  C16:  fld_opcode(fld_header(output_packet)) <= 
          dns_types__opcode_type__last
%%%  Simplified C17 on reading formula in, to give:
     %%%  C17:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified C18 on reading formula in, to give:
     %%%  C18:  fld_rcode(fld_header(output_packet)) <= 
          dns_types__response_code__last
%%%  Simplified C19 on reading formula in, to give:
     %%%  C19:  fld_qdcount(fld_header(output_packet)) >= 
          dns_types__unsigned_short__first
%%%  Simplified C20 on reading formula in, to give:
     %%%  C20:  fld_qdcount(fld_header(output_packet)) <= 
          dns_types__unsigned_short__last
%%%  Simplified C21 on reading formula in, to give:
     %%%  C21:  fld_ancount(fld_header(output_packet)) >= 
          dns_types__unsigned_short__first
%%%  Simplified C22 on reading formula in, to give:
     %%%  C22:  fld_ancount(fld_header(output_packet)) <= 
          dns_types__unsigned_short__last
%%%  Simplified C23 on reading formula in, to give:
     %%%  C23:  fld_nscount(fld_header(output_packet)) >= 
          dns_types__unsigned_short__first
%%%  Simplified C24 on reading formula in, to give:
     %%%  C24:  fld_nscount(fld_header(output_packet)) <= 
          dns_types__unsigned_short__last
%%%  Simplified C25 on reading formula in, to give:
     %%%  C25:  fld_arcount(fld_header(output_packet)) >= 
          dns_types__unsigned_short__first
%%%  Simplified C26 on reading formula in, to give:
     %%%  C26:  fld_arcount(fld_header(output_packet)) <= 
          dns_types__unsigned_short__last
%%%  Simplified C27 on reading formula in, to give:
     %%%  C27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(update(fld_bytes(output_packet), [
          current_byte + 1], element(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [i])), [i___1]) and 
          element(update(fld_bytes(output_packet), [current_byte + 1], element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [i])), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified C29 on reading formula in, to give:
     %%%  C29:  fld_ancount(fld_header(output_packet~)) = 0
***  Proved C1:  i + 1 < rr_type__wirestringtypeindex__last
     using hypothesis H64.
***  Proved C2:  i + 1 <= name_length
     using hypothesis H63.
***  Proved C3:  fld_ancount(fld_header(output_packet)) = 0
     using hypothesis H3.
***  Proved C4:  current_byte + 1 >= start_byte
     using hypothesis H4.
***  Proved C5:  current_byte + 1 + dns_types__header_bits div 8 < 
          dns_types__packet_size
     using hypothesis H65.
***  Proved C6:  start_byte >= dns_types__packet_bytes_range__first
     using hypothesis H6.
***  Proved C7:  start_byte <= dns_types__packet_bytes_range__last
     using hypothesis H7.
***  Proved C8:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
     using hypothesis H8.
***  Proved C9:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
     using hypothesis H9.
***  Proved C10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
     using hypothesis H10.
***  Proved C11:  qname_location >= dns_types__qname_ptr_range__first
     using hypothesis H11.
***  Proved C12:  qname_location <= dns_types__qname_ptr_range__last
     using hypothesis H12.
***  Proved C13:  fld_messageid(fld_header(output_packet)) >= 
          dns_types__unsigned_short__first
     using hypothesis H13.
***  Proved C14:  fld_messageid(fld_header(output_packet)) <= 
          dns_types__unsigned_short__last
     using hypothesis H14.
***  Proved C15:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
     using hypothesis H15.
***  Proved C16:  fld_opcode(fld_header(output_packet)) <= 
          dns_types__opcode_type__last
     using hypothesis H16.
***  Proved C17:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
     using hypothesis H17.
***  Proved C18:  fld_rcode(fld_header(output_packet)) <= 
          dns_types__response_code__last
     using hypothesis H18.
***  Proved C19:  fld_qdcount(fld_header(output_packet)) >= 
          dns_types__unsigned_short__first
     using hypothesis H19.
***  Proved C20:  fld_qdcount(fld_header(output_packet)) <= 
          dns_types__unsigned_short__last
     using hypothesis H20.
***  Proved C21:  fld_ancount(fld_header(output_packet)) >= 
          dns_types__unsigned_short__first
     using hypothesis H21.
***  Proved C22:  fld_ancount(fld_header(output_packet)) <= 
          dns_types__unsigned_short__last
     using hypothesis H22.
***  Proved C23:  fld_nscount(fld_header(output_packet)) >= 
          dns_types__unsigned_short__first
     using hypothesis H23.
***  Proved C24:  fld_nscount(fld_header(output_packet)) <= 
          dns_types__unsigned_short__last
     using hypothesis H24.
***  Proved C25:  fld_arcount(fld_header(output_packet)) >= 
          dns_types__unsigned_short__first
     using hypothesis H25.
***  Proved C26:  fld_arcount(fld_header(output_packet)) <= 
          dns_types__unsigned_short__last
     using hypothesis H26.
***  Proved C27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(update(fld_bytes(output_packet), [
          current_byte + 1], element(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [i])), [i___1]) and 
          element(update(fld_bytes(output_packet), [current_byte + 1], element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [i])), [i___1]) <= 
          dns_types__byte__last)
     using hypotheses H27, H32, H33, H36 & H37.
***  Proved C28:  start_byte <= dns_types__packet_size
     using hypothesis H28.
***  Proved C29:  fld_ancount(fld_header(output_packet~)) = 0
     using hypothesis H29.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_24.  @@@@@@@@@@
%%%  Simplified H8 on reading formula in, to give:
     %%%  H8:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H9 on reading formula in, to give:
     %%%  H9:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H10 on reading formula in, to give:
     %%%  H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H15 on reading formula in, to give:
     %%%  H15:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H17 on reading formula in, to give:
     %%%  H17:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H29 on reading formula in, to give:
     %%%  H29:  fld_ancount(fld_header(output_packet~)) = 0
***  Proved C1:  current_byte + 1 >= dns_types__packet_bytes_range__first
     using hypothesis H30.
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H7:  start_byte <= 8180
<S>  New H27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= 8180 -> dns_types__byte__first <= element(
          fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H31:  current_byte <= 8180
<S>  New C2:  current_byte <= 8179
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H5:  current_byte + dns_types__header_bits div 8 < 8192
<S>  New H28:  start_byte <= 8192
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H5:  current_byte < 8180
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H11:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H12:  qname_location <= 16383
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H6:  start_byte >= 1
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
<S>  New H30:  current_byte >= 1
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H13:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H19:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H21:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H23:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H25:  fld_arcount(fld_header(output_packet)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H14:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H20:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H22:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H24:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H26:  fld_arcount(fld_header(output_packet)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H15:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H16:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H17:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H18:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H8:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H8:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H9:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H9:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          and element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]
          ) <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H1:  i < 129
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H8:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H9:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H10:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H8:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H9:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H10:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
***  Proved C2:  current_byte <= 8179
     using hypothesis H5.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_25.  @@@@@@@@@@
%%%  Simplified H8 on reading formula in, to give:
     %%%  H8:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H9 on reading formula in, to give:
     %%%  H9:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H10 on reading formula in, to give:
     %%%  H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H15 on reading formula in, to give:
     %%%  H15:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H17 on reading formula in, to give:
     %%%  H17:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H29 on reading formula in, to give:
     %%%  H29:  fld_ancount(fld_header(output_packet~)) = 0
%%%  Simplified C7 on reading formula in, to give:
     %%%  C7:  true
***  Proved C5:  i >= rr_type__wirestringtypeindex__first
     using hypothesis H34.
***  Proved C6:  i <= rr_type__wirestringtypeindex__last
     using hypothesis H35.
***  Proved C7:  true
***  Proved C9:  current_byte + 1 >= dns_types__packet_bytes_range__first
     using hypothesis H32.
***  Proved C10:  current_byte + 1 <= dns_types__packet_bytes_range__last
     using hypothesis H33.
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= dns_types__packet_bytes_range__last -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New C1:  element(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [i]) >= 0
<S>  New C3:  element(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [i]) >= 0
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first <= 
          i___1 and i___1 <= dns_types__packet_bytes_range__last -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
<S>  New C2:  element(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [i]) <= 255
<S>  New C4:  element(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [i]) <= 255
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H8:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
<S>  New H9:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
<S>  New H10:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
<S>  New C8:  1 <= rr_type__returnedrecordsindextype__last
<S>  New C1:  element(fld_canonicaldomainname(element(cnames, [1])), [i]) >= 0
<S>  New C3:  element(fld_canonicaldomainname(element(cnames, [1])), [i]) >= 0
<S>  New C2:  element(fld_canonicaldomainname(element(cnames, [1])), [i]) <= 255
<S>  New C4:  element(fld_canonicaldomainname(element(cnames, [1])), [i]) <= 255
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H8:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
<S>  New H9:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__classtype__first <= fld_class(fld_inherit(element(cnames, [
          i___1]))) and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
<S>  New H10:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 and 
          i___2 <= rr_type__wirestringtypeindex__last -> character__first <= 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          and element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]
          ) <= character__last))
<S>  New C8:  true
***  Proved C8:  true
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H5:  current_byte + dns_types__header_bits div 8 < 8192
<S>  New H28:  start_byte <= 8192
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H5:  current_byte < 8180
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H10:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 and 
          i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H10:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 and 
          i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H11:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H12:  qname_location <= 16383
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H6:  start_byte >= 1
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> 0 <= element(fld_bytes(
          output_packet), [i___1]) and element(fld_bytes(output_packet), [i___1]
          ) <= 255)
<S>  New H30:  current_byte >= 1
<S>  New H32:  current_byte >= 0
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H7:  start_byte <= 8180
<S>  New H31:  current_byte <= 8180
<S>  New H33:  current_byte <= 8179
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H13:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H19:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H21:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H23:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H25:  fld_arcount(fld_header(output_packet)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H14:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H20:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H22:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H24:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H26:  fld_arcount(fld_header(output_packet)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H15:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H16:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H17:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H18:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H8:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H8:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H9:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H9:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H34:  i >= 1
<S>  New H10:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H1:  i < 129
<S>  New H35:  i <= 129
<S>  New H10:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
***  Proved C1:  element(fld_canonicaldomainname(element(cnames, [1])), [i]) >= 
          0
     using hypotheses H10, H34 & H35.
***  Proved C3:  element(fld_canonicaldomainname(element(cnames, [1])), [i]) >= 
          0
     using hypotheses H10, H34 & H35.
***  Proved C2:  element(fld_canonicaldomainname(element(cnames, [1])), [i]) <= 
          255
     using hypotheses H10, H34 & H35.
***  Proved C4:  element(fld_canonicaldomainname(element(cnames, [1])), [i]) <= 
          255
     using hypotheses H10, H34 & H35.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_26.  @@@@@@@@@@
%%%  Simplified H8 on reading formula in, to give:
     %%%  H8:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H9 on reading formula in, to give:
     %%%  H9:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H10 on reading formula in, to give:
     %%%  H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H15 on reading formula in, to give:
     %%%  H15:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H17 on reading formula in, to give:
     %%%  H17:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H29 on reading formula in, to give:
     %%%  H29:  fld_ancount(fld_header(output_packet~)) = 0
---  Hypothesis H38 has been replaced by "true".  (It is already present, as 
          H36).
---  Hypothesis H39 has been replaced by "true".  (It is already present, as 
          H37).
---  Hypothesis H40 has been replaced by "true".  (It is already present, as 
          H34).
---  Hypothesis H41 has been replaced by "true".  (It is already present, as 
          H35).
%%%  Simplified H42 on reading formula in, to give:
     %%%  H42:  true
---  Hypothesis H44 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H45 has been replaced by "true".  (It is already present, as 
          H33).
---  Hypothesis H46 has been replaced by "true".  (It is already present, as 
          H34).
---  Hypothesis H47 has been replaced by "true".  (It is already present, as 
          H35).
***  Proved C1:  i + 1 >= rr_type__wirestringtypeindex__first
     using hypothesis H34.
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H1:  i < 129
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 129 -> 
          character__first <= element(fld_canonicaldomainname(element(cnames, [
          i___1])), [i___2]) and element(fld_canonicaldomainname(element(
          cnames, [i___1])), [i___2]) <= character__last))
<S>  New H35:  i <= 129
<S>  New C2:  i <= 128
***  Proved C2:  i <= 128
     using hypothesis H1.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_27.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H59 on reading formula in, to give:
     %%%  H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H62).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H63).
---  Hypothesis H86 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H87 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H93 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H94 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H97 on reading formula in, to give:
     %%%  H97:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__2), [i___1]
          ) and element(fld_bytes(output_packet__2), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H98 on reading formula in, to give:
     %%%  H98:  fld_header(output_packet__2) = fld_header(output_packet__1)
%%%  Simplified H99 on reading formula in, to give:
     %%%  H99:  output_packet__2 = upf_bytes(output_packet__1, fld_bytes(
          output_packet__2))
---  Hypothesis H100 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H101 has been replaced by "true".  (It is already present, as 
          H4).
---  Hypothesis H102 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H103 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H109 has been replaced by "true".  (It is already present, as 
          H104).
---  Hypothesis H110 has been replaced by "true".  (It is already present, as 
          H105).
%%%  Simplified H113 on reading formula in, to give:
     %%%  H113:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__3), [i___1]
          ) and element(fld_bytes(output_packet__3), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H116 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H117 has been replaced by "true".  (It is already present, as 
          H4).
---  Hypothesis H120 has been replaced by "true".  (It is already present, as 
          H118).
---  Hypothesis H121 has been replaced by "true".  (It is already present, as 
          H119).
---  Hypothesis H124 has been replaced by "true".  (It is already present, as 
          H122).
---  Hypothesis H125 has been replaced by "true".  (It is already present, as 
          H123).
---  Hypothesis H128 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H129 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H130 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H135 has been replaced by "true".  (It is already present, as 
          H118).
---  Hypothesis H136 has been replaced by "true".  (It is already present, as 
          H119).
---  Hypothesis H137 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H138 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H139 has been replaced by "true".  (It is already present, as 
          H133).
---  Hypothesis H140 has been replaced by "true".  (It is already present, as 
          H134).
---  Hypothesis H141 has been replaced by "true".  (It is already present, as 
          H126).
---  Hypothesis H142 has been replaced by "true".  (It is already present, as 
          H127).
---  Hypothesis H143 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H144 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H145 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H146 has been replaced by "true".  (It is already present, as 
          H131).
---  Hypothesis H147 has been replaced by "true".  (It is already present, as 
          H132).
---  Hypothesis H149 has been replaced by "true".  (It is already present, as 
          H118).
---  Hypothesis H150 has been replaced by "true".  (It is already present, as 
          H119).
%%%  Simplified C11 on reading formula in, to give:
     %%%  C11:  true
***  Proved C9:  dns_types__header_bits div 8 >= system__min_int
     using hypothesis H42.
***  Proved C10:  dns_types__header_bits div 8 <= system__max_int
     using hypothesis H43.
***  Proved C11:  true
-S-  Applied substitution rule process_resp_rules(28).
     This was achieved by replacing all occurrences of 
          dns_types__packet_length_range__first by:
          0.
<S>  New C1:  start_byte + 12 + dns_types__header_bits div 8 >= 0
<S>  New C3:  start_byte + 12 + dns_types__header_bits div 8 >= 0
-S-  Applied substitution rule process_resp_rules(29).
     This was achieved by replacing all occurrences of 
          dns_types__packet_length_range__last by:
          8192.
<S>  New C2:  start_byte + 12 + dns_types__header_bits div 8 <= 8192
<S>  New C4:  start_byte + 12 + dns_types__header_bits div 8 <= 8192
-S-  Applied substitution rule process_resp_rules(35).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__first by:
          - 2147483648.
<S>  New H57:  start_byte >= - 2147483649
<S>  New H66:  start_byte >= - 2147483651
<S>  New H72:  start_byte >= - 2147483652
<S>  New H78:  start_byte >= - 2147483653
<S>  New H84:  start_byte >= - 2147483654
<S>  New H95:  start_byte >= - 2147483655
<S>  New H111:  start_byte >= - 2147483659
<S>  New C5:  start_byte + 12 + dns_types__header_bits div 8 >= - 2147483648
-S-  Applied substitution rule process_resp_rules(36).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__last by:
          2147483647.
<S>  New H58:  start_byte <= 2147483646
<S>  New H67:  start_byte <= 2147483644
<S>  New H73:  start_byte <= 2147483643
<S>  New H79:  start_byte <= 2147483642
<S>  New H85:  start_byte <= 2147483641
<S>  New H96:  start_byte <= 2147483640
<S>  New H112:  start_byte <= 2147483636
<S>  New C6:  start_byte + 12 + dns_types__header_bits div 8 <= 2147483647
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H3:  start_byte >= 1
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H52:  start_byte >= 0
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New H64:  start_byte >= - 2
<S>  New H70:  start_byte >= - 3
<S>  New H76:  start_byte >= - 4
<S>  New H82:  start_byte >= - 5
<S>  New H90:  start_byte >= - 6
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= dns_types__byte__last)
<S>  New H106:  start_byte >= - 10
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet__3), [i___1]) and element(fld_bytes(
          output_packet__3), [i___1]) <= dns_types__byte__last)
<S>  New H118:  start_byte >= - 11
<S>  New C7:  dns_types__header_bits div 8 >= 1
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H53:  start_byte <= 8179
<S>  New H54:  start_byte <= 8178
<S>  New H65:  start_byte <= 8177
<S>  New H71:  start_byte <= 8176
<S>  New H77:  start_byte <= 8175
<S>  New H83:  start_byte <= 8174
<S>  New H91:  start_byte <= 8173
<S>  New H92:  start_byte <= 8170
<S>  New H107:  start_byte <= 8169
<S>  New H108:  start_byte <= 8168
<S>  New H119:  start_byte <= 8168
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__2), [i___1]
          ) and element(fld_bytes(output_packet__2), [i___1]) <= 
          dns_types__byte__last)
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__3), [i___1]
          ) and element(fld_bytes(output_packet__3), [i___1]) <= 
          dns_types__byte__last)
<S>  New C8:  dns_types__header_bits div 8 <= 8180
>>>  Restructured hypothesis H148 into:
     >>>  H148:  rr_type__wirenamelength(fld_canonicaldomainname(element(
          cnames, [rr_type__returnedrecordsindextype__first]))) < 1 or (
          rr_type__wirestringtypeindex__last <= 1 or dns_types__packet_size <= 
          start_byte + 12 + dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H1:  start_byte <= 8192
<S>  New H38:  8192 - (12 + dns_types__header_bits div 8) >= system__min_int
<S>  New H39:  8192 - (12 + dns_types__header_bits div 8) <= system__max_int
<S>  New H47:  start_byte < 8192 - (12 + dns_types__header_bits div 8)
<S>  New H148:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) < 1 or (
          rr_type__wirestringtypeindex__last <= 1 or 8192 <= start_byte + 12 + 
          dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H40:  24 >= system__min_int
<S>  New H41:  24 <= system__max_int
<S>  New H42:  12 >= system__min_int
<S>  New H43:  12 <= system__max_int
<S>  New H122:  start_byte + 12 + 12 >= dns_types__qname_ptr_range__first
<S>  New H123:  start_byte + 12 + 12 <= dns_types__qname_ptr_range__last
<S>  New H126:  start_byte + 12 + 12 >= integer__base__first
<S>  New H127:  start_byte + 12 + 12 <= integer__base__last
<S>  New H38:  8168 >= system__min_int
<S>  New H39:  8168 <= system__max_int
<S>  New H47:  start_byte < 8168
<S>  New H148:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) < 1 or (
          rr_type__wirestringtypeindex__last <= 1 or 8180 <= start_byte + 12)
<S>  New C1:  start_byte + 12 >= - 12
<S>  New C3:  start_byte + 12 >= - 12
<S>  New C2:  start_byte + 12 <= 8180
<S>  New C4:  start_byte + 12 <= 8180
<S>  New C5:  start_byte + 12 >= - 2147483660
<S>  New C6:  start_byte + 12 <= 2147483635
<S>  New C7:  true
<S>  New C8:  true
-S-  Applied substitution rule process_resp_rules(3).
     This was achieved by replacing all occurrences of 
          rr_type__maxdomainnamelength by:
          128.
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) = 129 or element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H40:  true
<S>  New H42:  true
<S>  New H38:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H41:  true
<S>  New H43:  true
<S>  New H39:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H45:  start_byte >= - 2147483648
<S>  New H131:  start_byte >= - 2147483660
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H46:  start_byte <= 2147483647
<S>  New H132:  start_byte <= 2147483635
-S-  Applied substitution rule process_resp_rules(9).
     This was achieved by replacing all occurrences of integer__base__first by:
          - 2147483648.
<S>  New H126:  start_byte >= - 2147483672
-S-  Applied substitution rule process_resp_rules(10).
     This was achieved by replacing all occurrences of integer__base__last by:
          2147483647.
<S>  New H127:  start_byte <= 2147483623
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H8:  qname_location >= 0
<S>  New H122:  start_byte >= - 24
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H9:  qname_location <= 16383
<S>  New H123:  start_byte <= 16359
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New H62:  true
<S>  New H68:  true
<S>  New H80:  true
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= dns_types__byte__last)
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__3), [i___1]) and element(fld_bytes(
          output_packet__3), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H63:  true
<S>  New H69:  true
<S>  New H81:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= 255)
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= 255)
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__3), [i___1]) and element(fld_bytes(
          output_packet__3), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H10:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H16:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H18:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H20:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H22:  fld_arcount(fld_header(output_packet)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H12:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H13:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H14:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H15:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(114).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__first by:
          0.
<S>  New H50:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          >= 0
<S>  New H55:  qname_location >= 0
<S>  New H104:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) >= 0
-S-  Applied substitution rule process_resp_rules(115).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__last by:
          65535.
<S>  New H51:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          <= 65535
<S>  New H56:  qname_location <= 65535
<S>  New H105:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) <= 65535
-S-  Applied substitution rule process_resp_rules(118).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__modulus by:
          65536.
<S>  New H50:  (qname_location + 49152) mod 65536 >= 0
<S>  New H51:  (qname_location + 49152) mod 65536 <= 65535
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
<S>  New H88:  fld_ttlinseconds(fld_inherit(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 0
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H89:  fld_ttlinseconds(fld_inherit(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 4294967295
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New H133:  true
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H134:  true
<S>  New H148:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) < 1 or 8168 <= 
          start_byte
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) = 129 or element(fld_canonicaldomainname(element(cnames, [1])), 
          [rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1]))
          )]) = 0 and for_all(q_ : integer, 1 <= q_ and q_ <= 
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1])))
           - 1 -> element(fld_canonicaldomainname(element(cnames, [1])), [q_]) 
          <> 0)
<S>  New H104:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [1]))) >= 0
<S>  New H105:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [1]))) <= 65535
<S>  New H88:  fld_ttlinseconds(fld_inherit(element(cnames, [1]))) >= 0
<S>  New H89:  fld_ttlinseconds(fld_inherit(element(cnames, [1]))) <= 4294967295
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 1
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 129
<S>  New H148:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [1]))) < 1 or 8168 <= start_byte
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H28:  true
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
%%%  Simplified C1 further, to give:
     %%%  C1:  start_byte >= - 24
%%%  Simplified C2 further, to give:
     %%%  C2:  start_byte <= 8168
%%%  Simplified C3 further, to give:
     %%%  C3:  start_byte >= - 24
%%%  Simplified C4 further, to give:
     %%%  C4:  start_byte <= 8168
%%%  Simplified C5 further, to give:
     %%%  C5:  start_byte >= - 2147483672
%%%  Simplified C6 further, to give:
     %%%  C6:  start_byte <= 2147483623
***  Proved C7:  true
***  Proved C8:  true
***  Proved C1:  start_byte >= - 24
     using hypothesis H122.
***  Proved C2:  start_byte <= 8168
     using hypothesis H108.
***  Proved C3:  start_byte >= - 24
     using hypothesis H122.
***  Proved C4:  start_byte <= 8168
     using hypothesis H108.
***  Proved C5:  start_byte >= - 2147483672
     using hypothesis H126.
***  Proved C6:  start_byte <= 2147483623
     using hypothesis H127.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_28.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H52 has been replaced by "true".  (It is already present, as 
          H50).
---  Hypothesis H53 has been replaced by "true".  (It is already present, as 
          H51).
---  Hypothesis H56 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H57 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H58 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H59 has been replaced by "true".  (It is already present, as 
          H45).
---  Hypothesis H60 has been replaced by "true".  (It is already present, as 
          H46).
---  Hypothesis H63 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H64 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H65 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H66 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H67 has been replaced by "true".  (It is already present, as 
          H61).
---  Hypothesis H68 has been replaced by "true".  (It is already present, as 
          H62).
---  Hypothesis H69 has been replaced by "true".  (It is already present, as 
          H54).
---  Hypothesis H70 has been replaced by "true".  (It is already present, as 
          H55).
---  Hypothesis H71 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H72 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H73 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H45).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H46).
---  Hypothesis H77 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H78 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified C11 on reading formula in, to give:
     %%%  C11:  true
***  Proved C9:  dns_types__header_bits div 8 >= system__min_int
     using hypothesis H42.
***  Proved C10:  dns_types__header_bits div 8 <= system__max_int
     using hypothesis H43.
***  Proved C11:  true
-S-  Applied substitution rule process_resp_rules(28).
     This was achieved by replacing all occurrences of 
          dns_types__packet_length_range__first by:
          0.
<S>  New C1:  start_byte + dns_types__header_bits div 8 >= 0
<S>  New C3:  start_byte + dns_types__header_bits div 8 >= 0
-S-  Applied substitution rule process_resp_rules(29).
     This was achieved by replacing all occurrences of 
          dns_types__packet_length_range__last by:
          8192.
<S>  New C2:  start_byte + dns_types__header_bits div 8 <= 8192
<S>  New C4:  start_byte + dns_types__header_bits div 8 <= 8192
-S-  Applied substitution rule process_resp_rules(35).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__first by:
          - 2147483648.
<S>  New C5:  start_byte + dns_types__header_bits div 8 >= - 2147483648
-S-  Applied substitution rule process_resp_rules(36).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__last by:
          2147483647.
<S>  New C6:  start_byte + dns_types__header_bits div 8 <= 2147483647
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H3:  start_byte >= 1
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New C7:  dns_types__header_bits div 8 >= 1
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
<S>  New C8:  dns_types__header_bits div 8 <= 8180
>>>  Restructured hypothesis H47 into:
     >>>  H47:  dns_types__packet_size - (12 + dns_types__header_bits div 8) <= 
          start_byte
>>>  Restructured hypothesis H76 into:
     >>>  H76:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) < 1 or (
          rr_type__wirestringtypeindex__last <= 1 or dns_types__packet_size <= 
          start_byte + dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H1:  start_byte <= 8192
<S>  New H38:  8192 - (12 + dns_types__header_bits div 8) >= system__min_int
<S>  New H39:  8192 - (12 + dns_types__header_bits div 8) <= system__max_int
<S>  New H47:  8192 - (12 + dns_types__header_bits div 8) <= start_byte
<S>  New H76:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) < 1 or (
          rr_type__wirestringtypeindex__last <= 1 or 8192 <= start_byte + 
          dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H40:  24 >= system__min_int
<S>  New H41:  24 <= system__max_int
<S>  New H42:  12 >= system__min_int
<S>  New H43:  12 <= system__max_int
<S>  New H50:  start_byte + 12 >= dns_types__qname_ptr_range__first
<S>  New H51:  start_byte + 12 <= dns_types__qname_ptr_range__last
<S>  New H54:  start_byte + 12 >= integer__base__first
<S>  New H55:  start_byte + 12 <= integer__base__last
<S>  New H38:  8168 >= system__min_int
<S>  New H39:  8168 <= system__max_int
<S>  New H47:  8168 <= start_byte
<S>  New H76:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) < 1 or (
          rr_type__wirestringtypeindex__last <= 1 or 8180 <= start_byte)
<S>  New C1:  start_byte >= - 12
<S>  New C3:  start_byte >= - 12
<S>  New C2:  start_byte <= 8180
<S>  New C4:  start_byte <= 8180
<S>  New C5:  start_byte >= - 2147483660
<S>  New C6:  start_byte <= 2147483635
<S>  New C7:  true
<S>  New C8:  true
-S-  Applied substitution rule process_resp_rules(3).
     This was achieved by replacing all occurrences of 
          rr_type__maxdomainnamelength by:
          128.
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) = 129 or element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H40:  true
<S>  New H42:  true
<S>  New H38:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H41:  true
<S>  New H43:  true
<S>  New H39:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H45:  start_byte >= - 2147483648
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H46:  start_byte <= 2147483647
-S-  Applied substitution rule process_resp_rules(9).
     This was achieved by replacing all occurrences of integer__base__first by:
          - 2147483648.
<S>  New H54:  start_byte >= - 2147483660
-S-  Applied substitution rule process_resp_rules(10).
     This was achieved by replacing all occurrences of integer__base__last by:
          2147483647.
<S>  New H55:  start_byte <= 2147483635
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H8:  qname_location >= 0
<S>  New H50:  start_byte >= - 12
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H9:  qname_location <= 16383
<S>  New H51:  start_byte <= 16371
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H10:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H16:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H18:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H20:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H22:  fld_arcount(fld_header(output_packet)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H12:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H13:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H14:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H15:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New H61:  true
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H62:  true
<S>  New H76:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) < 1 or 8180 <= start_byte
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) = 129 or element(fld_canonicaldomainname(element(cnames, [1])), 
          [rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1]))
          )]) = 0 and for_all(q_ : integer, 1 <= q_ and q_ <= 
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1])))
           - 1 -> element(fld_canonicaldomainname(element(cnames, [1])), [q_]) 
          <> 0)
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 1
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 129
<S>  New H76:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) < 1 or 8180 <= start_byte
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H28:  true
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
***  Proved C1:  start_byte >= - 12
     using hypothesis H50.
***  Proved C3:  start_byte >= - 12
     using hypothesis H50.
***  Proved C2:  start_byte <= 8180
     using hypothesis H4.
***  Proved C4:  start_byte <= 8180
     using hypothesis H4.
***  Proved C5:  start_byte >= - 2147483660
     using hypothesis H54.
***  Proved C6:  start_byte <= 2147483635
     using hypothesis H55.
***  Proved C7:  true
***  Proved C8:  true
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_29.  @@@@@@@@@@
%%%  Simplified H8 on reading formula in, to give:
     %%%  H8:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H9 on reading formula in, to give:
     %%%  H9:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H10 on reading formula in, to give:
     %%%  H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H15 on reading formula in, to give:
     %%%  H15:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H17 on reading formula in, to give:
     %%%  H17:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H29 on reading formula in, to give:
     %%%  H29:  fld_ancount(fld_header(output_packet~)) = 0
---  Hypothesis H38 has been replaced by "true".  (It is already present, as 
          H36).
---  Hypothesis H39 has been replaced by "true".  (It is already present, as 
          H37).
---  Hypothesis H40 has been replaced by "true".  (It is already present, as 
          H34).
---  Hypothesis H41 has been replaced by "true".  (It is already present, as 
          H35).
%%%  Simplified H42 on reading formula in, to give:
     %%%  H42:  true
---  Hypothesis H44 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H45 has been replaced by "true".  (It is already present, as 
          H33).
---  Hypothesis H46 has been replaced by "true".  (It is already present, as 
          H34).
---  Hypothesis H47 has been replaced by "true".  (It is already present, as 
          H35).
---  Hypothesis H50 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H51 has been replaced by "true".  (It is already present, as 
          H33).
---  Hypothesis H54 has been replaced by "true".  (It is already present, as 
          H48).
---  Hypothesis H55 has been replaced by "true".  (It is already present, as 
          H49).
%%%  Simplified H60 on reading formula in, to give:
     %%%  H60:  true
---  Hypothesis H64 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H65 has been replaced by "true".  (It is already present, as 
          H33).
%%%  Simplified C11 on reading formula in, to give:
     %%%  C11:  true
***  Proved C9:  dns_types__header_bits div 8 >= system__min_int
     using hypothesis H58.
***  Proved C10:  dns_types__header_bits div 8 <= system__max_int
     using hypothesis H59.
***  Proved C11:  true
-S-  Applied substitution rule process_resp_rules(28).
     This was achieved by replacing all occurrences of 
          dns_types__packet_length_range__first by:
          0.
<S>  New C1:  current_byte + 1 + dns_types__header_bits div 8 >= 0
<S>  New C3:  current_byte + 1 + dns_types__header_bits div 8 >= 0
-S-  Applied substitution rule process_resp_rules(29).
     This was achieved by replacing all occurrences of 
          dns_types__packet_length_range__last by:
          8192.
<S>  New C2:  current_byte + 1 + dns_types__header_bits div 8 <= 8192
<S>  New C4:  current_byte + 1 + dns_types__header_bits div 8 <= 8192
-S-  Applied substitution rule process_resp_rules(35).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__first by:
          - 2147483648.
<S>  New C5:  current_byte + 1 + dns_types__header_bits div 8 >= - 2147483648
-S-  Applied substitution rule process_resp_rules(36).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__last by:
          2147483647.
<S>  New C6:  current_byte + 1 + dns_types__header_bits div 8 <= 2147483647
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H6:  start_byte >= 1
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H30:  current_byte >= 1
<S>  New H32:  current_byte >= 0
<S>  New C7:  dns_types__header_bits div 8 >= 1
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H7:  start_byte <= 8180
<S>  New H31:  current_byte <= 8180
<S>  New H33:  current_byte <= 8179
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
<S>  New C8:  dns_types__header_bits div 8 <= 8180
>>>  Restructured hypothesis H63 into:
     >>>  H63:  name_length < i + 1 or (rr_type__wirestringtypeindex__last <= i 
          + 1 or dns_types__packet_size <= current_byte + 1 + 
          dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H5:  current_byte + dns_types__header_bits div 8 < 8192
<S>  New H28:  start_byte <= 8192
<S>  New H63:  name_length < i + 1 or (rr_type__wirestringtypeindex__last <= i 
          + 1 or 8192 <= current_byte + 1 + dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H56:  current_byte + 1 + 12 >= integer__base__first
<S>  New H57:  current_byte + 1 + 12 <= integer__base__last
<S>  New H58:  12 >= system__min_int
<S>  New H59:  12 <= system__max_int
<S>  New H5:  current_byte < 8180
<S>  New H63:  name_length < i + 1 or (rr_type__wirestringtypeindex__last <= i 
          + 1 or 8180 <= current_byte + 1)
<S>  New C1:  current_byte + 1 >= - 12
<S>  New C3:  current_byte + 1 >= - 12
<S>  New C2:  current_byte + 1 <= 8180
<S>  New C4:  current_byte + 1 <= 8180
<S>  New C5:  current_byte + 1 >= - 2147483660
<S>  New C6:  current_byte + 1 <= 2147483635
<S>  New C7:  true
<S>  New C8:  true
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H58:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H59:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H61:  current_byte >= - 2147483649
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H62:  current_byte <= 2147483646
-S-  Applied substitution rule process_resp_rules(9).
     This was achieved by replacing all occurrences of integer__base__first by:
          - 2147483648.
<S>  New H56:  current_byte >= - 2147483661
-S-  Applied substitution rule process_resp_rules(10).
     This was achieved by replacing all occurrences of integer__base__last by:
          2147483647.
<S>  New H57:  current_byte <= 2147483634
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H11:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H12:  qname_location <= 16383
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H36:  element(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [i]) >= 0
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H37:  element(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [i]) <= 255
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H13:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H19:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H21:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H23:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H25:  fld_arcount(fld_header(output_packet)) >= 0
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H14:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H20:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H22:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H24:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H26:  fld_arcount(fld_header(output_packet)) <= 65535
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H15:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H16:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H17:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H18:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H8:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H8:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H9:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H9:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H34:  i >= 1
<S>  New H48:  i >= 0
<S>  New H52:  name_length >= 1
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          and element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]
          ) <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H1:  i < 129
<S>  New H35:  i <= 129
<S>  New H49:  i <= 128
<S>  New H53:  name_length <= 129
<S>  New H63:  name_length < i + 1 or (128 <= i or 8179 <= current_byte)
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H43:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H36:  element(fld_canonicaldomainname(element(cnames, [1])), [i]) >= 0
<S>  New H37:  element(fld_canonicaldomainname(element(cnames, [1])), [i]) <= 
          255
<S>  New H8:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H9:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H10:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H43:  true
<S>  New H8:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H9:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H10:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
%%%  Simplified C1 further, to give:
     %%%  C1:  current_byte >= - 13
%%%  Simplified C2 further, to give:
     %%%  C2:  current_byte <= 8179
%%%  Simplified C3 further, to give:
     %%%  C3:  current_byte >= - 13
%%%  Simplified C4 further, to give:
     %%%  C4:  current_byte <= 8179
%%%  Simplified C5 further, to give:
     %%%  C5:  current_byte >= - 2147483661
%%%  Simplified C6 further, to give:
     %%%  C6:  current_byte <= 2147483634
***  Proved C7:  true
***  Proved C8:  true
***  Proved C1:  current_byte >= - 13
     using hypothesis H30.
***  Proved C2:  current_byte <= 8179
     using hypothesis H33.
***  Proved C3:  current_byte >= - 13
     using hypothesis H30.
***  Proved C4:  current_byte <= 8179
     using hypothesis H33.
***  Proved C5:  current_byte >= - 2147483661
     using hypothesis H56.
***  Proved C6:  current_byte <= 2147483634
     using hypothesis H57.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_30.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H59 on reading formula in, to give:
     %%%  H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H62).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H63).
---  Hypothesis H86 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H87 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H93 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H94 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H97 on reading formula in, to give:
     %%%  H97:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__2), [i___1]
          ) and element(fld_bytes(output_packet__2), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H98 on reading formula in, to give:
     %%%  H98:  fld_header(output_packet__2) = fld_header(output_packet__1)
%%%  Simplified H99 on reading formula in, to give:
     %%%  H99:  output_packet__2 = upf_bytes(output_packet__1, fld_bytes(
          output_packet__2))
---  Hypothesis H100 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H101 has been replaced by "true".  (It is already present, as 
          H4).
---  Hypothesis H102 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H103 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H109 has been replaced by "true".  (It is already present, as 
          H104).
---  Hypothesis H110 has been replaced by "true".  (It is already present, as 
          H105).
%%%  Simplified H113 on reading formula in, to give:
     %%%  H113:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__3), [i___1]
          ) and element(fld_bytes(output_packet__3), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H116 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H117 has been replaced by "true".  (It is already present, as 
          H4).
---  Hypothesis H120 has been replaced by "true".  (It is already present, as 
          H118).
---  Hypothesis H121 has been replaced by "true".  (It is already present, as 
          H119).
---  Hypothesis H124 has been replaced by "true".  (It is already present, as 
          H122).
---  Hypothesis H125 has been replaced by "true".  (It is already present, as 
          H123).
---  Hypothesis H128 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H129 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H130 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H135 has been replaced by "true".  (It is already present, as 
          H118).
---  Hypothesis H136 has been replaced by "true".  (It is already present, as 
          H119).
---  Hypothesis H137 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H138 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H139 has been replaced by "true".  (It is already present, as 
          H133).
---  Hypothesis H140 has been replaced by "true".  (It is already present, as 
          H134).
---  Hypothesis H141 has been replaced by "true".  (It is already present, as 
          H126).
---  Hypothesis H142 has been replaced by "true".  (It is already present, as 
          H127).
---  Hypothesis H143 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H144 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H145 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H146 has been replaced by "true".  (It is already present, as 
          H131).
---  Hypothesis H147 has been replaced by "true".  (It is already present, as 
          H132).
---  Hypothesis H149 has been replaced by "true".  (It is already present, as 
          H118).
---  Hypothesis H150 has been replaced by "true".  (It is already present, as 
          H119).
---  Hypothesis H153 has been replaced by "true".  (It is already present, as 
          H151).
---  Hypothesis H154 has been replaced by "true".  (It is already present, as 
          H152).
---  Hypothesis H159 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H160 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H161 has been replaced by "true".  (It is already present, as 
          H44).
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H10:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H16:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H18:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H20:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H22:  fld_arcount(fld_header(output_packet)) >= 0
<S>  New C1:  fld_ancount(fld_header(output_packet__3)) >= - 1
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
<S>  New C2:  fld_ancount(fld_header(output_packet__3)) <= 65534
>>>  Restructured hypothesis H148 into:
     >>>  H148:  rr_type__wirenamelength(fld_canonicaldomainname(element(
          cnames, [rr_type__returnedrecordsindextype__first]))) < 1 or (
          rr_type__wirestringtypeindex__last <= 1 or dns_types__packet_size <= 
          start_byte + 12 + dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H1:  start_byte <= 8192
<S>  New H38:  8192 - (12 + dns_types__header_bits div 8) >= system__min_int
<S>  New H39:  8192 - (12 + dns_types__header_bits div 8) <= system__max_int
<S>  New H47:  start_byte < 8192 - (12 + dns_types__header_bits div 8)
<S>  New H148:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) < 1 or (
          rr_type__wirestringtypeindex__last <= 1 or 8192 <= start_byte + 12 + 
          dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H40:  24 >= system__min_int
<S>  New H41:  24 <= system__max_int
<S>  New H42:  12 >= system__min_int
<S>  New H43:  12 <= system__max_int
<S>  New H122:  start_byte + 12 + 12 >= dns_types__qname_ptr_range__first
<S>  New H123:  start_byte + 12 + 12 <= dns_types__qname_ptr_range__last
<S>  New H126:  start_byte + 12 + 12 >= integer__base__first
<S>  New H127:  start_byte + 12 + 12 <= integer__base__last
<S>  New H151:  start_byte + 12 + 12 >= dns_types__packet_length_range__first
<S>  New H152:  start_byte + 12 + 12 <= dns_types__packet_length_range__last
<S>  New H155:  start_byte + 12 + 12 >= 
          dns_types__packet_bytes_range__base__first
<S>  New H156:  start_byte + 12 + 12 <= 
          dns_types__packet_bytes_range__base__last
<S>  New H157:  12 >= dns_types__packet_bytes_range__first
<S>  New H158:  12 <= dns_types__packet_bytes_range__last
<S>  New H38:  8168 >= system__min_int
<S>  New H39:  8168 <= system__max_int
<S>  New H47:  start_byte < 8168
<S>  New H148:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) < 1 or (
          rr_type__wirestringtypeindex__last <= 1 or 8180 <= start_byte + 12)
-S-  Applied substitution rule process_resp_rules(3).
     This was achieved by replacing all occurrences of 
          rr_type__maxdomainnamelength by:
          128.
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) = 129 or element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H40:  true
<S>  New H42:  true
<S>  New H38:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H41:  true
<S>  New H43:  true
<S>  New H39:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H45:  start_byte >= - 2147483648
<S>  New H131:  start_byte >= - 2147483660
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H46:  start_byte <= 2147483647
<S>  New H132:  start_byte <= 2147483635
-S-  Applied substitution rule process_resp_rules(9).
     This was achieved by replacing all occurrences of integer__base__first by:
          - 2147483648.
<S>  New H126:  start_byte >= - 2147483672
-S-  Applied substitution rule process_resp_rules(10).
     This was achieved by replacing all occurrences of integer__base__last by:
          2147483647.
<S>  New H127:  start_byte <= 2147483623
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H8:  qname_location >= 0
<S>  New H122:  start_byte >= - 24
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H9:  qname_location <= 16383
<S>  New H123:  start_byte <= 16359
-S-  Applied substitution rule process_resp_rules(28).
     This was achieved by replacing all occurrences of 
          dns_types__packet_length_range__first by:
          0.
<S>  New H151:  start_byte >= - 24
-S-  Applied substitution rule process_resp_rules(29).
     This was achieved by replacing all occurrences of 
          dns_types__packet_length_range__last by:
          8192.
<S>  New H152:  start_byte <= 8168
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H3:  start_byte >= 1
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H52:  start_byte >= 0
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New H64:  start_byte >= - 2
<S>  New H70:  start_byte >= - 3
<S>  New H76:  start_byte >= - 4
<S>  New H82:  start_byte >= - 5
<S>  New H90:  start_byte >= - 6
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= dns_types__byte__last)
<S>  New H106:  start_byte >= - 10
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet__3), [i___1]) and element(fld_bytes(
          output_packet__3), [i___1]) <= dns_types__byte__last)
<S>  New H118:  start_byte >= - 11
<S>  New H157:  true
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H53:  start_byte <= 8179
<S>  New H54:  start_byte <= 8178
<S>  New H65:  start_byte <= 8177
<S>  New H71:  start_byte <= 8176
<S>  New H77:  start_byte <= 8175
<S>  New H83:  start_byte <= 8174
<S>  New H91:  start_byte <= 8173
<S>  New H92:  start_byte <= 8170
<S>  New H107:  start_byte <= 8169
<S>  New H108:  start_byte <= 8168
<S>  New H119:  start_byte <= 8168
<S>  New H158:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__2), [i___1]
          ) and element(fld_bytes(output_packet__2), [i___1]) <= 
          dns_types__byte__last)
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__3), [i___1]
          ) and element(fld_bytes(output_packet__3), [i___1]) <= 
          dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(35).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__first by:
          - 2147483648.
<S>  New H57:  start_byte >= - 2147483649
<S>  New H66:  start_byte >= - 2147483651
<S>  New H72:  start_byte >= - 2147483652
<S>  New H78:  start_byte >= - 2147483653
<S>  New H84:  start_byte >= - 2147483654
<S>  New H95:  start_byte >= - 2147483655
<S>  New H111:  start_byte >= - 2147483659
<S>  New H155:  start_byte >= - 2147483672
-S-  Applied substitution rule process_resp_rules(36).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__last by:
          2147483647.
<S>  New H58:  start_byte <= 2147483646
<S>  New H67:  start_byte <= 2147483644
<S>  New H73:  start_byte <= 2147483643
<S>  New H79:  start_byte <= 2147483642
<S>  New H85:  start_byte <= 2147483641
<S>  New H96:  start_byte <= 2147483640
<S>  New H112:  start_byte <= 2147483636
<S>  New H156:  start_byte <= 2147483623
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H62:  true
<S>  New H68:  true
<S>  New H80:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= dns_types__byte__last)
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__3), [i___1]) and element(fld_bytes(
          output_packet__3), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H63:  true
<S>  New H69:  true
<S>  New H81:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= 255)
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= 255)
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__3), [i___1]) and element(fld_bytes(
          output_packet__3), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H12:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H13:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H14:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H15:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(114).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__first by:
          0.
<S>  New H50:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          >= 0
<S>  New H55:  qname_location >= 0
<S>  New H104:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) >= 0
-S-  Applied substitution rule process_resp_rules(115).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__last by:
          65535.
<S>  New H51:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          <= 65535
<S>  New H56:  qname_location <= 65535
<S>  New H105:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) <= 65535
-S-  Applied substitution rule process_resp_rules(118).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__modulus by:
          65536.
<S>  New H50:  (qname_location + 49152) mod 65536 >= 0
<S>  New H51:  (qname_location + 49152) mod 65536 <= 65535
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
<S>  New H88:  fld_ttlinseconds(fld_inherit(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 0
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H89:  fld_ttlinseconds(fld_inherit(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 4294967295
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New H133:  true
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H134:  true
<S>  New H148:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) < 1 or 8168 <= 
          start_byte
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) = 129 or element(fld_canonicaldomainname(element(cnames, [1])), 
          [rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1]))
          )]) = 0 and for_all(q_ : integer, 1 <= q_ and q_ <= 
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1])))
           - 1 -> element(fld_canonicaldomainname(element(cnames, [1])), [q_]) 
          <> 0)
<S>  New H104:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [1]))) >= 0
<S>  New H105:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [1]))) <= 65535
<S>  New H88:  fld_ttlinseconds(fld_inherit(element(cnames, [1]))) >= 0
<S>  New H89:  fld_ttlinseconds(fld_inherit(element(cnames, [1]))) <= 4294967295
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 1
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 129
<S>  New H148:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [1]))) < 1 or 8168 <= start_byte
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H28:  true
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
###  Established a contradiction [P-and-not-P] among the following hypotheses:
          H31, H47 & H148.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_31.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H52 has been replaced by "true".  (It is already present, as 
          H50).
---  Hypothesis H53 has been replaced by "true".  (It is already present, as 
          H51).
---  Hypothesis H56 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H57 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H58 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H59 has been replaced by "true".  (It is already present, as 
          H45).
---  Hypothesis H60 has been replaced by "true".  (It is already present, as 
          H46).
---  Hypothesis H63 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H64 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H65 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H66 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H67 has been replaced by "true".  (It is already present, as 
          H61).
---  Hypothesis H68 has been replaced by "true".  (It is already present, as 
          H62).
---  Hypothesis H69 has been replaced by "true".  (It is already present, as 
          H54).
---  Hypothesis H70 has been replaced by "true".  (It is already present, as 
          H55).
---  Hypothesis H71 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H72 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H73 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H45).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H46).
---  Hypothesis H77 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H78 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H81 has been replaced by "true".  (It is already present, as 
          H79).
---  Hypothesis H82 has been replaced by "true".  (It is already present, as 
          H80).
---  Hypothesis H87 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H88 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H89 has been replaced by "true".  (It is already present, as 
          H44).
***  Proved C1:  fld_ancount(fld_header(output_packet)) + 1 >= 
          dns_types__unsigned_short__first
     using hypothesis H18.
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
<S>  New C2:  fld_ancount(fld_header(output_packet)) <= 65534
***  Proved C2:  fld_ancount(fld_header(output_packet)) <= 65534
     using hypothesis H2.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_32.  @@@@@@@@@@
%%%  Simplified H8 on reading formula in, to give:
     %%%  H8:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H9 on reading formula in, to give:
     %%%  H9:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H10 on reading formula in, to give:
     %%%  H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H15 on reading formula in, to give:
     %%%  H15:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H17 on reading formula in, to give:
     %%%  H17:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H29 on reading formula in, to give:
     %%%  H29:  fld_ancount(fld_header(output_packet~)) = 0
---  Hypothesis H38 has been replaced by "true".  (It is already present, as 
          H36).
---  Hypothesis H39 has been replaced by "true".  (It is already present, as 
          H37).
---  Hypothesis H40 has been replaced by "true".  (It is already present, as 
          H34).
---  Hypothesis H41 has been replaced by "true".  (It is already present, as 
          H35).
%%%  Simplified H42 on reading formula in, to give:
     %%%  H42:  true
---  Hypothesis H44 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H45 has been replaced by "true".  (It is already present, as 
          H33).
---  Hypothesis H46 has been replaced by "true".  (It is already present, as 
          H34).
---  Hypothesis H47 has been replaced by "true".  (It is already present, as 
          H35).
---  Hypothesis H50 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H51 has been replaced by "true".  (It is already present, as 
          H33).
---  Hypothesis H54 has been replaced by "true".  (It is already present, as 
          H48).
---  Hypothesis H55 has been replaced by "true".  (It is already present, as 
          H49).
%%%  Simplified H60 on reading formula in, to give:
     %%%  H60:  true
---  Hypothesis H64 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H65 has been replaced by "true".  (It is already present, as 
          H33).
---  Hypothesis H68 has been replaced by "true".  (It is already present, as 
          H66).
---  Hypothesis H69 has been replaced by "true".  (It is already present, as 
          H67).
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H58).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H59).
---  Hypothesis H76 has been replaced by "true".  (It is already present, as 
          H60).
%%%  Simplified C1 on reading formula in, to give:
     %%%  C1:  fld_ancount(fld_header(output_packet)) + 1 >= 
          dns_types__unsigned_short__first
%%%  Simplified C2 on reading formula in, to give:
     %%%  C2:  fld_ancount(fld_header(output_packet)) + 1 <= 
          dns_types__unsigned_short__last
***  Proved C1:  fld_ancount(fld_header(output_packet)) + 1 >= 
          dns_types__unsigned_short__first
     using hypothesis H21.
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H14:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H20:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H22:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H24:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H26:  fld_arcount(fld_header(output_packet)) <= 65535
<S>  New C2:  fld_ancount(fld_header(output_packet)) <= 65534
***  Proved C2:  fld_ancount(fld_header(output_packet)) <= 65534
     using hypothesis H3.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_33.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H59 on reading formula in, to give:
     %%%  H59:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H62).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H63).
---  Hypothesis H86 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H87 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H93 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H94 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H97 on reading formula in, to give:
     %%%  H97:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__2), [i___1]
          ) and element(fld_bytes(output_packet__2), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H98 on reading formula in, to give:
     %%%  H98:  fld_header(output_packet__2) = fld_header(output_packet__1)
%%%  Simplified H99 on reading formula in, to give:
     %%%  H99:  output_packet__2 = upf_bytes(output_packet__1, fld_bytes(
          output_packet__2))
---  Hypothesis H100 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H101 has been replaced by "true".  (It is already present, as 
          H4).
---  Hypothesis H102 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H103 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H109 has been replaced by "true".  (It is already present, as 
          H104).
---  Hypothesis H110 has been replaced by "true".  (It is already present, as 
          H105).
%%%  Simplified H113 on reading formula in, to give:
     %%%  H113:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__3), [i___1]
          ) and element(fld_bytes(output_packet__3), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H116 has been replaced by "true".  (It is already present, as 
          H3).
---  Hypothesis H117 has been replaced by "true".  (It is already present, as 
          H4).
---  Hypothesis H120 has been replaced by "true".  (It is already present, as 
          H118).
---  Hypothesis H121 has been replaced by "true".  (It is already present, as 
          H119).
---  Hypothesis H124 has been replaced by "true".  (It is already present, as 
          H122).
---  Hypothesis H125 has been replaced by "true".  (It is already present, as 
          H123).
---  Hypothesis H128 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H129 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H130 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H135 has been replaced by "true".  (It is already present, as 
          H118).
---  Hypothesis H136 has been replaced by "true".  (It is already present, as 
          H119).
---  Hypothesis H137 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H138 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H139 has been replaced by "true".  (It is already present, as 
          H133).
---  Hypothesis H140 has been replaced by "true".  (It is already present, as 
          H134).
---  Hypothesis H141 has been replaced by "true".  (It is already present, as 
          H126).
---  Hypothesis H142 has been replaced by "true".  (It is already present, as 
          H127).
---  Hypothesis H143 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H144 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H145 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H146 has been replaced by "true".  (It is already present, as 
          H131).
---  Hypothesis H147 has been replaced by "true".  (It is already present, as 
          H132).
---  Hypothesis H149 has been replaced by "true".  (It is already present, as 
          H118).
---  Hypothesis H150 has been replaced by "true".  (It is already present, as 
          H119).
---  Hypothesis H153 has been replaced by "true".  (It is already present, as 
          H151).
---  Hypothesis H154 has been replaced by "true".  (It is already present, as 
          H152).
---  Hypothesis H159 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H160 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H161 has been replaced by "true".  (It is already present, as 
          H44).
%%%  Simplified C3 on reading formula in, to give:
     %%%  C3:  fld_ancount(fld_header(output_packet__3)) <= 0
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H1:  start_byte <= 8192
<S>  New H38:  8192 - (12 + dns_types__header_bits div 8) >= system__min_int
<S>  New H39:  8192 - (12 + dns_types__header_bits div 8) <= system__max_int
<S>  New H47:  start_byte < 8192 - (12 + dns_types__header_bits div 8)
<S>  New H148:  not (1 <= rr_type__wirenamelength(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first]))) and (1 
          < rr_type__wirestringtypeindex__last and start_byte + 12 + 
          dns_types__header_bits div 8 < 8192))
<S>  New C2:  start_byte + 12 + dns_types__header_bits div 8 <= 8192
>>>  Restructured hypothesis H148 into:
     >>>  H148:  rr_type__wirenamelength(fld_canonicaldomainname(element(
          cnames, [rr_type__returnedrecordsindextype__first]))) < 1 or (
          rr_type__wirestringtypeindex__last <= 1 or 8192 <= start_byte + 12 + 
          dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H38:  8168 >= system__min_int
<S>  New H39:  8168 <= system__max_int
<S>  New H40:  24 >= system__min_int
<S>  New H41:  24 <= system__max_int
<S>  New H42:  12 >= system__min_int
<S>  New H43:  12 <= system__max_int
<S>  New H47:  start_byte < 8168
<S>  New H122:  start_byte + 12 + 12 >= dns_types__qname_ptr_range__first
<S>  New H123:  start_byte + 12 + 12 <= dns_types__qname_ptr_range__last
<S>  New H126:  start_byte + 12 + 12 >= integer__base__first
<S>  New H127:  start_byte + 12 + 12 <= integer__base__last
<S>  New H148:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) < 1 or (
          rr_type__wirestringtypeindex__last <= 1 or 8180 <= start_byte + 12)
<S>  New H151:  start_byte + 12 + 12 >= dns_types__packet_length_range__first
<S>  New H152:  start_byte + 12 + 12 <= dns_types__packet_length_range__last
<S>  New H155:  start_byte + 12 + 12 >= 
          dns_types__packet_bytes_range__base__first
<S>  New H156:  start_byte + 12 + 12 <= 
          dns_types__packet_bytes_range__base__last
<S>  New H157:  12 >= dns_types__packet_bytes_range__first
<S>  New H158:  12 <= dns_types__packet_bytes_range__last
<S>  New C1:  start_byte + 12 >= 1
<S>  New C2:  start_byte + 12 <= 8180
-S-  Applied substitution rule process_resp_rules(3).
     This was achieved by replacing all occurrences of 
          rr_type__maxdomainnamelength by:
          128.
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) = 129 or element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H38:  true
<S>  New H40:  true
<S>  New H42:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H39:  true
<S>  New H41:  true
<S>  New H43:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H45:  start_byte >= - 2147483648
<S>  New H131:  start_byte >= - 2147483660
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H46:  start_byte <= 2147483647
<S>  New H132:  start_byte <= 2147483635
-S-  Applied substitution rule process_resp_rules(9).
     This was achieved by replacing all occurrences of integer__base__first by:
          - 2147483648.
<S>  New H126:  start_byte >= - 2147483672
-S-  Applied substitution rule process_resp_rules(10).
     This was achieved by replacing all occurrences of integer__base__last by:
          2147483647.
<S>  New H127:  start_byte <= 2147483623
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H8:  qname_location >= 0
<S>  New H122:  start_byte >= - 24
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H9:  qname_location <= 16383
<S>  New H123:  start_byte <= 16359
-S-  Applied substitution rule process_resp_rules(28).
     This was achieved by replacing all occurrences of 
          dns_types__packet_length_range__first by:
          0.
<S>  New H151:  start_byte >= - 24
-S-  Applied substitution rule process_resp_rules(29).
     This was achieved by replacing all occurrences of 
          dns_types__packet_length_range__last by:
          8192.
<S>  New H152:  start_byte <= 8168
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H3:  start_byte >= 1
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H52:  start_byte >= 0
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New H64:  start_byte >= - 2
<S>  New H70:  start_byte >= - 3
<S>  New H76:  start_byte >= - 4
<S>  New H82:  start_byte >= - 5
<S>  New H90:  start_byte >= - 6
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= dns_types__byte__last)
<S>  New H106:  start_byte >= - 10
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet__3), [i___1]) and element(fld_bytes(
          output_packet__3), [i___1]) <= dns_types__byte__last)
<S>  New H118:  start_byte >= - 11
<S>  New H157:  true
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H53:  start_byte <= 8179
<S>  New H54:  start_byte <= 8178
<S>  New H65:  start_byte <= 8177
<S>  New H71:  start_byte <= 8176
<S>  New H77:  start_byte <= 8175
<S>  New H83:  start_byte <= 8174
<S>  New H91:  start_byte <= 8173
<S>  New H92:  start_byte <= 8170
<S>  New H107:  start_byte <= 8169
<S>  New H108:  start_byte <= 8168
<S>  New H119:  start_byte <= 8168
<S>  New H158:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__1), [i___1]
          ) and element(fld_bytes(output_packet__1), [i___1]) <= 
          dns_types__byte__last)
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__2), [i___1]
          ) and element(fld_bytes(output_packet__2), [i___1]) <= 
          dns_types__byte__last)
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet__3), [i___1]
          ) and element(fld_bytes(output_packet__3), [i___1]) <= 
          dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(35).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__first by:
          - 2147483648.
<S>  New H57:  start_byte >= - 2147483649
<S>  New H66:  start_byte >= - 2147483651
<S>  New H72:  start_byte >= - 2147483652
<S>  New H78:  start_byte >= - 2147483653
<S>  New H84:  start_byte >= - 2147483654
<S>  New H95:  start_byte >= - 2147483655
<S>  New H111:  start_byte >= - 2147483659
<S>  New H155:  start_byte >= - 2147483672
-S-  Applied substitution rule process_resp_rules(36).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__last by:
          2147483647.
<S>  New H58:  start_byte <= 2147483646
<S>  New H67:  start_byte <= 2147483644
<S>  New H73:  start_byte <= 2147483643
<S>  New H79:  start_byte <= 2147483642
<S>  New H85:  start_byte <= 2147483641
<S>  New H96:  start_byte <= 2147483640
<S>  New H112:  start_byte <= 2147483636
<S>  New H156:  start_byte <= 2147483623
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H62:  true
<S>  New H68:  true
<S>  New H80:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= dns_types__byte__last)
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= dns_types__byte__last)
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__3), [i___1]) and element(fld_bytes(
          output_packet__3), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H63:  true
<S>  New H69:  true
<S>  New H81:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
<S>  New H59:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__1), [i___1]) and element(fld_bytes(
          output_packet__1), [i___1]) <= 255)
<S>  New H97:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__2), [i___1]) and element(fld_bytes(
          output_packet__2), [i___1]) <= 255)
<S>  New H113:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet__3), [i___1]) and element(fld_bytes(
          output_packet__3), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H10:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H16:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H18:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H20:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H22:  fld_arcount(fld_header(output_packet)) >= 0
<S>  New H162:  fld_ancount(fld_header(output_packet__3)) >= - 1
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
<S>  New H163:  fld_ancount(fld_header(output_packet__3)) <= 65534
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H12:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H13:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H14:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H15:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(114).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__first by:
          0.
<S>  New H50:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          >= 0
<S>  New H55:  qname_location >= 0
<S>  New H104:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) >= 0
-S-  Applied substitution rule process_resp_rules(115).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__last by:
          65535.
<S>  New H51:  (qname_location + 49152) mod unsigned_types__unsigned16__modulus 
          <= 65535
<S>  New H56:  qname_location <= 65535
<S>  New H105:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) <= 65535
-S-  Applied substitution rule process_resp_rules(118).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned16__modulus by:
          65536.
<S>  New H50:  (qname_location + 49152) mod 65536 >= 0
<S>  New H51:  (qname_location + 49152) mod 65536 <= 65535
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
<S>  New H88:  fld_ttlinseconds(fld_inherit(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 0
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H89:  fld_ttlinseconds(fld_inherit(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 4294967295
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New H133:  true
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H134:  true
<S>  New H148:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) < 1 or 8168 <= 
          start_byte
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) = 129 or element(fld_canonicaldomainname(element(cnames, [1])), 
          [rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1]))
          )]) = 0 and for_all(q_ : integer, 1 <= q_ and q_ <= 
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1])))
           - 1 -> element(fld_canonicaldomainname(element(cnames, [1])), [q_]) 
          <> 0)
<S>  New H104:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [1]))) >= 0
<S>  New H105:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [1]))) <= 65535
<S>  New H88:  fld_ttlinseconds(fld_inherit(element(cnames, [1]))) >= 0
<S>  New H89:  fld_ttlinseconds(fld_inherit(element(cnames, [1]))) <= 4294967295
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 1
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 129
<S>  New H148:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [1]))) < 1 or 8168 <= start_byte
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H28:  true
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
%%%  Simplified C1 further, to give:
     %%%  C1:  start_byte >= - 11
%%%  Simplified C2 further, to give:
     %%%  C2:  start_byte <= 8168
***  Proved C1:  start_byte >= - 11
     using hypothesis H118.
***  Proved C2:  start_byte <= 8168
     using hypothesis H152.
###  Established a contradiction [P-and-not-P] among the following hypotheses:
          H31, H47 & H148.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_34.  @@@@@@@@@@
%%%  Simplified H5 on reading formula in, to give:
     %%%  H5:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H12 on reading formula in, to give:
     %%%  H12:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
---  Hypothesis H25 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H26 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  true
---  Hypothesis H29 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H30 has been replaced by "true".  (It is already present, as 
          H28).
%%%  Simplified H33 on reading formula in, to give:
     %%%  H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) = 
          rr_type__maxdomainnamelength + 1 or element(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first])), [
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H37 has been replaced by "true".  (It is already present, as H4)
          .
%%%  Simplified H44 on reading formula in, to give:
     %%%  H44:  true
---  Hypothesis H48 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H49 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H52 has been replaced by "true".  (It is already present, as 
          H50).
---  Hypothesis H53 has been replaced by "true".  (It is already present, as 
          H51).
---  Hypothesis H56 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H57 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H58 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H59 has been replaced by "true".  (It is already present, as 
          H45).
---  Hypothesis H60 has been replaced by "true".  (It is already present, as 
          H46).
---  Hypothesis H63 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H64 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H65 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H66 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H67 has been replaced by "true".  (It is already present, as 
          H61).
---  Hypothesis H68 has been replaced by "true".  (It is already present, as 
          H62).
---  Hypothesis H69 has been replaced by "true".  (It is already present, as 
          H54).
---  Hypothesis H70 has been replaced by "true".  (It is already present, as 
          H55).
---  Hypothesis H71 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H72 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H73 has been replaced by "true".  (It is already present, as 
          H44).
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H45).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H46).
---  Hypothesis H77 has been replaced by "true".  (It is already present, as H3)
          .
---  Hypothesis H78 has been replaced by "true".  (It is already present, as H4)
          .
---  Hypothesis H81 has been replaced by "true".  (It is already present, as 
          H79).
---  Hypothesis H82 has been replaced by "true".  (It is already present, as 
          H80).
---  Hypothesis H87 has been replaced by "true".  (It is already present, as 
          H42).
---  Hypothesis H88 has been replaced by "true".  (It is already present, as 
          H43).
---  Hypothesis H89 has been replaced by "true".  (It is already present, as 
          H44).
%%%  Simplified C3 on reading formula in, to give:
     %%%  C3:  fld_ancount(fld_header(output_packet)) <= 0
***  Proved C3:  fld_ancount(fld_header(output_packet)) <= 0
     using hypothesis H2.
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H1:  start_byte <= 8192
<S>  New H38:  8192 - (12 + dns_types__header_bits div 8) >= system__min_int
<S>  New H39:  8192 - (12 + dns_types__header_bits div 8) <= system__max_int
<S>  New H47:  not start_byte < 8192 - (12 + dns_types__header_bits div 8)
<S>  New H76:  not (1 <= rr_type__wirenamelength(fld_canonicaldomainname(
          element(cnames, [rr_type__returnedrecordsindextype__first]))) and (1 
          < rr_type__wirestringtypeindex__last and start_byte + 
          dns_types__header_bits div 8 < 8192))
<S>  New C2:  start_byte + dns_types__header_bits div 8 <= 8192
>>>  Restructured hypothesis H47 into:
     >>>  H47:  8192 - (12 + dns_types__header_bits div 8) <= start_byte
>>>  Restructured hypothesis H76 into:
     >>>  H76:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, 
          [rr_type__returnedrecordsindextype__first]))) < 1 or (
          rr_type__wirestringtypeindex__last <= 1 or 8192 <= start_byte + 
          dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H38:  8168 >= system__min_int
<S>  New H39:  8168 <= system__max_int
<S>  New H40:  24 >= system__min_int
<S>  New H41:  24 <= system__max_int
<S>  New H42:  12 >= system__min_int
<S>  New H43:  12 <= system__max_int
<S>  New H47:  8168 <= start_byte
<S>  New H50:  start_byte + 12 >= dns_types__qname_ptr_range__first
<S>  New H51:  start_byte + 12 <= dns_types__qname_ptr_range__last
<S>  New H54:  start_byte + 12 >= integer__base__first
<S>  New H55:  start_byte + 12 <= integer__base__last
<S>  New H76:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) < 1 or (
          rr_type__wirestringtypeindex__last <= 1 or 8180 <= start_byte)
<S>  New H79:  start_byte + 12 >= dns_types__packet_length_range__first
<S>  New H80:  start_byte + 12 <= dns_types__packet_length_range__last
<S>  New H83:  start_byte + 12 >= dns_types__packet_bytes_range__base__first
<S>  New H84:  start_byte + 12 <= dns_types__packet_bytes_range__base__last
<S>  New H85:  12 >= dns_types__packet_bytes_range__first
<S>  New H86:  12 <= dns_types__packet_bytes_range__last
<S>  New C1:  start_byte >= 1
<S>  New C2:  start_byte <= 8180
-S-  Applied substitution rule process_resp_rules(3).
     This was achieved by replacing all occurrences of 
          rr_type__maxdomainnamelength by:
          128.
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) = 129 or element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])))]) = 0 and for_all(q_ : 
          integer, 1 <= q_ and q_ <= rr_type__wirenamelength(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) - 1 -> element(
          fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [q_]) <> 0)
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H38:  true
<S>  New H40:  true
<S>  New H42:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H39:  true
<S>  New H41:  true
<S>  New H43:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H45:  start_byte >= - 2147483648
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H46:  start_byte <= 2147483647
-S-  Applied substitution rule process_resp_rules(9).
     This was achieved by replacing all occurrences of integer__base__first by:
          - 2147483648.
<S>  New H54:  start_byte >= - 2147483660
-S-  Applied substitution rule process_resp_rules(10).
     This was achieved by replacing all occurrences of integer__base__last by:
          2147483647.
<S>  New H55:  start_byte <= 2147483635
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, rr_type__wirestringtypeindex__first <= i___2 
          and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H8:  qname_location >= 0
<S>  New H50:  start_byte >= - 12
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H9:  qname_location <= 16383
<S>  New H51:  start_byte <= 16371
-S-  Applied substitution rule process_resp_rules(28).
     This was achieved by replacing all occurrences of 
          dns_types__packet_length_range__first by:
          0.
<S>  New H79:  start_byte >= - 12
-S-  Applied substitution rule process_resp_rules(29).
     This was achieved by replacing all occurrences of 
          dns_types__packet_length_range__last by:
          8192.
<S>  New H80:  start_byte <= 8180
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H3:  start_byte >= 1
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H85:  true
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H4:  start_byte <= 8180
<S>  New H86:  true
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(35).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__first by:
          - 2147483648.
<S>  New H83:  start_byte >= - 2147483660
-S-  Applied substitution rule process_resp_rules(36).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__last by:
          2147483647.
<S>  New H84:  start_byte <= 2147483635
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H10:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H16:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H18:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H20:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H22:  fld_arcount(fld_header(output_packet)) >= 0
<S>  New H90:  fld_ancount(fld_header(output_packet)) >= - 1
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H11:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H17:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H19:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H21:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H23:  fld_arcount(fld_header(output_packet)) <= 65535
<S>  New H91:  fld_ancount(fld_header(output_packet)) <= 65534
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H12:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H13:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H14:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H15:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H5:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H6:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) >= 1
<S>  New H61:  true
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) <= 129
<S>  New H62:  true
<S>  New H76:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first]))) < 1 or 8180 <= start_byte
<S>  New H7:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          for_all(i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H33:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) = 129 or element(fld_canonicaldomainname(element(cnames, [1])), 
          [rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1]))
          )]) = 0 and for_all(q_ : integer, 1 <= q_ and q_ <= 
          rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [1])))
           - 1 -> element(fld_canonicaldomainname(element(cnames, [1])), [q_]) 
          <> 0)
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H31:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) >= 1
<S>  New H32:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) <= 129
<S>  New H76:  rr_type__wirenamelength(fld_canonicaldomainname(element(cnames, [
          1]))) < 1 or 8180 <= start_byte
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H28:  true
<S>  New H5:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H7:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
***  Proved C1:  start_byte >= 1
     using hypothesis H3.
***  Proved C2:  start_byte <= 8180
     using hypothesis H80.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_process_response_cname_35.  @@@@@@@@@@
%%%  Simplified H8 on reading formula in, to give:
     %%%  H8:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(cnames, [i___1]))) and fld_ttlinseconds(fld_inherit(element(
          cnames, [i___1]))) <= unsigned_types__unsigned32__last)
%%%  Simplified H9 on reading formula in, to give:
     %%%  H9:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__classtype__last)
%%%  Simplified H10 on reading formula in, to give:
     %%%  H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
%%%  Simplified H15 on reading formula in, to give:
     %%%  H15:  dns_types__opcode_type__first <= fld_opcode(fld_header(
          output_packet))
%%%  Simplified H17 on reading formula in, to give:
     %%%  H17:  dns_types__response_code__first <= fld_rcode(fld_header(
          output_packet))
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  for_all(i___1 : integer, dns_types__packet_bytes_range__first 
          <= i___1 and i___1 <= dns_types__packet_bytes_range__last -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
%%%  Simplified H29 on reading formula in, to give:
     %%%  H29:  fld_ancount(fld_header(output_packet~)) = 0
---  Hypothesis H38 has been replaced by "true".  (It is already present, as 
          H36).
---  Hypothesis H39 has been replaced by "true".  (It is already present, as 
          H37).
---  Hypothesis H40 has been replaced by "true".  (It is already present, as 
          H34).
---  Hypothesis H41 has been replaced by "true".  (It is already present, as 
          H35).
%%%  Simplified H42 on reading formula in, to give:
     %%%  H42:  true
---  Hypothesis H44 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H45 has been replaced by "true".  (It is already present, as 
          H33).
---  Hypothesis H46 has been replaced by "true".  (It is already present, as 
          H34).
---  Hypothesis H47 has been replaced by "true".  (It is already present, as 
          H35).
---  Hypothesis H50 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H51 has been replaced by "true".  (It is already present, as 
          H33).
---  Hypothesis H54 has been replaced by "true".  (It is already present, as 
          H48).
---  Hypothesis H55 has been replaced by "true".  (It is already present, as 
          H49).
%%%  Simplified H60 on reading formula in, to give:
     %%%  H60:  true
---  Hypothesis H64 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H65 has been replaced by "true".  (It is already present, as 
          H33).
---  Hypothesis H68 has been replaced by "true".  (It is already present, as 
          H66).
---  Hypothesis H69 has been replaced by "true".  (It is already present, as 
          H67).
---  Hypothesis H74 has been replaced by "true".  (It is already present, as 
          H58).
---  Hypothesis H75 has been replaced by "true".  (It is already present, as 
          H59).
---  Hypothesis H76 has been replaced by "true".  (It is already present, as 
          H60).
%%%  Simplified H77 on reading formula in, to give:
     %%%  H77:  fld_ancount(fld_header(output_packet)) + 1 >= 
          dns_types__unsigned_short__first
%%%  Simplified H78 on reading formula in, to give:
     %%%  H78:  fld_ancount(fld_header(output_packet)) + 1 <= 
          dns_types__unsigned_short__last
%%%  Simplified C3 on reading formula in, to give:
     %%%  C3:  fld_ancount(fld_header(output_packet)) <= 0
***  Proved C3:  fld_ancount(fld_header(output_packet)) <= 0
     using hypothesis H3.
-S-  Applied substitution rule process_resp_rules(1).
     This was achieved by replacing all occurrences of dns_types__packet_size 
          by:
          8192.
<S>  New H5:  current_byte + dns_types__header_bits div 8 < 8192
<S>  New H28:  start_byte <= 8192
<S>  New H63:  not (i + 1 <= name_length and (i + 1 < 
          rr_type__wirestringtypeindex__last and current_byte + 1 + 
          dns_types__header_bits div 8 < 8192))
<S>  New C2:  current_byte + 1 + dns_types__header_bits div 8 <= 8192
>>>  Restructured hypothesis H63 into:
     >>>  H63:  name_length < i + 1 or (rr_type__wirestringtypeindex__last <= i 
          + 1 or 8192 <= current_byte + 1 + dns_types__header_bits div 8)
-S-  Applied substitution rule process_resp_rules(2).
     This was achieved by replacing all occurrences of dns_types__header_bits 
          by:
          96.
<S>  New H5:  current_byte < 8180
<S>  New H56:  current_byte + 1 + 12 >= integer__base__first
<S>  New H57:  current_byte + 1 + 12 <= integer__base__last
<S>  New H58:  12 >= system__min_int
<S>  New H59:  12 <= system__max_int
<S>  New H63:  name_length < i + 1 or (rr_type__wirestringtypeindex__last <= i 
          + 1 or 8180 <= current_byte + 1)
<S>  New H66:  current_byte + 1 + 12 >= dns_types__packet_length_range__first
<S>  New H67:  current_byte + 1 + 12 <= dns_types__packet_length_range__last
<S>  New H70:  current_byte + 1 + 12 >= 
          dns_types__packet_bytes_range__base__first
<S>  New H71:  current_byte + 1 + 12 <= 
          dns_types__packet_bytes_range__base__last
<S>  New H72:  12 >= dns_types__packet_bytes_range__first
<S>  New H73:  12 <= dns_types__packet_bytes_range__last
<S>  New C1:  current_byte + 1 >= 1
<S>  New C2:  current_byte + 1 <= 8180
-S-  Applied substitution rule process_resp_rules(4).
     This was achieved by replacing all occurrences of system__min_int by:
          - 9223372036854775808.
<S>  New H58:  true
-S-  Applied substitution rule process_resp_rules(5).
     This was achieved by replacing all occurrences of system__max_int by:
          9223372036854775807.
<S>  New H59:  true
-S-  Applied substitution rule process_resp_rules(7).
     This was achieved by replacing all occurrences of integer__first by:
          - 2147483648.
<S>  New H61:  current_byte >= - 2147483649
-S-  Applied substitution rule process_resp_rules(8).
     This was achieved by replacing all occurrences of integer__last by:
          2147483647.
<S>  New H62:  current_byte <= 2147483646
-S-  Applied substitution rule process_resp_rules(9).
     This was achieved by replacing all occurrences of integer__base__first by:
          - 2147483648.
<S>  New H56:  current_byte >= - 2147483661
-S-  Applied substitution rule process_resp_rules(10).
     This was achieved by replacing all occurrences of integer__base__last by:
          2147483647.
<S>  New H57:  current_byte <= 2147483634
-S-  Applied substitution rule process_resp_rules(12).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= character__last))
-S-  Applied substitution rule process_resp_rules(13).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 
          rr_type__wirestringtypeindex__first <= i___2 and i___2 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
-S-  Applied substitution rule process_resp_rules(22).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__first by:
          0.
<S>  New H11:  qname_location >= 0
-S-  Applied substitution rule process_resp_rules(23).
     This was achieved by replacing all occurrences of 
          dns_types__qname_ptr_range__last by:
          16383.
<S>  New H12:  qname_location <= 16383
-S-  Applied substitution rule process_resp_rules(28).
     This was achieved by replacing all occurrences of 
          dns_types__packet_length_range__first by:
          0.
<S>  New H66:  current_byte >= - 13
-S-  Applied substitution rule process_resp_rules(29).
     This was achieved by replacing all occurrences of 
          dns_types__packet_length_range__last by:
          8192.
<S>  New H67:  current_byte <= 8179
-S-  Applied substitution rule process_resp_rules(33).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__first by:
          1.
<S>  New H6:  start_byte >= 1
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          dns_types__packet_bytes_range__last -> dns_types__byte__first <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
<S>  New H30:  current_byte >= 1
<S>  New H32:  current_byte >= 0
<S>  New H72:  true
-S-  Applied substitution rule process_resp_rules(34).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__last by:
          8180.
<S>  New H7:  start_byte <= 8180
<S>  New H31:  current_byte <= 8180
<S>  New H33:  current_byte <= 8179
<S>  New H73:  true
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 
          dns_types__byte__first <= element(fld_bytes(output_packet), [i___1]) 
          and element(fld_bytes(output_packet), [i___1]) <= 
          dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(35).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__first by:
          - 2147483648.
<S>  New H70:  current_byte >= - 2147483661
-S-  Applied substitution rule process_resp_rules(36).
     This was achieved by replacing all occurrences of 
          dns_types__packet_bytes_range__base__last by:
          2147483647.
<S>  New H71:  current_byte <= 2147483634
-S-  Applied substitution rule process_resp_rules(39).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H36:  element(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [i]) >= 0
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= dns_types__byte__last)
-S-  Applied substitution rule process_resp_rules(40).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H37:  element(fld_canonicaldomainname(element(cnames, [
          rr_type__returnedrecordsindextype__first])), [i]) <= 255
<S>  New H27:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 8180 -> 0 <= 
          element(fld_bytes(output_packet), [i___1]) and element(fld_bytes(
          output_packet), [i___1]) <= 255)
-S-  Applied substitution rule process_resp_rules(46).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__first by:
          0.
<S>  New H13:  fld_messageid(fld_header(output_packet)) >= 0
<S>  New H19:  fld_qdcount(fld_header(output_packet)) >= 0
<S>  New H21:  fld_ancount(fld_header(output_packet)) >= 0
<S>  New H23:  fld_nscount(fld_header(output_packet)) >= 0
<S>  New H25:  fld_arcount(fld_header(output_packet)) >= 0
<S>  New H77:  fld_ancount(fld_header(output_packet)) >= - 1
-S-  Applied substitution rule process_resp_rules(47).
     This was achieved by replacing all occurrences of 
          dns_types__unsigned_short__last by:
          65535.
<S>  New H14:  fld_messageid(fld_header(output_packet)) <= 65535
<S>  New H20:  fld_qdcount(fld_header(output_packet)) <= 65535
<S>  New H22:  fld_ancount(fld_header(output_packet)) <= 65535
<S>  New H24:  fld_nscount(fld_header(output_packet)) <= 65535
<S>  New H26:  fld_arcount(fld_header(output_packet)) <= 65535
<S>  New H78:  fld_ancount(fld_header(output_packet)) <= 65534
-S-  Applied substitution rule process_resp_rules(52).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__first by:
          dns_types__query.
<S>  New H15:  dns_types__query <= fld_opcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(53).
     This was achieved by replacing all occurrences of 
          dns_types__opcode_type__last by:
          dns_types__status.
<S>  New H16:  fld_opcode(fld_header(output_packet)) <= dns_types__status
-S-  Applied substitution rule process_resp_rules(78).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__first by:
          dns_types__no_error.
<S>  New H17:  dns_types__no_error <= fld_rcode(fld_header(output_packet))
-S-  Applied substitution rule process_resp_rules(79).
     This was achieved by replacing all occurrences of 
          dns_types__response_code__last by:
          dns_types__refused.
<S>  New H18:  fld_rcode(fld_header(output_packet)) <= dns_types__refused
-S-  Applied substitution rule process_resp_rules(120).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H8:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 
          unsigned_types__unsigned32__last)
-S-  Applied substitution rule process_resp_rules(121).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H8:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
-S-  Applied substitution rule process_resp_rules(126).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H9:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= 
          rr_type__classtype__last)
-S-  Applied substitution rule process_resp_rules(127).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H9:  for_all(i___1 : integer, rr_type__returnedrecordsindextype__first 
          <= i___1 and i___1 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
-S-  Applied substitution rule process_resp_rules(153).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H34:  i >= 1
<S>  New H48:  i >= 0
<S>  New H52:  name_length >= 1
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= rr_type__wirestringtypeindex__last -> 0 <= 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          and element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]
          ) <= 255))
-S-  Applied substitution rule process_resp_rules(154).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H1:  i < 129
<S>  New H35:  i <= 129
<S>  New H49:  i <= 128
<S>  New H53:  name_length <= 129
<S>  New H63:  name_length < i + 1 or (128 <= i or 8179 <= current_byte)
<S>  New H10:  for_all(i___1 : integer, 
          rr_type__returnedrecordsindextype__first <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H43:  1 <= rr_type__returnedrecordsindextype__last
<S>  New H36:  element(fld_canonicaldomainname(element(cnames, [1])), [i]) >= 0
<S>  New H37:  element(fld_canonicaldomainname(element(cnames, [1])), [i]) <= 
          255
<S>  New H8:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> 0 <= fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) and fld_ttlinseconds(
          fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H9:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__internet <= 
          fld_class(fld_inherit(element(cnames, [i___1]))) and fld_class(
          fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H10:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___2 : integer, 1 
          <= i___2 and i___2 <= 129 -> 0 <= element(fld_canonicaldomainname(
          element(cnames, [i___1])), [i___2]) and element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) <= 255))
-S-  Applied substitution rule process_resp_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H43:  true
<S>  New H8:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 0 <= 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) and 
          fld_ttlinseconds(fld_inherit(element(cnames, [i___1]))) <= 4294967295)
<S>  New H9:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> 
          rr_type__internet <= fld_class(fld_inherit(element(cnames, [i___1]))) 
          and fld_class(fld_inherit(element(cnames, [i___1]))) <= rr_type__hs)
<S>  New H10:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 129 -> 0 <= element(
          fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) and 
          element(fld_canonicaldomainname(element(cnames, [i___1])), [i___2]) 
          <= 255))
%%%  Simplified C1 further, to give:
     %%%  C1:  current_byte >= 0
%%%  Simplified C2 further, to give:
     %%%  C2:  current_byte <= 8179
***  Proved C1:  current_byte >= 0
     using hypothesis H32.
***  Proved C2:  current_byte <= 8179
     using hypothesis H67.
***  PROVED VC.

