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

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



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

procedure dns_table_pkg.DNS_Table_Type.insertNSECRecord






@@@@@@@@@@  VC: procedure_insertnsecrecord_1.  @@@@@@@@@@
%%%  Simplified H1 on reading formula in, to give:
     %%%  H1:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(key, [i___1]) and element(key, [i___1]) 
          <= character__last)
%%%  Simplified H4 on reading formula in, to give:
     %%%  H4:  rr_type__classtype__first <= fld_class(fld_inherit(therecord))
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(fld_nextdomainname(therecord), [i___1]) 
          and element(fld_nextdomainname(therecord), [i___1]) <= 
          character__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___2 : integer, rr_type__linelengthindex__first <= 
          i___2 and i___2 <= rr_type__linelengthindex__last -> character__first 
          <= element(fld_recordlist(therecord), [i___2]) and element(
          fld_recordlist(therecord), [i___2]) <= character__last)
%%%  Simplified H10 on reading formula in, to give:
     %%%  H10:  for_all(i___3 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___3 and 
          i___3 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(therecord), [
          i___3]) and element(fld_recordtypes(therecord), [i___3]) <= 
          dns_types__query_type__last)
%%%  Simplified H13 on reading formula in, to give:
     %%%  H13:  for_all(i___4 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___4 and 
          i___4 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(therecord), [i___4]
          ) and element(fld_blocknumbers(therecord), [i___4]) <= 
          dns_types__byte__last)
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  for_all(i___5 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(therecord), [i___5]) and element(fld_blocklengths(
          therecord), [i___5]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)
%%%  Simplified H15 on reading formula in, to give:
     %%%  H15:  for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___7 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___7 and i___7 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(therecord), [
          i___6]), [i___7]) and element(element(fld_bitmaps(therecord), [i___6])
          , [i___7]) <= dns_types__byte__last))
%%%  Simplified H16 on reading formula in, to give:
     %%%  H16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) 
          and fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
%%%  Simplified H17 on reading formula in, to give:
     %%%  H17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__classtype__first <= fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) <= rr_type__classtype__last))
%%%  Simplified H18 on reading formula in, to give:
     %%%  H18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= character__last)))
%%%  Simplified H19 on reading formula in, to give:
     %%%  H19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___4 
          : integer, rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           <= character__last)))
%%%  Simplified H20 on reading formula in, to give:
     %%%  H20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
%%%  Simplified H21 on reading formula in, to give:
     %%%  H21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___5 
          : integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5])
           and element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
%%%  Simplified H22 on reading formula in, to give:
     %%%  H22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
%%%  Simplified H23 on reading formula in, to give:
     %%%  H23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___6 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 
          dns_types__byte__last)))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___7 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
%%%  Simplified H25 on reading formula in, to give:
     %%%  H25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___8 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= dns_types__byte__last))))
%%%  Simplified H26 on reading formula in, to give:
     %%%  H26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [
          i___3]) and element(element(element(dns_table_type__nsecrecordkeys, [
          i___1]), [i___2]), [i___3]) <= character__last)))
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(to_lower(key), [i___1]) and element(
          to_lower(key), [i___1]) <= character__last)
---  Hypothesis H28 has been replaced by "true".  (It is already present, as 
          H27).
***  Proved C1:  hash(to_lower(key)) >= rr_type__numbucketsindextype__first
     using hypothesis H29.
***  Proved C2:  hash(to_lower(key)) <= rr_type__numbucketsindextype__last
     using hypothesis H30.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_insertnsecrecord_2.  @@@@@@@@@@
%%%  Simplified H1 on reading formula in, to give:
     %%%  H1:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(key, [i___1]) and element(key, [i___1]) 
          <= character__last)
%%%  Simplified H4 on reading formula in, to give:
     %%%  H4:  rr_type__classtype__first <= fld_class(fld_inherit(therecord))
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(fld_nextdomainname(therecord), [i___1]) 
          and element(fld_nextdomainname(therecord), [i___1]) <= 
          character__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___2 : integer, rr_type__linelengthindex__first <= 
          i___2 and i___2 <= rr_type__linelengthindex__last -> character__first 
          <= element(fld_recordlist(therecord), [i___2]) and element(
          fld_recordlist(therecord), [i___2]) <= character__last)
%%%  Simplified H10 on reading formula in, to give:
     %%%  H10:  for_all(i___3 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___3 and 
          i___3 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(therecord), [
          i___3]) and element(fld_recordtypes(therecord), [i___3]) <= 
          dns_types__query_type__last)
%%%  Simplified H13 on reading formula in, to give:
     %%%  H13:  for_all(i___4 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___4 and 
          i___4 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(therecord), [i___4]
          ) and element(fld_blocknumbers(therecord), [i___4]) <= 
          dns_types__byte__last)
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  for_all(i___5 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(therecord), [i___5]) and element(fld_blocklengths(
          therecord), [i___5]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)
%%%  Simplified H15 on reading formula in, to give:
     %%%  H15:  for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___7 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___7 and i___7 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(therecord), [
          i___6]), [i___7]) and element(element(fld_bitmaps(therecord), [i___6])
          , [i___7]) <= dns_types__byte__last))
%%%  Simplified H16 on reading formula in, to give:
     %%%  H16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) 
          and fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
%%%  Simplified H17 on reading formula in, to give:
     %%%  H17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__classtype__first <= fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) <= rr_type__classtype__last))
%%%  Simplified H18 on reading formula in, to give:
     %%%  H18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= character__last)))
%%%  Simplified H19 on reading formula in, to give:
     %%%  H19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___4 
          : integer, rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           <= character__last)))
%%%  Simplified H20 on reading formula in, to give:
     %%%  H20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
%%%  Simplified H21 on reading formula in, to give:
     %%%  H21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___5 
          : integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5])
           and element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
%%%  Simplified H22 on reading formula in, to give:
     %%%  H22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
%%%  Simplified H23 on reading formula in, to give:
     %%%  H23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___6 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 
          dns_types__byte__last)))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___7 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
%%%  Simplified H25 on reading formula in, to give:
     %%%  H25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___8 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= dns_types__byte__last))))
%%%  Simplified H26 on reading formula in, to give:
     %%%  H26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [
          i___3]) and element(element(element(dns_table_type__nsecrecordkeys, [
          i___1]), [i___2]), [i___3]) <= character__last)))
%%%  Simplified H27 on reading formula in, to give:
     %%%  H27:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(to_lower(key), [i___1]) and element(
          to_lower(key), [i___1]) <= character__last)
---  Hypothesis H28 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H31 has been replaced by "true".  (It is already present, as 
          H29).
---  Hypothesis H32 has been replaced by "true".  (It is already present, as 
          H30).
%%%  Simplified C1 on reading formula in, to give:
     %%%  C1:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(key, [i___1]) and element(key, [i___1]) 
          <= character__last)
%%%  Simplified C4 on reading formula in, to give:
     %%%  C4:  rr_type__classtype__first <= fld_class(fld_inherit(therecord))
%%%  Simplified C6 on reading formula in, to give:
     %%%  C6:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(fld_nextdomainname(therecord), [i___1]) 
          and element(fld_nextdomainname(therecord), [i___1]) <= 
          character__last)
%%%  Simplified C7 on reading formula in, to give:
     %%%  C7:  for_all(i___2 : integer, rr_type__linelengthindex__first <= 
          i___2 and i___2 <= rr_type__linelengthindex__last -> character__first 
          <= element(fld_recordlist(therecord), [i___2]) and element(
          fld_recordlist(therecord), [i___2]) <= character__last)
%%%  Simplified C10 on reading formula in, to give:
     %%%  C10:  for_all(i___3 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___3 and 
          i___3 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(therecord), [
          i___3]) and element(fld_recordtypes(therecord), [i___3]) <= 
          dns_types__query_type__last)
%%%  Simplified C13 on reading formula in, to give:
     %%%  C13:  for_all(i___4 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___4 and 
          i___4 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(therecord), [i___4]
          ) and element(fld_blocknumbers(therecord), [i___4]) <= 
          dns_types__byte__last)
%%%  Simplified C14 on reading formula in, to give:
     %%%  C14:  for_all(i___5 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(therecord), [i___5]) and element(fld_blocklengths(
          therecord), [i___5]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)
%%%  Simplified C15 on reading formula in, to give:
     %%%  C15:  for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___7 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___7 and i___7 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(therecord), [
          i___6]), [i___7]) and element(element(fld_bitmaps(therecord), [i___6])
          , [i___7]) <= dns_types__byte__last))
%%%  Simplified C16 on reading formula in, to give:
     %%%  C16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) 
          and fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
%%%  Simplified C17 on reading formula in, to give:
     %%%  C17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__classtype__first <= fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) <= rr_type__classtype__last))
%%%  Simplified C18 on reading formula in, to give:
     %%%  C18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= character__last)))
%%%  Simplified C19 on reading formula in, to give:
     %%%  C19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___4 
          : integer, rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           <= character__last)))
%%%  Simplified C20 on reading formula in, to give:
     %%%  C20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
%%%  Simplified C21 on reading formula in, to give:
     %%%  C21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___5 
          : integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5])
           and element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
%%%  Simplified C22 on reading formula in, to give:
     %%%  C22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
%%%  Simplified C23 on reading formula in, to give:
     %%%  C23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___6 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 
          dns_types__byte__last)))
%%%  Simplified C24 on reading formula in, to give:
     %%%  C24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___7 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
%%%  Simplified C25 on reading formula in, to give:
     %%%  C25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___8 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= dns_types__byte__last))))
%%%  Simplified C26 on reading formula in, to give:
     %%%  C26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [
          i___3]) and element(element(element(dns_table_type__nsecrecordkeys, [
          i___1]), [i___2]), [i___3]) <= character__last)))
%%%  Simplified C27 on reading formula in, to give:
     %%%  C27:  true
%%%  Simplified C29 on reading formula in, to give:
     %%%  C29:  true
***  Proved C1:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first 
          <= i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(key, [i___1]) and element(key, [i___1]) 
          <= character__last)
     using hypothesis H1.
***  Proved C2:  fld_ttlinseconds(fld_inherit(therecord)) >= 
          unsigned_types__unsigned32__first
     using hypothesis H2.
***  Proved C3:  fld_ttlinseconds(fld_inherit(therecord)) <= 
          unsigned_types__unsigned32__last
     using hypothesis H3.
***  Proved C4:  rr_type__classtype__first <= fld_class(fld_inherit(therecord))
     using hypothesis H4.
***  Proved C5:  fld_class(fld_inherit(therecord)) <= rr_type__classtype__last
     using hypothesis H5.
***  Proved C6:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first 
          <= i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(fld_nextdomainname(therecord), [i___1]) 
          and element(fld_nextdomainname(therecord), [i___1]) <= 
          character__last)
     using hypothesis H6.
***  Proved C7:  for_all(i___2 : integer, rr_type__linelengthindex__first <= 
          i___2 and i___2 <= rr_type__linelengthindex__last -> character__first 
          <= element(fld_recordlist(therecord), [i___2]) and element(
          fld_recordlist(therecord), [i___2]) <= character__last)
     using hypothesis H7.
***  Proved C8:  fld_numberofrecordtypes(therecord) >= 
          rr_type__nsec_record_type__recordtypeindexvalue__first
     using hypothesis H8.
***  Proved C9:  fld_numberofrecordtypes(therecord) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last
     using hypothesis H9.
***  Proved C10:  for_all(i___3 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___3 and 
          i___3 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(therecord), [
          i___3]) and element(fld_recordtypes(therecord), [i___3]) <= 
          dns_types__query_type__last)
     using hypothesis H10.
***  Proved C11:  fld_numberofblocks(therecord) >= 
          rr_type__nsec_record_type__blocknumbervalue__first
     using hypothesis H11.
***  Proved C12:  fld_numberofblocks(therecord) <= 
          rr_type__nsec_record_type__blocknumbervalue__last
     using hypothesis H12.
***  Proved C13:  for_all(i___4 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___4 and 
          i___4 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(therecord), [i___4]
          ) and element(fld_blocknumbers(therecord), [i___4]) <= 
          dns_types__byte__last)
     using hypothesis H13.
***  Proved C14:  for_all(i___5 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(therecord), [i___5]) and element(fld_blocklengths(
          therecord), [i___5]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)
     using hypothesis H14.
***  Proved C15:  for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___7 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___7 and i___7 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(therecord), [
          i___6]), [i___7]) and element(element(fld_bitmaps(therecord), [i___6])
          , [i___7]) <= dns_types__byte__last))
     using hypothesis H15.
***  Proved C16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) 
          and fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
     using hypothesis H16.
***  Proved C17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__classtype__first <= fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) <= rr_type__classtype__last))
     using hypothesis H17.
***  Proved C18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= character__last)))
     using hypothesis H18.
***  Proved C19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___4 
          : integer, rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           <= character__last)))
     using hypothesis H19.
***  Proved C20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
     using hypothesis H20.
***  Proved C21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___5 
          : integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5])
           and element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
     using hypothesis H21.
***  Proved C22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
     using hypothesis H22.
***  Proved C23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___6 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 
          dns_types__byte__last)))
     using hypothesis H23.
***  Proved C24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___7 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
     using hypothesis H24.
***  Proved C25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___8 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= dns_types__byte__last))))
     using hypothesis H25.
***  Proved C26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [
          i___3]) and element(element(element(dns_table_type__nsecrecordkeys, [
          i___1]), [i___2]), [i___3]) <= character__last)))
     using hypothesis H26.
***  Proved C27:  true
***  Proved C29:  true
-S-  Applied substitution rule insertnsecre_rules(131).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) 
          and fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
<S>  New H17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__returnedrecordsindextype__last -> rr_type__classtype__first 
          <= fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) <= rr_type__classtype__last))
<S>  New H18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___3 : integer, 
          rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= character__last)))
<S>  New H19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___4 : integer, 
          rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           <= character__last)))
<S>  New H20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
<S>  New H21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___5 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5])
           and element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
<S>  New H22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
<S>  New H23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 
          dns_types__byte__last)))
<S>  New H24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___7 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___7 and 
          i___7 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
<S>  New H25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___8 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___8 and 
          i___8 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___9 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___9 and i___9 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= dns_types__byte__last))))
<S>  New H26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__returnedrecordsindextype__last -> for_all(i___3 : integer, 
          rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [
          i___3]) and element(element(element(dns_table_type__nsecrecordkeys, [
          i___1]), [i___2]), [i___3]) <= character__last)))
<S>  New C28:  1 <= rr_type__returnedrecordsindextype__last
<S>  New C30:  1 <= rr_type__returnedrecordsindextype__last
-S-  Applied substitution rule insertnsecre_rules(132).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) 
          and fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
<S>  New H17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 
          rr_type__classtype__first <= fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) <= rr_type__classtype__last))
<S>  New H18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___3 : 
          integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= character__last)))
<S>  New H19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___4 : 
          integer, rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           <= character__last)))
<S>  New H20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
<S>  New H21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___5 : 
          integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5])
           and element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
<S>  New H22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
<S>  New H23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___6 : 
          integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 
          dns_types__byte__last)))
<S>  New H24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___7 : 
          integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
<S>  New H25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___8 : 
          integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= dns_types__byte__last))))
<S>  New H26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___3 : 
          integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [
          i___3]) and element(element(element(dns_table_type__nsecrecordkeys, [
          i___1]), [i___2]), [i___3]) <= character__last)))
<S>  New C28:  true
<S>  New C30:  true
***  Proved C28:  true
***  Proved C30:  true
***  PROVED VC.


@@@@@@@@@@  VC: procedure_insertnsecrecord_3.  @@@@@@@@@@
%%%  Simplified H1 on reading formula in, to give:
     %%%  H1:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(key, [i___1]) and element(key, [i___1]) 
          <= character__last)
%%%  Simplified H4 on reading formula in, to give:
     %%%  H4:  rr_type__classtype__first <= fld_class(fld_inherit(therecord))
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(fld_nextdomainname(therecord), [i___1]) 
          and element(fld_nextdomainname(therecord), [i___1]) <= 
          character__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___2 : integer, rr_type__linelengthindex__first <= 
          i___2 and i___2 <= rr_type__linelengthindex__last -> character__first 
          <= element(fld_recordlist(therecord), [i___2]) and element(
          fld_recordlist(therecord), [i___2]) <= character__last)
%%%  Simplified H10 on reading formula in, to give:
     %%%  H10:  for_all(i___3 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___3 and 
          i___3 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(therecord), [
          i___3]) and element(fld_recordtypes(therecord), [i___3]) <= 
          dns_types__query_type__last)
%%%  Simplified H13 on reading formula in, to give:
     %%%  H13:  for_all(i___4 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___4 and 
          i___4 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(therecord), [i___4]
          ) and element(fld_blocknumbers(therecord), [i___4]) <= 
          dns_types__byte__last)
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  for_all(i___5 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(therecord), [i___5]) and element(fld_blocklengths(
          therecord), [i___5]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)
%%%  Simplified H15 on reading formula in, to give:
     %%%  H15:  for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___7 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___7 and i___7 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(therecord), [
          i___6]), [i___7]) and element(element(fld_bitmaps(therecord), [i___6])
          , [i___7]) <= dns_types__byte__last))
%%%  Simplified H16 on reading formula in, to give:
     %%%  H16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) 
          and fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
%%%  Simplified H17 on reading formula in, to give:
     %%%  H17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__classtype__first <= fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) <= rr_type__classtype__last))
%%%  Simplified H18 on reading formula in, to give:
     %%%  H18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= character__last)))
%%%  Simplified H19 on reading formula in, to give:
     %%%  H19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___4 
          : integer, rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           <= character__last)))
%%%  Simplified H20 on reading formula in, to give:
     %%%  H20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
%%%  Simplified H21 on reading formula in, to give:
     %%%  H21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___5 
          : integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5])
           and element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
%%%  Simplified H22 on reading formula in, to give:
     %%%  H22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
%%%  Simplified H23 on reading formula in, to give:
     %%%  H23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___6 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 
          dns_types__byte__last)))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___7 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
%%%  Simplified H25 on reading formula in, to give:
     %%%  H25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___8 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= dns_types__byte__last))))
%%%  Simplified H26 on reading formula in, to give:
     %%%  H26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [
          i___3]) and element(element(element(dns_table_type__nsecrecordkeys, [
          i___1]), [i___2]), [i___3]) <= character__last)))
---  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).
---  Hypothesis H33 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H28).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as 
          H32).
%%%  Simplified H38 on reading formula in, to give:
     %%%  H38:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(lower_key, [i___1]) and element(
          lower_key, [i___1]) <= character__last)
---  Hypothesis H39 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H40 has been replaced by "true".  (It is already present, as 
          H28).
---  Hypothesis H41 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H42 has been replaced by "true".  (It is already present, as 
          H32).
---  Hypothesis H43 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H44 has been replaced by "true".  (It is already present, as 
          H28).
---  Hypothesis H45 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H46 has been replaced by "true".  (It is already present, as 
          H32).
%%%  Simplified H48 on reading formula in, to give:
     %%%  H48:  false
%%%  Simplified C1 on reading formula in, to give:
     %%%  C1:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(key, [i___1]) and element(key, [i___1]) 
          <= character__last)
%%%  Simplified C4 on reading formula in, to give:
     %%%  C4:  rr_type__classtype__first <= fld_class(fld_inherit(therecord))
%%%  Simplified C6 on reading formula in, to give:
     %%%  C6:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(fld_nextdomainname(therecord), [i___1]) 
          and element(fld_nextdomainname(therecord), [i___1]) <= 
          character__last)
%%%  Simplified C7 on reading formula in, to give:
     %%%  C7:  for_all(i___2 : integer, rr_type__linelengthindex__first <= 
          i___2 and i___2 <= rr_type__linelengthindex__last -> character__first 
          <= element(fld_recordlist(therecord), [i___2]) and element(
          fld_recordlist(therecord), [i___2]) <= character__last)
%%%  Simplified C10 on reading formula in, to give:
     %%%  C10:  for_all(i___3 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___3 and 
          i___3 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(therecord), [
          i___3]) and element(fld_recordtypes(therecord), [i___3]) <= 
          dns_types__query_type__last)
%%%  Simplified C13 on reading formula in, to give:
     %%%  C13:  for_all(i___4 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___4 and 
          i___4 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(therecord), [i___4]
          ) and element(fld_blocknumbers(therecord), [i___4]) <= 
          dns_types__byte__last)
%%%  Simplified C14 on reading formula in, to give:
     %%%  C14:  for_all(i___5 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(therecord), [i___5]) and element(fld_blocklengths(
          therecord), [i___5]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)
%%%  Simplified C15 on reading formula in, to give:
     %%%  C15:  for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___7 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___7 and i___7 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(therecord), [
          i___6]), [i___7]) and element(element(fld_bitmaps(therecord), [i___6])
          , [i___7]) <= dns_types__byte__last))
%%%  Simplified C16 on reading formula in, to give:
     %%%  C16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2]))) and fld_ttlinseconds(
          fld_inherit(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
%%%  Simplified C17 on reading formula in, to give:
     %%%  C17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__classtype__first <= fld_class(fld_inherit(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2]))) and fld_class(fld_inherit(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2]))) <= rr_type__classtype__last))
%%%  Simplified C18 on reading formula in, to give:
     %%%  C18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___3]) <= 
          character__last)))
%%%  Simplified C19 on reading formula in, to give:
     %%%  C19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___4 
          : integer, rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___4]) <= character__last)))
%%%  Simplified C20 on reading formula in, to give:
     %%%  C20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) and fld_numberofrecordtypes(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
%%%  Simplified C21 on reading formula in, to give:
     %%%  C21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___5 
          : integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___5]) and element(
          fld_recordtypes(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___5]) <= dns_types__query_type__last)))
%%%  Simplified C22 on reading formula in, to give:
     %%%  C22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) and fld_numberofblocks(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
%%%  Simplified C23 on reading formula in, to give:
     %%%  C23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___6 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___6]) and element(fld_blocknumbers(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___6]) <= dns_types__byte__last)))
%%%  Simplified C24 on reading formula in, to give:
     %%%  C24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___7 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___7]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)))
%%%  Simplified C25 on reading formula in, to give:
     %%%  C25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___8 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___8]), [i___9]) and element(element(
          fld_bitmaps(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___8]), [i___9]) <= 
          dns_types__byte__last))))
%%%  Simplified C26 on reading formula in, to give:
     %%%  C26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(update(dns_table_type__nsecrecordkeys, [bucket], 
          update(element(dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i]
          , lower_key)), [i___1]), [i___2]), [i___3]) and element(element(
          element(update(dns_table_type__nsecrecordkeys, [bucket], update(
          element(dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i], 
          lower_key)), [i___1]), [i___2]), [i___3]) <= character__last)))
***  Proved C1:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first 
          <= i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(key, [i___1]) and element(key, [i___1]) 
          <= character__last)
     using hypothesis H1.
***  Proved C2:  fld_ttlinseconds(fld_inherit(therecord)) >= 
          unsigned_types__unsigned32__first
     using hypothesis H2.
***  Proved C3:  fld_ttlinseconds(fld_inherit(therecord)) <= 
          unsigned_types__unsigned32__last
     using hypothesis H3.
***  Proved C4:  rr_type__classtype__first <= fld_class(fld_inherit(therecord))
     using hypothesis H4.
***  Proved C5:  fld_class(fld_inherit(therecord)) <= rr_type__classtype__last
     using hypothesis H5.
***  Proved C6:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first 
          <= i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(fld_nextdomainname(therecord), [i___1]) 
          and element(fld_nextdomainname(therecord), [i___1]) <= 
          character__last)
     using hypothesis H6.
***  Proved C7:  for_all(i___2 : integer, rr_type__linelengthindex__first <= 
          i___2 and i___2 <= rr_type__linelengthindex__last -> character__first 
          <= element(fld_recordlist(therecord), [i___2]) and element(
          fld_recordlist(therecord), [i___2]) <= character__last)
     using hypothesis H7.
***  Proved C8:  fld_numberofrecordtypes(therecord) >= 
          rr_type__nsec_record_type__recordtypeindexvalue__first
     using hypothesis H8.
***  Proved C9:  fld_numberofrecordtypes(therecord) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last
     using hypothesis H9.
***  Proved C10:  for_all(i___3 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___3 and 
          i___3 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(therecord), [
          i___3]) and element(fld_recordtypes(therecord), [i___3]) <= 
          dns_types__query_type__last)
     using hypothesis H10.
***  Proved C11:  fld_numberofblocks(therecord) >= 
          rr_type__nsec_record_type__blocknumbervalue__first
     using hypothesis H11.
***  Proved C12:  fld_numberofblocks(therecord) <= 
          rr_type__nsec_record_type__blocknumbervalue__last
     using hypothesis H12.
***  Proved C13:  for_all(i___4 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___4 and 
          i___4 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(therecord), [i___4]
          ) and element(fld_blocknumbers(therecord), [i___4]) <= 
          dns_types__byte__last)
     using hypothesis H13.
***  Proved C14:  for_all(i___5 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(therecord), [i___5]) and element(fld_blocklengths(
          therecord), [i___5]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)
     using hypothesis H14.
***  Proved C15:  for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___7 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___7 and i___7 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(therecord), [
          i___6]), [i___7]) and element(element(fld_bitmaps(therecord), [i___6])
          , [i___7]) <= dns_types__byte__last))
     using hypothesis H15.
***  Proved C27:  loop__1__i + 1 >= rr_type__returnedrecordsindextype__first
     using hypothesis H27.
***  Proved C29:  loop__1__i + 1 >= rr_type__returnedrecordsindextype__first
     using hypothesis H27.
-S-  Applied substitution rule insertnsecre_rules(132).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> unsigned_types__unsigned32__first <= 
          fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and 
          fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
<S>  New H17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> rr_type__classtype__first <= fld_class(fld_inherit(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) 
          and fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          rr_type__classtype__last))
<S>  New H18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 
          rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= character__last)))
<S>  New H19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___4 : integer, 
          rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           <= character__last)))
<S>  New H20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
<S>  New H21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___5 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5])
           and element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
<S>  New H22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> rr_type__nsec_record_type__blocknumbervalue__first 
          <= fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
<S>  New H23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 
          dns_types__byte__last)))
<S>  New H24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___7 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___7 and 
          i___7 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
<S>  New H25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___8 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___8 and 
          i___8 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___9 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___9 and i___9 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= dns_types__byte__last))))
<S>  New H26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 
          rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [
          i___3]) and element(element(element(dns_table_type__nsecrecordkeys, [
          i___1]), [i___2]), [i___3]) <= character__last)))
<S>  New H28:  loop__1__i <= 64
<S>  New H49:  not loop__1__i = 64
<S>  New C16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> unsigned_types__unsigned32__first <= 
          fld_ttlinseconds(fld_inherit(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2]))) and fld_ttlinseconds(fld_inherit(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2]))) <= unsigned_types__unsigned32__last)
          )
<S>  New C17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> rr_type__classtype__first <= fld_class(fld_inherit(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2]))) <= 
          rr_type__classtype__last))
<S>  New C18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 
          rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___3]) <= 
          character__last)))
<S>  New C19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___4 : integer, 
          rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___4]) <= character__last)))
<S>  New C20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) and fld_numberofrecordtypes(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
<S>  New C21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___5 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___5]) and element(
          fld_recordtypes(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___5]) <= dns_types__query_type__last)))
<S>  New C22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> rr_type__nsec_record_type__blocknumbervalue__first 
          <= fld_numberofblocks(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) and fld_numberofblocks(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
<S>  New C23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___6]) and element(fld_blocknumbers(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___6]) <= dns_types__byte__last)))
<S>  New C24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___7 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___7 and 
          i___7 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___7]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)))
<S>  New C25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___8 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___8 and 
          i___8 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___9 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___9 and i___9 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___8]), [i___9]) and element(element(
          fld_bitmaps(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___8]), [i___9]) <= 
          dns_types__byte__last))))
<S>  New C26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 
          rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(update(dns_table_type__nsecrecordkeys, [bucket], 
          update(element(dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i]
          , lower_key)), [i___1]), [i___2]), [i___3]) and element(element(
          element(update(dns_table_type__nsecrecordkeys, [bucket], update(
          element(dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i], 
          lower_key)), [i___1]), [i___2]), [i___3]) <= character__last)))
<S>  New C28:  loop__1__i <= 63
<S>  New C30:  loop__1__i <= 63
***  Proved C28:  loop__1__i <= 63
     using hypotheses H28 & H49.
***  Proved C30:  loop__1__i <= 63
     using hypotheses H28 & H49.
>>>  Restructured hypothesis H49 into:
     >>>  H49:  loop__1__i <> 64
-S-  Applied substitution rule insertnsecre_rules(9).
     This was achieved by replacing all occurrences of character__first by:
          0.
<S>  New H1:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          key, [i___1]) and element(key, [i___1]) <= character__last)
<S>  New H6:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_nextdomainname(therecord), [i___1]) and element(
          fld_nextdomainname(therecord), [i___1]) <= character__last)
<S>  New H7:  for_all(i___2 : integer, rr_type__linelengthindex__first <= i___2 
          and i___2 <= rr_type__linelengthindex__last -> 0 <= element(
          fld_recordlist(therecord), [i___2]) and element(fld_recordlist(
          therecord), [i___2]) <= character__last)
<S>  New H18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 
          rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(fld_nextdomainname(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), 
          [i___3]) and element(fld_nextdomainname(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3]) <= 
          character__last)))
<S>  New H19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___4 : integer, 
          rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> 0 <= element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           and element(fld_recordlist(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4]) <= 
          character__last)))
<S>  New H26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 
          rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(element(element(
          dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [i___3]) and 
          element(element(element(dns_table_type__nsecrecordkeys, [i___1]), [
          i___2]), [i___3]) <= character__last)))
<S>  New H38:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          lower_key, [i___1]) and element(lower_key, [i___1]) <= 
          character__last)
<S>  New C18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 
          rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(fld_nextdomainname(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___3]) and element(
          fld_nextdomainname(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___3]) <= character__last)))
<S>  New C19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___4 : integer, 
          rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> 0 <= element(fld_recordlist(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___4]) and element(fld_recordlist(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___4]) <= 
          character__last)))
<S>  New C26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 
          rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(element(element(
          update(dns_table_type__nsecrecordkeys, [bucket], update(element(
          dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i], lower_key)), 
          [i___1]), [i___2]), [i___3]) and element(element(element(update(
          dns_table_type__nsecrecordkeys, [bucket], update(element(
          dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i], lower_key)), 
          [i___1]), [i___2]), [i___3]) <= character__last)))
-S-  Applied substitution rule insertnsecre_rules(10).
     This was achieved by replacing all occurrences of character__last by:
          255.
<S>  New H1:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          key, [i___1]) and element(key, [i___1]) <= 255)
<S>  New H6:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          fld_nextdomainname(therecord), [i___1]) and element(
          fld_nextdomainname(therecord), [i___1]) <= 255)
<S>  New H7:  for_all(i___2 : integer, rr_type__linelengthindex__first <= i___2 
          and i___2 <= rr_type__linelengthindex__last -> 0 <= element(
          fld_recordlist(therecord), [i___2]) and element(fld_recordlist(
          therecord), [i___2]) <= 255)
<S>  New H18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 
          rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(fld_nextdomainname(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), 
          [i___3]) and element(fld_nextdomainname(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3]) <= 255)
          ))
<S>  New H19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___4 : integer, 
          rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> 0 <= element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           and element(fld_recordlist(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4]) <= 255)
          ))
<S>  New H26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 
          rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(element(element(
          dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [i___3]) and 
          element(element(element(dns_table_type__nsecrecordkeys, [i___1]), [
          i___2]), [i___3]) <= 255)))
<S>  New H38:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 0 <= element(
          lower_key, [i___1]) and element(lower_key, [i___1]) <= 255)
<S>  New C18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 
          rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(fld_nextdomainname(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___3]) and element(
          fld_nextdomainname(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___3]) <= 255)))
<S>  New C19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___4 : integer, 
          rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> 0 <= element(fld_recordlist(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___4]) and element(fld_recordlist(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___4]) <= 255)))
<S>  New C26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 
          rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(element(element(
          update(dns_table_type__nsecrecordkeys, [bucket], update(element(
          dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i], lower_key)), 
          [i___1]), [i___2]), [i___3]) and element(element(element(update(
          dns_table_type__nsecrecordkeys, [bucket], update(element(
          dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i], lower_key)), 
          [i___1]), [i___2]), [i___3]) <= 255)))
-S-  Applied substitution rule insertnsecre_rules(20).
     This was achieved by replacing all occurrences of dns_types__byte__first 
          by:
          0.
<S>  New H13:  for_all(i___4 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___4 and 
          i___4 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 0 
          <= element(fld_blocknumbers(therecord), [i___4]) and element(
          fld_blocknumbers(therecord), [i___4]) <= dns_types__byte__last)
<S>  New H15:  for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___7 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___7 and i___7 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 0 <= element(element(
          fld_bitmaps(therecord), [i___6]), [i___7]) and element(element(
          fld_bitmaps(therecord), [i___6]), [i___7]) <= dns_types__byte__last))
<S>  New H23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 0 
          <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 
          dns_types__byte__last)))
<S>  New H25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___8 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___8 and 
          i___8 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___9 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___9 and i___9 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 0 <= element(element(
          fld_bitmaps(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2])), [i___8]), [i___9]) and element(element(fld_bitmaps(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), 
          [i___8]), [i___9]) <= dns_types__byte__last))))
<S>  New C23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 0 
          <= element(fld_blocknumbers(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___6]) and element(fld_blocknumbers(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___6]) <= dns_types__byte__last)))
<S>  New C25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___8 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___8 and 
          i___8 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___9 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___9 and i___9 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 0 <= element(element(
          fld_bitmaps(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___8]), [i___9]) and 
          element(element(fld_bitmaps(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___8]), [i___9]) <= dns_types__byte__last))))
-S-  Applied substitution rule insertnsecre_rules(21).
     This was achieved by replacing all occurrences of dns_types__byte__last by:
          255.
<S>  New H13:  for_all(i___4 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___4 and 
          i___4 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 0 
          <= element(fld_blocknumbers(therecord), [i___4]) and element(
          fld_blocknumbers(therecord), [i___4]) <= 255)
<S>  New H15:  for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___7 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___7 and i___7 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 0 <= element(element(
          fld_bitmaps(therecord), [i___6]), [i___7]) and element(element(
          fld_bitmaps(therecord), [i___6]), [i___7]) <= 255))
<S>  New H23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 0 
          <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 255)
          ))
<S>  New H25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___8 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___8 and 
          i___8 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___9 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___9 and i___9 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 0 <= element(element(
          fld_bitmaps(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2])), [i___8]), [i___9]) and element(element(fld_bitmaps(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), 
          [i___8]), [i___9]) <= 255))))
<S>  New C23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 0 
          <= element(fld_blocknumbers(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___6]) and element(fld_blocknumbers(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___6]) <= 255)))
<S>  New C25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___8 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___8 and 
          i___8 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___9 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___9 and i___9 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 0 <= element(element(
          fld_bitmaps(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___8]), [i___9]) and 
          element(element(fld_bitmaps(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___8]), [i___9]) <= 255))))
-S-  Applied substitution rule insertnsecre_rules(27).
     This was achieved by replacing all occurrences of 
          dns_types__query_type__first by:
          dns_types__a.
<S>  New H10:  for_all(i___3 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___3 and 
          i___3 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__a <= element(fld_recordtypes(therecord), [i___3]) and 
          element(fld_recordtypes(therecord), [i___3]) <= 
          dns_types__query_type__last)
<S>  New H21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___5 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__a <= element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) and 
          element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
<S>  New C21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___5 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__a <= element(fld_recordtypes(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___5]) and element(fld_recordtypes(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
-S-  Applied substitution rule insertnsecre_rules(28).
     This was achieved by replacing all occurrences of 
          dns_types__query_type__last by:
          dns_types__unimplemented.
<S>  New H10:  for_all(i___3 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___3 and 
          i___3 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__a <= element(fld_recordtypes(therecord), [i___3]) and 
          element(fld_recordtypes(therecord), [i___3]) <= 
          dns_types__unimplemented)
<S>  New H21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___5 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__a <= element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) and 
          element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__unimplemented)))
<S>  New C21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___5 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__a <= element(fld_recordtypes(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___5]) and element(fld_recordtypes(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___5]) <= 
          dns_types__unimplemented)))
-S-  Applied substitution rule insertnsecre_rules(84).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__first by:
          0.
<S>  New H2:  fld_ttlinseconds(fld_inherit(therecord)) >= 0
<S>  New H16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> 0 <= fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and 
          fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
<S>  New C16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> 0 <= fld_ttlinseconds(fld_inherit(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2]))) and fld_ttlinseconds(fld_inherit(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2]))) <= unsigned_types__unsigned32__last)
          )
-S-  Applied substitution rule insertnsecre_rules(85).
     This was achieved by replacing all occurrences of 
          unsigned_types__unsigned32__last by:
          4294967295.
<S>  New H3:  fld_ttlinseconds(fld_inherit(therecord)) <= 4294967295
<S>  New H16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> 0 <= fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and 
          fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 4294967295))
<S>  New C16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> 0 <= fld_ttlinseconds(fld_inherit(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2]))) and fld_ttlinseconds(fld_inherit(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2]))) <= 4294967295))
-S-  Applied substitution rule insertnsecre_rules(90).
     This was achieved by replacing all occurrences of 
          rr_type__classtype__first by:
          rr_type__internet.
<S>  New H4:  rr_type__internet <= fld_class(fld_inherit(therecord))
<S>  New H17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> rr_type__internet <= fld_class(fld_inherit(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and 
          fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          rr_type__classtype__last))
<S>  New C17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> rr_type__internet <= fld_class(fld_inherit(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2]))) and fld_class(fld_inherit(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2]))) <= rr_type__classtype__last))
-S-  Applied substitution rule insertnsecre_rules(91).
     This was achieved by replacing all occurrences of rr_type__classtype__last 
          by:
          rr_type__hs.
<S>  New H5:  fld_class(fld_inherit(therecord)) <= rr_type__hs
<S>  New H17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> rr_type__internet <= fld_class(fld_inherit(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and 
          fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= rr_type__hs))
<S>  New C17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> rr_type__internet <= fld_class(fld_inherit(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2]))) and fld_class(fld_inherit(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2]))) <= rr_type__hs))
-S-  Applied substitution rule insertnsecre_rules(117).
     This was achieved by replacing all occurrences of 
          rr_type__linelengthindex__first by:
          1.
<S>  New H7:  for_all(i___2 : integer, 1 <= i___2 and i___2 <= 
          rr_type__linelengthindex__last -> 0 <= element(fld_recordlist(
          therecord), [i___2]) and element(fld_recordlist(therecord), [i___2]) 
          <= 255)
<S>  New H19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___4 : integer, 1 <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> 0 <= element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           and element(fld_recordlist(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4]) <= 255)
          ))
<S>  New C19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___4 : integer, 1 <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> 0 <= element(fld_recordlist(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___4]) and element(fld_recordlist(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___4]) <= 255)))
-S-  Applied substitution rule insertnsecre_rules(118).
     This was achieved by replacing all occurrences of 
          rr_type__linelengthindex__last by:
          256.
<S>  New H7:  for_all(i___2 : integer, 1 <= i___2 and i___2 <= 256 -> 0 <= 
          element(fld_recordlist(therecord), [i___2]) and element(
          fld_recordlist(therecord), [i___2]) <= 255)
<S>  New H19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___4 : integer, 1 <= i___4 and i___4 <= 
          256 -> 0 <= element(fld_recordlist(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4]) and 
          element(fld_recordlist(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4]) <= 255)
          ))
<S>  New C19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___4 : integer, 1 <= i___4 and i___4 <= 
          256 -> 0 <= element(fld_recordlist(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___4]) <= 255)))
-S-  Applied substitution rule insertnsecre_rules(123).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__first by:
          1.
<S>  New H1:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(key, [i___1]) and 
          element(key, [i___1]) <= 255)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(fld_nextdomainname(
          therecord), [i___1]) and element(fld_nextdomainname(therecord), [
          i___1]) <= 255)
<S>  New H18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 1 <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(fld_nextdomainname(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), 
          [i___3]) and element(fld_nextdomainname(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3]) <= 255)
          ))
<S>  New H26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 1 <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(element(element(
          dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [i___3]) and 
          element(element(element(dns_table_type__nsecrecordkeys, [i___1]), [
          i___2]), [i___3]) <= 255)))
<S>  New H38:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(lower_key, [i___1])
           and element(lower_key, [i___1]) <= 255)
<S>  New C18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 1 <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(fld_nextdomainname(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___3]) and element(
          fld_nextdomainname(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___3]) <= 255)))
<S>  New C26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 1 <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> 0 <= element(element(element(
          update(dns_table_type__nsecrecordkeys, [bucket], update(element(
          dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i], lower_key)), 
          [i___1]), [i___2]), [i___3]) and element(element(element(update(
          dns_table_type__nsecrecordkeys, [bucket], update(element(
          dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i], lower_key)), 
          [i___1]), [i___2]), [i___3]) <= 255)))
-S-  Applied substitution rule insertnsecre_rules(124).
     This was achieved by replacing all occurrences of 
          rr_type__wirestringtypeindex__last by:
          129.
<S>  New H1:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 129 -> 0 <= 
          element(key, [i___1]) and element(key, [i___1]) <= 255)
<S>  New H6:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 129 -> 0 <= 
          element(fld_nextdomainname(therecord), [i___1]) and element(
          fld_nextdomainname(therecord), [i___1]) <= 255)
<S>  New H18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 1 <= i___3 and i___3 <= 
          129 -> 0 <= element(fld_nextdomainname(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3]) and 
          element(fld_nextdomainname(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3]) <= 255)
          ))
<S>  New H26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 1 <= i___3 and i___3 <= 
          129 -> 0 <= element(element(element(dns_table_type__nsecrecordkeys, [
          i___1]), [i___2]), [i___3]) and element(element(element(
          dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [i___3]) <= 255)))
<S>  New H38:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 129 -> 0 <= 
          element(lower_key, [i___1]) and element(lower_key, [i___1]) <= 255)
<S>  New C18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 1 <= i___3 and i___3 <= 
          129 -> 0 <= element(fld_nextdomainname(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___3]) <= 255)))
<S>  New C26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 1 <= i___3 and i___3 <= 
          129 -> 0 <= element(element(element(update(
          dns_table_type__nsecrecordkeys, [bucket], update(element(
          dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i], lower_key)), 
          [i___1]), [i___2]), [i___3]) and element(element(element(update(
          dns_table_type__nsecrecordkeys, [bucket], update(element(
          dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i], lower_key)), 
          [i___1]), [i___2]), [i___3]) <= 255)))
-S-  Applied substitution rule insertnsecre_rules(131).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__first by:
          1.
<S>  New H20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
<S>  New H22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
<S>  New H24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___7 : 
          integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
<S>  New H27:  loop__1__i >= 1
<S>  New H23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___6 : 
          integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 0 <= 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 255)
          ))
<S>  New H25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___8 : 
          integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 0 
          <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= 255))))
<S>  New H21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___5 : 
          integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> dns_types__a 
          <= element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) and 
          element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__unimplemented)))
<S>  New H16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 0 <= fld_ttlinseconds(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) and fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 4294967295))
<S>  New H17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> rr_type__internet <= 
          fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) <= rr_type__hs))
<S>  New H19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___4 : 
          integer, 1 <= i___4 and i___4 <= 256 -> 0 <= element(fld_recordlist(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), 
          [i___4]) and element(fld_recordlist(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4]) <= 255)
          ))
<S>  New H18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___3 : 
          integer, 1 <= i___3 and i___3 <= 129 -> 0 <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= 255)))
<S>  New H26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___3 : 
          integer, 1 <= i___3 and i___3 <= 129 -> 0 <= element(element(element(
          dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [i___3]) and 
          element(element(element(dns_table_type__nsecrecordkeys, [i___1]), [
          i___2]), [i___3]) <= 255)))
<S>  New C20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) and fld_numberofrecordtypes(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
<S>  New C22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) and fld_numberofblocks(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
<S>  New C24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___7 : 
          integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___7]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)))
<S>  New C23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___6 : 
          integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 0 <= 
          element(fld_blocknumbers(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___6]) and element(fld_blocknumbers(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___6]) <= 255)))
<S>  New C25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___8 : 
          integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 0 
          <= element(element(fld_bitmaps(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___8]), [i___9]) and element(element(
          fld_bitmaps(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___8]), [i___9]) <= 
          255))))
<S>  New C21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___5 : 
          integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> dns_types__a 
          <= element(fld_recordtypes(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___5]) and element(fld_recordtypes(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___5]) <= 
          dns_types__unimplemented)))
<S>  New C16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 0 <= fld_ttlinseconds(
          fld_inherit(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2]))) and fld_ttlinseconds(
          fld_inherit(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2]))) <= 4294967295))
<S>  New C17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> rr_type__internet <= 
          fld_class(fld_inherit(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2]))) and fld_class(fld_inherit(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2]))) <= rr_type__hs))
<S>  New C19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___4 : 
          integer, 1 <= i___4 and i___4 <= 256 -> 0 <= element(fld_recordlist(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___4]) and element(
          fld_recordlist(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___4]) <= 255)))
<S>  New C18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___3 : 
          integer, 1 <= i___3 and i___3 <= 129 -> 0 <= element(
          fld_nextdomainname(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___3]) <= 255)))
<S>  New C26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___3 : 
          integer, 1 <= i___3 and i___3 <= 129 -> 0 <= element(element(element(
          update(dns_table_type__nsecrecordkeys, [bucket], update(element(
          dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i], lower_key)), 
          [i___1]), [i___2]), [i___3]) and element(element(element(update(
          dns_table_type__nsecrecordkeys, [bucket], update(element(
          dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i], lower_key)), 
          [i___1]), [i___2]), [i___3]) <= 255)))
-S-  Applied substitution rule insertnsecre_rules(136).
     This was achieved by replacing all occurrences of 
          rr_type__numbucketsindextype__first by:
          1.
<S>  New H31:  bucket >= 1
<S>  New H20:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
<S>  New H22:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> for_all(i___7 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___7 and 
          i___7 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
<S>  New H23:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 0 
          <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 255)
          ))
<S>  New H25:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> for_all(i___8 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___8 and 
          i___8 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___9 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___9 and i___9 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 0 <= element(element(
          fld_bitmaps(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2])), [i___8]), [i___9]) and element(element(fld_bitmaps(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), 
          [i___8]), [i___9]) <= 255))))
<S>  New H21:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> for_all(i___5 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__a <= element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) and 
          element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__unimplemented)))
<S>  New H16:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> 0 <= fld_ttlinseconds(fld_inherit(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and 
          fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 4294967295))
<S>  New H17:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> rr_type__internet <= fld_class(fld_inherit(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) 
          and fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= rr_type__hs))
<S>  New H19:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> for_all(i___4 : integer, 1 <= i___4 and 
          i___4 <= 256 -> 0 <= element(fld_recordlist(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4]) and 
          element(fld_recordlist(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4]) <= 255)
          ))
<S>  New H18:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> for_all(i___3 : integer, 1 <= i___3 and 
          i___3 <= 129 -> 0 <= element(fld_nextdomainname(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3]) and 
          element(fld_nextdomainname(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3]) <= 255)
          ))
<S>  New H26:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> for_all(i___3 : integer, 1 <= i___3 and 
          i___3 <= 129 -> 0 <= element(element(element(
          dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [i___3]) and 
          element(element(element(dns_table_type__nsecrecordkeys, [i___1]), [
          i___2]), [i___3]) <= 255)))
<S>  New C20:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) and fld_numberofrecordtypes(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
<S>  New C22:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) and fld_numberofblocks(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
<S>  New C24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> for_all(i___7 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___7 and 
          i___7 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___7]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)))
<S>  New C23:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 0 
          <= element(fld_blocknumbers(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___6]) and element(fld_blocknumbers(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___6]) <= 255)))
<S>  New C25:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> for_all(i___8 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___8 and 
          i___8 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___9 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___9 and i___9 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 0 <= element(element(
          fld_bitmaps(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___8]), [i___9]) and 
          element(element(fld_bitmaps(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___8]), [i___9]) <= 255))))
<S>  New C21:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> for_all(i___5 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__a <= element(fld_recordtypes(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___5]) and element(fld_recordtypes(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___5]) <= 
          dns_types__unimplemented)))
<S>  New C16:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> 0 <= fld_ttlinseconds(fld_inherit(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2]))) and fld_ttlinseconds(fld_inherit(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2]))) <= 4294967295))
<S>  New C17:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> rr_type__internet <= fld_class(fld_inherit(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2]))) <= rr_type__hs))
<S>  New C19:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> for_all(i___4 : integer, 1 <= i___4 and 
          i___4 <= 256 -> 0 <= element(fld_recordlist(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___4]) <= 255)))
<S>  New C18:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> for_all(i___3 : integer, 1 <= i___3 and 
          i___3 <= 129 -> 0 <= element(fld_nextdomainname(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___3]) <= 255)))
<S>  New C26:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 
          rr_type__numbucketsindextype__last -> for_all(i___2 : integer, 1 <= 
          i___2 and i___2 <= 64 -> for_all(i___3 : integer, 1 <= i___3 and 
          i___3 <= 129 -> 0 <= element(element(element(update(
          dns_table_type__nsecrecordkeys, [bucket], update(element(
          dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i], lower_key)), 
          [i___1]), [i___2]), [i___3]) and element(element(element(update(
          dns_table_type__nsecrecordkeys, [bucket], update(element(
          dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i], lower_key)), 
          [i___1]), [i___2]), [i___3]) <= 255)))
-S-  Applied substitution rule insertnsecre_rules(137).
     This was achieved by replacing all occurrences of 
          rr_type__numbucketsindextype__last by:
          64.
<S>  New H32:  bucket <= 64
<S>  New H20:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
<S>  New H22:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___7 : 
          integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
<S>  New H23:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___6 : 
          integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 0 <= 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 255)
          ))
<S>  New H25:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___8 : 
          integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 0 
          <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= 255))))
<S>  New H21:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___5 : 
          integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> dns_types__a 
          <= element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) and 
          element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__unimplemented)))
<S>  New H16:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 0 <= fld_ttlinseconds(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) and fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 4294967295))
<S>  New H17:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> rr_type__internet <= 
          fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) <= rr_type__hs))
<S>  New H19:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___4 : 
          integer, 1 <= i___4 and i___4 <= 256 -> 0 <= element(fld_recordlist(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), 
          [i___4]) and element(fld_recordlist(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4]) <= 255)
          ))
<S>  New H18:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___3 : 
          integer, 1 <= i___3 and i___3 <= 129 -> 0 <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= 255)))
<S>  New H26:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___3 : 
          integer, 1 <= i___3 and i___3 <= 129 -> 0 <= element(element(element(
          dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [i___3]) and 
          element(element(element(dns_table_type__nsecrecordkeys, [i___1]), [
          i___2]), [i___3]) <= 255)))
<S>  New C20:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) and fld_numberofrecordtypes(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
<S>  New C22:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) and fld_numberofblocks(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
<S>  New C24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___7 : 
          integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___7]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)))
<S>  New C23:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___6 : 
          integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 0 <= 
          element(fld_blocknumbers(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___6]) and element(fld_blocknumbers(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___6]) <= 255)))
<S>  New C25:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___8 : 
          integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 0 
          <= element(element(fld_bitmaps(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___8]), [i___9]) and element(element(
          fld_bitmaps(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___8]), [i___9]) <= 
          255))))
<S>  New C21:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___5 : 
          integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> dns_types__a 
          <= element(fld_recordtypes(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___5]) and element(fld_recordtypes(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___5]) <= 
          dns_types__unimplemented)))
<S>  New C16:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 0 <= fld_ttlinseconds(
          fld_inherit(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2]))) and fld_ttlinseconds(
          fld_inherit(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2]))) <= 4294967295))
<S>  New C17:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> rr_type__internet <= 
          fld_class(fld_inherit(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2]))) and fld_class(fld_inherit(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2]))) <= rr_type__hs))
<S>  New C19:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___4 : 
          integer, 1 <= i___4 and i___4 <= 256 -> 0 <= element(fld_recordlist(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___4]) and element(
          fld_recordlist(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___4]) <= 255)))
<S>  New C18:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___3 : 
          integer, 1 <= i___3 and i___3 <= 129 -> 0 <= element(
          fld_nextdomainname(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___3]) <= 255)))
<S>  New C26:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___3 : 
          integer, 1 <= i___3 and i___3 <= 129 -> 0 <= element(element(element(
          update(dns_table_type__nsecrecordkeys, [bucket], update(element(
          dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i], lower_key)), 
          [i___1]), [i___2]), [i___3]) and element(element(element(update(
          dns_table_type__nsecrecordkeys, [bucket], update(element(
          dns_table_type__nsecrecordkeys, [bucket]), [loop__1__i], lower_key)), 
          [i___1]), [i___2]), [i___3]) <= 255)))
-S-  Applied substitution rule insertnsecre_rules(141).
     This was achieved by replacing all occurrences of 
          rr_type__nsec_record_type__recordtypeindexvalue__first by:
          0.
<S>  New H8:  fld_numberofrecordtypes(therecord) >= 0
<S>  New H20:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 0 <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
<S>  New C20:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 0 <= 
          fld_numberofrecordtypes(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) and fld_numberofrecordtypes(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
-S-  Applied substitution rule insertnsecre_rules(142).
     This was achieved by replacing all occurrences of 
          rr_type__nsec_record_type__recordtypeindexvalue__last by:
          32.
<S>  New H9:  fld_numberofrecordtypes(therecord) <= 32
<S>  New H20:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 0 <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 32))
<S>  New C20:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 0 <= 
          fld_numberofrecordtypes(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) and fld_numberofrecordtypes(element(element(
          update(dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) <= 32))
-S-  Applied substitution rule insertnsecre_rules(146).
     This was achieved by replacing all occurrences of 
          rr_type__nsec_record_type__recordtypearrayindex__first by:
          1.
<S>  New H10:  for_all(i___3 : integer, 1 <= i___3 and i___3 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> dns_types__a 
          <= element(fld_recordtypes(therecord), [i___3]) and element(
          fld_recordtypes(therecord), [i___3]) <= dns_types__unimplemented)
<S>  New H21:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___5 : 
          integer, 1 <= i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> dns_types__a 
          <= element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) and 
          element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__unimplemented)))
<S>  New C21:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___5 : 
          integer, 1 <= i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> dns_types__a 
          <= element(fld_recordtypes(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___5]) and element(fld_recordtypes(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___5]) <= 
          dns_types__unimplemented)))
-S-  Applied substitution rule insertnsecre_rules(147).
     This was achieved by replacing all occurrences of 
          rr_type__nsec_record_type__recordtypearrayindex__last by:
          32.
<S>  New H10:  for_all(i___3 : integer, 1 <= i___3 and i___3 <= 32 -> 
          dns_types__a <= element(fld_recordtypes(therecord), [i___3]) and 
          element(fld_recordtypes(therecord), [i___3]) <= 
          dns_types__unimplemented)
<S>  New H21:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___5 : 
          integer, 1 <= i___5 and i___5 <= 32 -> dns_types__a <= element(
          fld_recordtypes(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___5]) and element(fld_recordtypes(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5])
           <= dns_types__unimplemented)))
<S>  New C21:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___5 : 
          integer, 1 <= i___5 and i___5 <= 32 -> dns_types__a <= element(
          fld_recordtypes(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___5]) and element(fld_recordtypes(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___5]) <= 
          dns_types__unimplemented)))
-S-  Applied substitution rule insertnsecre_rules(151).
     This was achieved by replacing all occurrences of 
          rr_type__nsec_record_type__blocknumbervalue__first by:
          0.
<S>  New H11:  fld_numberofblocks(therecord) >= 0
<S>  New H22:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 0 <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
<S>  New C22:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 0 <= 
          fld_numberofblocks(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) and fld_numberofblocks(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
-S-  Applied substitution rule insertnsecre_rules(152).
     This was achieved by replacing all occurrences of 
          rr_type__nsec_record_type__blocknumbervalue__last by:
          32.
<S>  New H12:  fld_numberofblocks(therecord) <= 32
<S>  New H22:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 0 <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 32))
<S>  New C22:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> 0 <= 
          fld_numberofblocks(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) and fld_numberofblocks(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])) <= 32))
-S-  Applied substitution rule insertnsecre_rules(156).
     This was achieved by replacing all occurrences of 
          rr_type__nsec_record_type__blocknumberarrayindex__first by:
          1.
<S>  New H14:  for_all(i___5 : integer, 1 <= i___5 and i___5 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(therecord), [i___5]) and element(fld_blocklengths(
          therecord), [i___5]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)
<S>  New H13:  for_all(i___4 : integer, 1 <= i___4 and i___4 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 0 <= 
          element(fld_blocknumbers(therecord), [i___4]) and element(
          fld_blocknumbers(therecord), [i___4]) <= 255)
<S>  New H15:  for_all(i___6 : integer, 1 <= i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___7 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___7 and i___7 <= rr_type__nsec_record_type__bitmapindex__last -> 0 
          <= element(element(fld_bitmaps(therecord), [i___6]), [i___7]) and 
          element(element(fld_bitmaps(therecord), [i___6]), [i___7]) <= 255))
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___7 : 
          integer, 1 <= i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
<S>  New H23:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___6 : 
          integer, 1 <= i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 0 <= 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 255)
          ))
<S>  New H25:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___8 : 
          integer, 1 <= i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 0 
          <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= 255))))
<S>  New C24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___7 : 
          integer, 1 <= i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___7]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)))
<S>  New C23:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___6 : 
          integer, 1 <= i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 0 <= 
          element(fld_blocknumbers(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___6]) and element(fld_blocknumbers(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___6]) <= 255)))
<S>  New C25:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___8 : 
          integer, 1 <= i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 0 
          <= element(element(fld_bitmaps(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___8]), [i___9]) and element(element(
          fld_bitmaps(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___8]), [i___9]) <= 
          255))))
-S-  Applied substitution rule insertnsecre_rules(157).
     This was achieved by replacing all occurrences of 
          rr_type__nsec_record_type__blocknumberarrayindex__last by:
          32.
<S>  New H14:  for_all(i___5 : integer, 1 <= i___5 and i___5 <= 32 -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(therecord), [i___5]) and element(fld_blocklengths(
          therecord), [i___5]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)
<S>  New H13:  for_all(i___4 : integer, 1 <= i___4 and i___4 <= 32 -> 0 <= 
          element(fld_blocknumbers(therecord), [i___4]) and element(
          fld_blocknumbers(therecord), [i___4]) <= 255)
<S>  New H15:  for_all(i___6 : integer, 1 <= i___6 and i___6 <= 32 -> for_all(
          i___7 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___7 and i___7 <= rr_type__nsec_record_type__bitmapindex__last -> 0 
          <= element(element(fld_bitmaps(therecord), [i___6]), [i___7]) and 
          element(element(fld_bitmaps(therecord), [i___6]), [i___7]) <= 255))
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___7 : 
          integer, 1 <= i___7 and i___7 <= 32 -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
<S>  New H23:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___6 : 
          integer, 1 <= i___6 and i___6 <= 32 -> 0 <= element(fld_blocknumbers(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), 
          [i___6]) and element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 255)
          ))
<S>  New H25:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___8 : 
          integer, 1 <= i___8 and i___8 <= 32 -> for_all(i___9 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___9 and i___9 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 0 <= element(element(
          fld_bitmaps(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2])), [i___8]), [i___9]) and element(element(fld_bitmaps(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), 
          [i___8]), [i___9]) <= 255))))
<S>  New C24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___7 : 
          integer, 1 <= i___7 and i___7 <= 32 -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___7]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)))
<S>  New C23:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___6 : 
          integer, 1 <= i___6 and i___6 <= 32 -> 0 <= element(fld_blocknumbers(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___6]) and element(
          fld_blocknumbers(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___6]) <= 255)))
<S>  New C25:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___8 : 
          integer, 1 <= i___8 and i___8 <= 32 -> for_all(i___9 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___9 and i___9 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 0 <= element(element(
          fld_bitmaps(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___8]), [i___9]) and 
          element(element(fld_bitmaps(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___8]), [i___9]) <= 255))))
-S-  Applied substitution rule insertnsecre_rules(161).
     This was achieved by replacing all occurrences of 
          rr_type__nsec_record_type__blocklengthvalue__first by:
          1.
<S>  New H14:  for_all(i___5 : integer, 1 <= i___5 and i___5 <= 32 -> 1 <= 
          element(fld_blocklengths(therecord), [i___5]) and element(
          fld_blocklengths(therecord), [i___5]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___7 : 
          integer, 1 <= i___7 and i___7 <= 32 -> 1 <= element(fld_blocklengths(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), 
          [i___7]) and element(fld_blocklengths(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)))
<S>  New C24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___7 : 
          integer, 1 <= i___7 and i___7 <= 32 -> 1 <= element(fld_blocklengths(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___7]) and element(
          fld_blocklengths(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___7]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)))
-S-  Applied substitution rule insertnsecre_rules(162).
     This was achieved by replacing all occurrences of 
          rr_type__nsec_record_type__blocklengthvalue__last by:
          32.
<S>  New H14:  for_all(i___5 : integer, 1 <= i___5 and i___5 <= 32 -> 1 <= 
          element(fld_blocklengths(therecord), [i___5]) and element(
          fld_blocklengths(therecord), [i___5]) <= 32)
<S>  New H24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___7 : 
          integer, 1 <= i___7 and i___7 <= 32 -> 1 <= element(fld_blocklengths(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), 
          [i___7]) and element(fld_blocklengths(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7]) <= 32))
          )
<S>  New C24:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___7 : 
          integer, 1 <= i___7 and i___7 <= 32 -> 1 <= element(fld_blocklengths(
          element(element(update(dns_table_type__nsecrecordtable, [bucket], 
          update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___7]) and element(
          fld_blocklengths(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___7]) <= 32)))
-S-  Applied substitution rule insertnsecre_rules(166).
     This was achieved by replacing all occurrences of 
          rr_type__nsec_record_type__bitmapindex__first by:
          1.
<S>  New H15:  for_all(i___6 : integer, 1 <= i___6 and i___6 <= 32 -> for_all(
          i___7 : integer, 1 <= i___7 and i___7 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 0 <= element(element(
          fld_bitmaps(therecord), [i___6]), [i___7]) and element(element(
          fld_bitmaps(therecord), [i___6]), [i___7]) <= 255))
<S>  New H25:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___8 : 
          integer, 1 <= i___8 and i___8 <= 32 -> for_all(i___9 : integer, 1 <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 0 
          <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= 255))))
<S>  New C25:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___8 : 
          integer, 1 <= i___8 and i___8 <= 32 -> for_all(i___9 : integer, 1 <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 0 
          <= element(element(fld_bitmaps(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___8]), [i___9]) and element(element(
          fld_bitmaps(element(element(update(dns_table_type__nsecrecordtable, [
          bucket], update(element(dns_table_type__nsecrecordtable, [bucket]), [
          loop__1__i], therecord)), [i___1]), [i___2])), [i___8]), [i___9]) <= 
          255))))
-S-  Applied substitution rule insertnsecre_rules(167).
     This was achieved by replacing all occurrences of 
          rr_type__nsec_record_type__bitmapindex__last by:
          32.
<S>  New H15:  for_all(i___6 : integer, 1 <= i___6 and i___6 <= 32 -> for_all(
          i___7 : integer, 1 <= i___7 and i___7 <= 32 -> 0 <= element(element(
          fld_bitmaps(therecord), [i___6]), [i___7]) and element(element(
          fld_bitmaps(therecord), [i___6]), [i___7]) <= 255))
<S>  New H25:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___8 : 
          integer, 1 <= i___8 and i___8 <= 32 -> for_all(i___9 : integer, 1 <= 
          i___9 and i___9 <= 32 -> 0 <= element(element(fld_bitmaps(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8])
          , [i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= 255))))
<S>  New C25:  for_all(i___1 : integer, 1 <= i___1 and i___1 <= 64 -> for_all(
          i___2 : integer, 1 <= i___2 and i___2 <= 64 -> for_all(i___8 : 
          integer, 1 <= i___8 and i___8 <= 32 -> for_all(i___9 : integer, 1 <= 
          i___9 and i___9 <= 32 -> 0 <= element(element(fld_bitmaps(element(
          element(update(dns_table_type__nsecrecordtable, [bucket], update(
          element(dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], 
          therecord)), [i___1]), [i___2])), [i___8]), [i___9]) and element(
          element(fld_bitmaps(element(element(update(
          dns_table_type__nsecrecordtable, [bucket], update(element(
          dns_table_type__nsecrecordtable, [bucket]), [loop__1__i], therecord))
          , [i___1]), [i___2])), [i___8]), [i___9]) <= 255))))
%%%  Hypotheses H28 & H49 together imply that
          loop__1__i < 64.
     H28 & H49 have therefore been deleted and a new H50 added to this effect.
###  Established a contradiction [false-hypothesis] using hypothesis H48.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_insertnsecrecord_4.  @@@@@@@@@@
%%%  Simplified H1 on reading formula in, to give:
     %%%  H1:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(key, [i___1]) and element(key, [i___1]) 
          <= character__last)
%%%  Simplified H4 on reading formula in, to give:
     %%%  H4:  rr_type__classtype__first <= fld_class(fld_inherit(therecord))
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(fld_nextdomainname(therecord), [i___1]) 
          and element(fld_nextdomainname(therecord), [i___1]) <= 
          character__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___2 : integer, rr_type__linelengthindex__first <= 
          i___2 and i___2 <= rr_type__linelengthindex__last -> character__first 
          <= element(fld_recordlist(therecord), [i___2]) and element(
          fld_recordlist(therecord), [i___2]) <= character__last)
%%%  Simplified H10 on reading formula in, to give:
     %%%  H10:  for_all(i___3 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___3 and 
          i___3 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(therecord), [
          i___3]) and element(fld_recordtypes(therecord), [i___3]) <= 
          dns_types__query_type__last)
%%%  Simplified H13 on reading formula in, to give:
     %%%  H13:  for_all(i___4 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___4 and 
          i___4 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(therecord), [i___4]
          ) and element(fld_blocknumbers(therecord), [i___4]) <= 
          dns_types__byte__last)
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  for_all(i___5 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(therecord), [i___5]) and element(fld_blocklengths(
          therecord), [i___5]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)
%%%  Simplified H15 on reading formula in, to give:
     %%%  H15:  for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___7 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___7 and i___7 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(therecord), [
          i___6]), [i___7]) and element(element(fld_bitmaps(therecord), [i___6])
          , [i___7]) <= dns_types__byte__last))
%%%  Simplified H16 on reading formula in, to give:
     %%%  H16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) 
          and fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
%%%  Simplified H17 on reading formula in, to give:
     %%%  H17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__classtype__first <= fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) <= rr_type__classtype__last))
%%%  Simplified H18 on reading formula in, to give:
     %%%  H18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= character__last)))
%%%  Simplified H19 on reading formula in, to give:
     %%%  H19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___4 
          : integer, rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           <= character__last)))
%%%  Simplified H20 on reading formula in, to give:
     %%%  H20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
%%%  Simplified H21 on reading formula in, to give:
     %%%  H21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___5 
          : integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5])
           and element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
%%%  Simplified H22 on reading formula in, to give:
     %%%  H22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
%%%  Simplified H23 on reading formula in, to give:
     %%%  H23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___6 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 
          dns_types__byte__last)))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___7 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
%%%  Simplified H25 on reading formula in, to give:
     %%%  H25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___8 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= dns_types__byte__last))))
%%%  Simplified H26 on reading formula in, to give:
     %%%  H26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [
          i___3]) and element(element(element(dns_table_type__nsecrecordkeys, [
          i___1]), [i___2]), [i___3]) <= character__last)))
---  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).
---  Hypothesis H33 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H28).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as 
          H32).
%%%  Simplified C1 on reading formula in, to give:
     %%%  C1:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(key, [i___1]) and element(key, [i___1]) 
          <= character__last)
%%%  Simplified C4 on reading formula in, to give:
     %%%  C4:  rr_type__classtype__first <= fld_class(fld_inherit(therecord))
%%%  Simplified C6 on reading formula in, to give:
     %%%  C6:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(fld_nextdomainname(therecord), [i___1]) 
          and element(fld_nextdomainname(therecord), [i___1]) <= 
          character__last)
%%%  Simplified C7 on reading formula in, to give:
     %%%  C7:  for_all(i___2 : integer, rr_type__linelengthindex__first <= 
          i___2 and i___2 <= rr_type__linelengthindex__last -> character__first 
          <= element(fld_recordlist(therecord), [i___2]) and element(
          fld_recordlist(therecord), [i___2]) <= character__last)
%%%  Simplified C10 on reading formula in, to give:
     %%%  C10:  for_all(i___3 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___3 and 
          i___3 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(therecord), [
          i___3]) and element(fld_recordtypes(therecord), [i___3]) <= 
          dns_types__query_type__last)
%%%  Simplified C13 on reading formula in, to give:
     %%%  C13:  for_all(i___4 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___4 and 
          i___4 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(therecord), [i___4]
          ) and element(fld_blocknumbers(therecord), [i___4]) <= 
          dns_types__byte__last)
%%%  Simplified C14 on reading formula in, to give:
     %%%  C14:  for_all(i___5 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(therecord), [i___5]) and element(fld_blocklengths(
          therecord), [i___5]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)
%%%  Simplified C15 on reading formula in, to give:
     %%%  C15:  for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___7 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___7 and i___7 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(therecord), [
          i___6]), [i___7]) and element(element(fld_bitmaps(therecord), [i___6])
          , [i___7]) <= dns_types__byte__last))
%%%  Simplified C16 on reading formula in, to give:
     %%%  C16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) 
          and fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
%%%  Simplified C17 on reading formula in, to give:
     %%%  C17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__classtype__first <= fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) <= rr_type__classtype__last))
%%%  Simplified C18 on reading formula in, to give:
     %%%  C18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= character__last)))
%%%  Simplified C19 on reading formula in, to give:
     %%%  C19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___4 
          : integer, rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           <= character__last)))
%%%  Simplified C20 on reading formula in, to give:
     %%%  C20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
%%%  Simplified C21 on reading formula in, to give:
     %%%  C21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___5 
          : integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5])
           and element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
%%%  Simplified C22 on reading formula in, to give:
     %%%  C22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
%%%  Simplified C23 on reading formula in, to give:
     %%%  C23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___6 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 
          dns_types__byte__last)))
%%%  Simplified C24 on reading formula in, to give:
     %%%  C24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___7 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
%%%  Simplified C25 on reading formula in, to give:
     %%%  C25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___8 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= dns_types__byte__last))))
%%%  Simplified C26 on reading formula in, to give:
     %%%  C26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [
          i___3]) and element(element(element(dns_table_type__nsecrecordkeys, [
          i___1]), [i___2]), [i___3]) <= character__last)))
***  Proved C1:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first 
          <= i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(key, [i___1]) and element(key, [i___1]) 
          <= character__last)
     using hypothesis H1.
***  Proved C2:  fld_ttlinseconds(fld_inherit(therecord)) >= 
          unsigned_types__unsigned32__first
     using hypothesis H2.
***  Proved C3:  fld_ttlinseconds(fld_inherit(therecord)) <= 
          unsigned_types__unsigned32__last
     using hypothesis H3.
***  Proved C4:  rr_type__classtype__first <= fld_class(fld_inherit(therecord))
     using hypothesis H4.
***  Proved C5:  fld_class(fld_inherit(therecord)) <= rr_type__classtype__last
     using hypothesis H5.
***  Proved C6:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first 
          <= i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(fld_nextdomainname(therecord), [i___1]) 
          and element(fld_nextdomainname(therecord), [i___1]) <= 
          character__last)
     using hypothesis H6.
***  Proved C7:  for_all(i___2 : integer, rr_type__linelengthindex__first <= 
          i___2 and i___2 <= rr_type__linelengthindex__last -> character__first 
          <= element(fld_recordlist(therecord), [i___2]) and element(
          fld_recordlist(therecord), [i___2]) <= character__last)
     using hypothesis H7.
***  Proved C8:  fld_numberofrecordtypes(therecord) >= 
          rr_type__nsec_record_type__recordtypeindexvalue__first
     using hypothesis H8.
***  Proved C9:  fld_numberofrecordtypes(therecord) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last
     using hypothesis H9.
***  Proved C10:  for_all(i___3 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___3 and 
          i___3 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(therecord), [
          i___3]) and element(fld_recordtypes(therecord), [i___3]) <= 
          dns_types__query_type__last)
     using hypothesis H10.
***  Proved C11:  fld_numberofblocks(therecord) >= 
          rr_type__nsec_record_type__blocknumbervalue__first
     using hypothesis H11.
***  Proved C12:  fld_numberofblocks(therecord) <= 
          rr_type__nsec_record_type__blocknumbervalue__last
     using hypothesis H12.
***  Proved C13:  for_all(i___4 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___4 and 
          i___4 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(therecord), [i___4]
          ) and element(fld_blocknumbers(therecord), [i___4]) <= 
          dns_types__byte__last)
     using hypothesis H13.
***  Proved C14:  for_all(i___5 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(therecord), [i___5]) and element(fld_blocklengths(
          therecord), [i___5]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)
     using hypothesis H14.
***  Proved C15:  for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___7 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___7 and i___7 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(therecord), [
          i___6]), [i___7]) and element(element(fld_bitmaps(therecord), [i___6])
          , [i___7]) <= dns_types__byte__last))
     using hypothesis H15.
***  Proved C16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) 
          and fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
     using hypothesis H16.
***  Proved C17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__classtype__first <= fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) <= rr_type__classtype__last))
     using hypothesis H17.
***  Proved C18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= character__last)))
     using hypothesis H18.
***  Proved C19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___4 
          : integer, rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           <= character__last)))
     using hypothesis H19.
***  Proved C20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
     using hypothesis H20.
***  Proved C21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___5 
          : integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5])
           and element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
     using hypothesis H21.
***  Proved C22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
     using hypothesis H22.
***  Proved C23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___6 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 
          dns_types__byte__last)))
     using hypothesis H23.
***  Proved C24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___7 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
     using hypothesis H24.
***  Proved C25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___8 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= dns_types__byte__last))))
     using hypothesis H25.
***  Proved C26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first 
          <= i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [
          i___3]) and element(element(element(dns_table_type__nsecrecordkeys, [
          i___1]), [i___2]), [i___3]) <= character__last)))
     using hypothesis H26.
***  Proved C27:  loop__1__i + 1 >= rr_type__returnedrecordsindextype__first
     using hypothesis H27.
***  Proved C29:  loop__1__i + 1 >= rr_type__returnedrecordsindextype__first
     using hypothesis H27.
-S-  Applied substitution rule insertnsecre_rules(132).
     This was achieved by replacing all occurrences of 
          rr_type__returnedrecordsindextype__last by:
          64.
<S>  New H16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> unsigned_types__unsigned32__first <= 
          fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and 
          fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
<S>  New H17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> rr_type__classtype__first <= fld_class(fld_inherit(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) 
          and fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          rr_type__classtype__last))
<S>  New H18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 
          rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= character__last)))
<S>  New H19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___4 : integer, 
          rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           <= character__last)))
<S>  New H20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
<S>  New H21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___5 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5])
           and element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
<S>  New H22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> rr_type__nsec_record_type__blocknumbervalue__first 
          <= fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
<S>  New H23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 
          dns_types__byte__last)))
<S>  New H24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___7 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___7 and 
          i___7 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
<S>  New H25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___8 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___8 and 
          i___8 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___9 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___9 and i___9 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= dns_types__byte__last))))
<S>  New H26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= 64 -> for_all(i___3 : integer, 
          rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [
          i___3]) and element(element(element(dns_table_type__nsecrecordkeys, [
          i___1]), [i___2]), [i___3]) <= character__last)))
<S>  New H28:  loop__1__i <= 64
<S>  New H40:  not loop__1__i = 64
<S>  New C28:  loop__1__i <= 63
<S>  New C30:  loop__1__i <= 63
***  Proved C28:  loop__1__i <= 63
     using hypotheses H28 & H40.
***  Proved C30:  loop__1__i <= 63
     using hypotheses H28 & H40.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_insertnsecrecord_5.  @@@@@@@@@@
%%%  Simplified H1 on reading formula in, to give:
     %%%  H1:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(key, [i___1]) and element(key, [i___1]) 
          <= character__last)
%%%  Simplified H4 on reading formula in, to give:
     %%%  H4:  rr_type__classtype__first <= fld_class(fld_inherit(therecord))
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(fld_nextdomainname(therecord), [i___1]) 
          and element(fld_nextdomainname(therecord), [i___1]) <= 
          character__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___2 : integer, rr_type__linelengthindex__first <= 
          i___2 and i___2 <= rr_type__linelengthindex__last -> character__first 
          <= element(fld_recordlist(therecord), [i___2]) and element(
          fld_recordlist(therecord), [i___2]) <= character__last)
%%%  Simplified H10 on reading formula in, to give:
     %%%  H10:  for_all(i___3 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___3 and 
          i___3 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(therecord), [
          i___3]) and element(fld_recordtypes(therecord), [i___3]) <= 
          dns_types__query_type__last)
%%%  Simplified H13 on reading formula in, to give:
     %%%  H13:  for_all(i___4 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___4 and 
          i___4 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(therecord), [i___4]
          ) and element(fld_blocknumbers(therecord), [i___4]) <= 
          dns_types__byte__last)
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  for_all(i___5 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(therecord), [i___5]) and element(fld_blocklengths(
          therecord), [i___5]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)
%%%  Simplified H15 on reading formula in, to give:
     %%%  H15:  for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___7 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___7 and i___7 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(therecord), [
          i___6]), [i___7]) and element(element(fld_bitmaps(therecord), [i___6])
          , [i___7]) <= dns_types__byte__last))
%%%  Simplified H16 on reading formula in, to give:
     %%%  H16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) 
          and fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
%%%  Simplified H17 on reading formula in, to give:
     %%%  H17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__classtype__first <= fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) <= rr_type__classtype__last))
%%%  Simplified H18 on reading formula in, to give:
     %%%  H18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= character__last)))
%%%  Simplified H19 on reading formula in, to give:
     %%%  H19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___4 
          : integer, rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           <= character__last)))
%%%  Simplified H20 on reading formula in, to give:
     %%%  H20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
%%%  Simplified H21 on reading formula in, to give:
     %%%  H21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___5 
          : integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5])
           and element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
%%%  Simplified H22 on reading formula in, to give:
     %%%  H22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
%%%  Simplified H23 on reading formula in, to give:
     %%%  H23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___6 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 
          dns_types__byte__last)))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___7 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
%%%  Simplified H25 on reading formula in, to give:
     %%%  H25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___8 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= dns_types__byte__last))))
%%%  Simplified H26 on reading formula in, to give:
     %%%  H26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [
          i___3]) and element(element(element(dns_table_type__nsecrecordkeys, [
          i___1]), [i___2]), [i___3]) <= character__last)))
---  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).
***  Proved C1:  loop__1__i >= rr_type__returnedrecordsindextype__first
     using hypothesis H27.
***  Proved C2:  loop__1__i <= rr_type__returnedrecordsindextype__last
     using hypothesis H28.
***  Proved C3:  bucket >= rr_type__numbucketsindextype__first
     using hypothesis H31.
***  Proved C4:  bucket <= rr_type__numbucketsindextype__last
     using hypothesis H32.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_insertnsecrecord_6.  @@@@@@@@@@
%%%  Simplified H1 on reading formula in, to give:
     %%%  H1:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(key, [i___1]) and element(key, [i___1]) 
          <= character__last)
%%%  Simplified H4 on reading formula in, to give:
     %%%  H4:  rr_type__classtype__first <= fld_class(fld_inherit(therecord))
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(fld_nextdomainname(therecord), [i___1]) 
          and element(fld_nextdomainname(therecord), [i___1]) <= 
          character__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___2 : integer, rr_type__linelengthindex__first <= 
          i___2 and i___2 <= rr_type__linelengthindex__last -> character__first 
          <= element(fld_recordlist(therecord), [i___2]) and element(
          fld_recordlist(therecord), [i___2]) <= character__last)
%%%  Simplified H10 on reading formula in, to give:
     %%%  H10:  for_all(i___3 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___3 and 
          i___3 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(therecord), [
          i___3]) and element(fld_recordtypes(therecord), [i___3]) <= 
          dns_types__query_type__last)
%%%  Simplified H13 on reading formula in, to give:
     %%%  H13:  for_all(i___4 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___4 and 
          i___4 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(therecord), [i___4]
          ) and element(fld_blocknumbers(therecord), [i___4]) <= 
          dns_types__byte__last)
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  for_all(i___5 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(therecord), [i___5]) and element(fld_blocklengths(
          therecord), [i___5]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)
%%%  Simplified H15 on reading formula in, to give:
     %%%  H15:  for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___7 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___7 and i___7 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(therecord), [
          i___6]), [i___7]) and element(element(fld_bitmaps(therecord), [i___6])
          , [i___7]) <= dns_types__byte__last))
%%%  Simplified H16 on reading formula in, to give:
     %%%  H16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) 
          and fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
%%%  Simplified H17 on reading formula in, to give:
     %%%  H17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__classtype__first <= fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) <= rr_type__classtype__last))
%%%  Simplified H18 on reading formula in, to give:
     %%%  H18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= character__last)))
%%%  Simplified H19 on reading formula in, to give:
     %%%  H19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___4 
          : integer, rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           <= character__last)))
%%%  Simplified H20 on reading formula in, to give:
     %%%  H20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
%%%  Simplified H21 on reading formula in, to give:
     %%%  H21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___5 
          : integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5])
           and element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
%%%  Simplified H22 on reading formula in, to give:
     %%%  H22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
%%%  Simplified H23 on reading formula in, to give:
     %%%  H23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___6 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 
          dns_types__byte__last)))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___7 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
%%%  Simplified H25 on reading formula in, to give:
     %%%  H25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___8 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= dns_types__byte__last))))
%%%  Simplified H26 on reading formula in, to give:
     %%%  H26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [
          i___3]) and element(element(element(dns_table_type__nsecrecordkeys, [
          i___1]), [i___2]), [i___3]) <= character__last)))
---  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).
---  Hypothesis H33 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H28).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as 
          H32).
%%%  Simplified H38 on reading formula in, to give:
     %%%  H38:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(lower_key, [i___1]) and element(
          lower_key, [i___1]) <= character__last)
***  Proved C1:  loop__1__i >= rr_type__returnedrecordsindextype__first
     using hypothesis H27.
***  Proved C2:  loop__1__i <= rr_type__returnedrecordsindextype__last
     using hypothesis H28.
***  Proved C3:  bucket >= rr_type__numbucketsindextype__first
     using hypothesis H31.
***  Proved C4:  bucket <= rr_type__numbucketsindextype__last
     using hypothesis H32.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_insertnsecrecord_7.  @@@@@@@@@@
%%%  Simplified H1 on reading formula in, to give:
     %%%  H1:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(key, [i___1]) and element(key, [i___1]) 
          <= character__last)
%%%  Simplified H4 on reading formula in, to give:
     %%%  H4:  rr_type__classtype__first <= fld_class(fld_inherit(therecord))
%%%  Simplified H6 on reading formula in, to give:
     %%%  H6:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(fld_nextdomainname(therecord), [i___1]) 
          and element(fld_nextdomainname(therecord), [i___1]) <= 
          character__last)
%%%  Simplified H7 on reading formula in, to give:
     %%%  H7:  for_all(i___2 : integer, rr_type__linelengthindex__first <= 
          i___2 and i___2 <= rr_type__linelengthindex__last -> character__first 
          <= element(fld_recordlist(therecord), [i___2]) and element(
          fld_recordlist(therecord), [i___2]) <= character__last)
%%%  Simplified H10 on reading formula in, to give:
     %%%  H10:  for_all(i___3 : integer, 
          rr_type__nsec_record_type__recordtypearrayindex__first <= i___3 and 
          i___3 <= rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(therecord), [
          i___3]) and element(fld_recordtypes(therecord), [i___3]) <= 
          dns_types__query_type__last)
%%%  Simplified H13 on reading formula in, to give:
     %%%  H13:  for_all(i___4 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___4 and 
          i___4 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(therecord), [i___4]
          ) and element(fld_blocknumbers(therecord), [i___4]) <= 
          dns_types__byte__last)
%%%  Simplified H14 on reading formula in, to give:
     %%%  H14:  for_all(i___5 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___5 and 
          i___5 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(therecord), [i___5]) and element(fld_blocklengths(
          therecord), [i___5]) <= 
          rr_type__nsec_record_type__blocklengthvalue__last)
%%%  Simplified H15 on reading formula in, to give:
     %%%  H15:  for_all(i___6 : integer, 
          rr_type__nsec_record_type__blocknumberarrayindex__first <= i___6 and 
          i___6 <= rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          for_all(i___7 : integer, 
          rr_type__nsec_record_type__bitmapindex__first <= i___7 and i___7 <= 
          rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(therecord), [
          i___6]), [i___7]) and element(element(fld_bitmaps(therecord), [i___6])
          , [i___7]) <= dns_types__byte__last))
%%%  Simplified H16 on reading formula in, to give:
     %%%  H16:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          unsigned_types__unsigned32__first <= fld_ttlinseconds(fld_inherit(
          element(element(dns_table_type__nsecrecordtable, [i___1]), [i___2]))) 
          and fld_ttlinseconds(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) <= 
          unsigned_types__unsigned32__last))
%%%  Simplified H17 on reading formula in, to give:
     %%%  H17:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__classtype__first <= fld_class(fld_inherit(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2]))) and fld_class(
          fld_inherit(element(element(dns_table_type__nsecrecordtable, [i___1])
          , [i___2]))) <= rr_type__classtype__last))
%%%  Simplified H18 on reading formula in, to give:
     %%%  H18:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          fld_nextdomainname(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___3]) and element(fld_nextdomainname(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___3])
           <= character__last)))
%%%  Simplified H19 on reading formula in, to give:
     %%%  H19:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___4 
          : integer, rr_type__linelengthindex__first <= i___4 and i___4 <= 
          rr_type__linelengthindex__last -> character__first <= element(
          fld_recordlist(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___4]) and element(fld_recordlist(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___4])
           <= character__last)))
%%%  Simplified H20 on reading formula in, to give:
     %%%  H20:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__recordtypeindexvalue__first <= 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) and 
          fld_numberofrecordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__recordtypeindexvalue__last))
%%%  Simplified H21 on reading formula in, to give:
     %%%  H21:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___5 
          : integer, rr_type__nsec_record_type__recordtypearrayindex__first <= 
          i___5 and i___5 <= 
          rr_type__nsec_record_type__recordtypearrayindex__last -> 
          dns_types__query_type__first <= element(fld_recordtypes(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5])
           and element(fld_recordtypes(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___5]) <= 
          dns_types__query_type__last)))
%%%  Simplified H22 on reading formula in, to give:
     %%%  H22:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> 
          rr_type__nsec_record_type__blocknumbervalue__first <= 
          fld_numberofblocks(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])) and fld_numberofblocks(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])) <= 
          rr_type__nsec_record_type__blocknumbervalue__last))
%%%  Simplified H23 on reading formula in, to give:
     %%%  H23:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___6 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___6 and i___6 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          dns_types__byte__first <= element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) and 
          element(fld_blocknumbers(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___6]) <= 
          dns_types__byte__last)))
%%%  Simplified H24 on reading formula in, to give:
     %%%  H24:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___7 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___7 and i___7 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> 
          rr_type__nsec_record_type__blocklengthvalue__first <= element(
          fld_blocklengths(element(element(dns_table_type__nsecrecordtable, [
          i___1]), [i___2])), [i___7]) and element(fld_blocklengths(element(
          element(dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___7])
           <= rr_type__nsec_record_type__blocklengthvalue__last)))
%%%  Simplified H25 on reading formula in, to give:
     %%%  H25:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___8 
          : integer, rr_type__nsec_record_type__blocknumberarrayindex__first <= 
          i___8 and i___8 <= 
          rr_type__nsec_record_type__blocknumberarrayindex__last -> for_all(
          i___9 : integer, rr_type__nsec_record_type__bitmapindex__first <= 
          i___9 and i___9 <= rr_type__nsec_record_type__bitmapindex__last -> 
          dns_types__byte__first <= element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) and element(element(fld_bitmaps(element(element(
          dns_table_type__nsecrecordtable, [i___1]), [i___2])), [i___8]), [
          i___9]) <= dns_types__byte__last))))
%%%  Simplified H26 on reading formula in, to give:
     %%%  H26:  for_all(i___1 : integer, rr_type__numbucketsindextype__first <= 
          i___1 and i___1 <= rr_type__numbucketsindextype__last -> for_all(
          i___2 : integer, rr_type__returnedrecordsindextype__first <= i___2 
          and i___2 <= rr_type__returnedrecordsindextype__last -> for_all(i___3 
          : integer, rr_type__wirestringtypeindex__first <= i___3 and i___3 <= 
          rr_type__wirestringtypeindex__last -> character__first <= element(
          element(element(dns_table_type__nsecrecordkeys, [i___1]), [i___2]), [
          i___3]) and element(element(element(dns_table_type__nsecrecordkeys, [
          i___1]), [i___2]), [i___3]) <= character__last)))
---  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).
---  Hypothesis H33 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H34 has been replaced by "true".  (It is already present, as 
          H28).
---  Hypothesis H35 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H36 has been replaced by "true".  (It is already present, as 
          H32).
%%%  Simplified H38 on reading formula in, to give:
     %%%  H38:  for_all(i___1 : integer, rr_type__wirestringtypeindex__first <= 
          i___1 and i___1 <= rr_type__wirestringtypeindex__last -> 
          character__first <= element(lower_key, [i___1]) and element(
          lower_key, [i___1]) <= character__last)
---  Hypothesis H39 has been replaced by "true".  (It is already present, as 
          H27).
---  Hypothesis H40 has been replaced by "true".  (It is already present, as 
          H28).
---  Hypothesis H41 has been replaced by "true".  (It is already present, as 
          H31).
---  Hypothesis H42 has been replaced by "true".  (It is already present, as 
          H32).
***  Proved C1:  loop__1__i >= rr_type__returnedrecordsindextype__first
     using hypothesis H27.
***  Proved C2:  loop__1__i <= rr_type__returnedrecordsindextype__last
     using hypothesis H28.
***  Proved C3:  bucket >= rr_type__numbucketsindextype__first
     using hypothesis H31.
***  Proved C4:  bucket <= rr_type__numbucketsindextype__last
     using hypothesis H32.
***  PROVED VC.


@@@@@@@@@@  VC: procedure_insertnsecrecord_8.  @@@@@@@@@@
***  Proved C1:  true
***  PROVED VC.


@@@@@@@@@@  VC: procedure_insertnsecrecord_9.  @@@@@@@@@@
***  Proved C1:  true
***  PROVED VC.


@@@@@@@@@@  VC: procedure_insertnsecrecord_10.  @@@@@@@@@@
***  Proved C1:  true
***  PROVED VC.


@@@@@@@@@@  VC: procedure_insertnsecrecord_11.  @@@@@@@@@@
***  Proved C1:  true
***  PROVED VC.


@@@@@@@@@@  VC: procedure_insertnsecrecord_12.  @@@@@@@@@@
***  Proved C1:  true
***  PROVED VC.


@@@@@@@@@@  VC: procedure_insertnsecrecord_13.  @@@@@@@@@@
***  Proved C1:  true
***  PROVED VC.

