           /*********************************************************/
                           /*Proof Rule Declarations*/
                             /*Examiner GPL Edition*/

           /*********************************************************/


                  /*procedure Zone_File_Parser.FillBlockInfo*/


rule_family fillblockinf_rules:
     X      requires [X:any] &
     X <= Y requires [X:ire, Y:ire] &
     X >= Y requires [X:ire, Y:ire].

fillblockinf_rules(1): rr_type__maxlinelength may_be_replaced_by 256.
fillblockinf_rules(2): 
     rr_type__nsec_record_type__maxnumberofrecordtypes may_be_replaced_by 32.
fillblockinf_rules(3): 
     rr_type__nsec_record_type__maxnumberofblocks may_be_replaced_by 32.
fillblockinf_rules(4): integer__size >= 0 may_be_deduced.
fillblockinf_rules(5): integer__first may_be_replaced_by -2147483648.
fillblockinf_rules(6): integer__last may_be_replaced_by 2147483647.
fillblockinf_rules(7): integer__base__first may_be_replaced_by -2147483648.
fillblockinf_rules(8): integer__base__last may_be_replaced_by 2147483647.
fillblockinf_rules(9): character__size >= 0 may_be_deduced.
fillblockinf_rules(10): character__first may_be_replaced_by 0.
fillblockinf_rules(11): character__last may_be_replaced_by 255.
fillblockinf_rules(12): character__base__first may_be_replaced_by 0.
fillblockinf_rules(13): character__base__last may_be_replaced_by 255.
fillblockinf_rules(14): natural__size >= 0 may_be_deduced.
fillblockinf_rules(15): natural__first may_be_replaced_by 0.
fillblockinf_rules(16): natural__last may_be_replaced_by 2147483647.
fillblockinf_rules(17): natural__base__first may_be_replaced_by -2147483648.
fillblockinf_rules(18): natural__base__last may_be_replaced_by 2147483647.
fillblockinf_rules(19): positive__size >= 0 may_be_deduced.
fillblockinf_rules(20): positive__first may_be_replaced_by 1.
fillblockinf_rules(21): positive__last may_be_replaced_by 2147483647.
fillblockinf_rules(22): positive__base__first may_be_replaced_by -2147483648.
fillblockinf_rules(23): positive__base__last may_be_replaced_by 2147483647.
fillblockinf_rules(24): dns_types__byte__size >= 0 may_be_deduced.
fillblockinf_rules(25): dns_types__byte__size may_be_replaced_by 8.
fillblockinf_rules(26): dns_types__byte__first may_be_replaced_by 0.
fillblockinf_rules(27): dns_types__byte__last may_be_replaced_by 255.
fillblockinf_rules(28): dns_types__byte__base__first may_be_replaced_by 0.
fillblockinf_rules(29): dns_types__byte__base__last may_be_replaced_by 255.
fillblockinf_rules(30): dns_types__byte__modulus may_be_replaced_by 256.
fillblockinf_rules(31): dns_types__query_type__size >= 0 may_be_deduced.
fillblockinf_rules(32): dns_types__query_type__size may_be_replaced_by 16.
fillblockinf_rules(33): dns_types__query_type__first may_be_replaced_by dns_types__a.
fillblockinf_rules(34): dns_types__query_type__last may_be_replaced_by dns_types__unimplemented.
fillblockinf_rules(35): dns_types__query_type__base__first may_be_replaced_by dns_types__a.
fillblockinf_rules(36): dns_types__query_type__base__last may_be_replaced_by dns_types__unimplemented.
fillblockinf_rules(37): dns_types__query_type__pos(
     dns_types__query_type__first) may_be_replaced_by 0.
fillblockinf_rules(38): dns_types__query_type__pos(dns_types__a) may_be_replaced_by 0.
fillblockinf_rules(39): dns_types__query_type__val(0) may_be_replaced_by 
     dns_types__a.
fillblockinf_rules(40): dns_types__query_type__pos(dns_types__ns) may_be_replaced_by 1.
fillblockinf_rules(41): dns_types__query_type__val(1) may_be_replaced_by 
     dns_types__ns.
fillblockinf_rules(42): dns_types__query_type__pos(
     dns_types__cname) may_be_replaced_by 2.
fillblockinf_rules(43): dns_types__query_type__val(2) may_be_replaced_by 
     dns_types__cname.
fillblockinf_rules(44): dns_types__query_type__pos(dns_types__soa) may_be_replaced_by 3.
fillblockinf_rules(45): dns_types__query_type__val(3) may_be_replaced_by 
     dns_types__soa.
fillblockinf_rules(46): dns_types__query_type__pos(dns_types__wks) may_be_replaced_by 4.
fillblockinf_rules(47): dns_types__query_type__val(4) may_be_replaced_by 
     dns_types__wks.
fillblockinf_rules(48): dns_types__query_type__pos(dns_types__ptr) may_be_replaced_by 5.
fillblockinf_rules(49): dns_types__query_type__val(5) may_be_replaced_by 
     dns_types__ptr.
fillblockinf_rules(50): dns_types__query_type__pos(dns_types__mx) may_be_replaced_by 6.
fillblockinf_rules(51): dns_types__query_type__val(6) may_be_replaced_by 
     dns_types__mx.
fillblockinf_rules(52): dns_types__query_type__pos(
     dns_types__aaaa) may_be_replaced_by 7.
fillblockinf_rules(53): dns_types__query_type__val(7) may_be_replaced_by 
     dns_types__aaaa.
fillblockinf_rules(54): dns_types__query_type__pos(dns_types__srv) may_be_replaced_by 8.
fillblockinf_rules(55): dns_types__query_type__val(8) may_be_replaced_by 
     dns_types__srv.
fillblockinf_rules(56): dns_types__query_type__pos(dns_types__a6) may_be_replaced_by 9.
fillblockinf_rules(57): dns_types__query_type__val(9) may_be_replaced_by 
     dns_types__a6.
fillblockinf_rules(58): dns_types__query_type__pos(dns_types__opt) may_be_replaced_by 10.
fillblockinf_rules(59): dns_types__query_type__val(10) may_be_replaced_by 
     dns_types__opt.
fillblockinf_rules(60): dns_types__query_type__pos(dns_types__ds) may_be_replaced_by 11.
fillblockinf_rules(61): dns_types__query_type__val(11) may_be_replaced_by 
     dns_types__ds.
fillblockinf_rules(62): dns_types__query_type__pos(
     dns_types__rrsig) may_be_replaced_by 12.
fillblockinf_rules(63): dns_types__query_type__val(12) may_be_replaced_by 
     dns_types__rrsig.
fillblockinf_rules(64): dns_types__query_type__pos(
     dns_types__nsec) may_be_replaced_by 13.
fillblockinf_rules(65): dns_types__query_type__val(13) may_be_replaced_by 
     dns_types__nsec.
fillblockinf_rules(66): dns_types__query_type__pos(
     dns_types__dnskey) may_be_replaced_by 14.
fillblockinf_rules(67): dns_types__query_type__val(14) may_be_replaced_by 
     dns_types__dnskey.
fillblockinf_rules(68): dns_types__query_type__pos(dns_types__any) may_be_replaced_by 15.
fillblockinf_rules(69): dns_types__query_type__val(15) may_be_replaced_by 
     dns_types__any.
fillblockinf_rules(70): dns_types__query_type__pos(dns_types__caa) may_be_replaced_by 16.
fillblockinf_rules(71): dns_types__query_type__val(16) may_be_replaced_by 
     dns_types__caa.
fillblockinf_rules(72): dns_types__query_type__pos(
     dns_types__error) may_be_replaced_by 17.
fillblockinf_rules(73): dns_types__query_type__val(17) may_be_replaced_by 
     dns_types__error.
fillblockinf_rules(74): dns_types__query_type__pos(
     dns_types__unimplemented) may_be_replaced_by 18.
fillblockinf_rules(75): dns_types__query_type__val(18) may_be_replaced_by 
     dns_types__unimplemented.
fillblockinf_rules(76): dns_types__query_type__pos(
     dns_types__query_type__last) may_be_replaced_by 18.
fillblockinf_rules(77): dns_types__query_type__pos(succ(X)) may_be_replaced_by 
     dns_types__query_type__pos(X) + 1
     if [X <=dns_types__unimplemented, X <> 
     dns_types__unimplemented].
fillblockinf_rules(78): dns_types__query_type__pos(pred(X)) may_be_replaced_by 
     dns_types__query_type__pos(X) - 1
     if [X >=dns_types__a, X <> dns_types__a].
fillblockinf_rules(79): dns_types__query_type__pos(X) >= 0 may_be_deduced_from
     [dns_types__a <= X, X <= dns_types__unimplemented].
fillblockinf_rules(80): dns_types__query_type__pos(X) <= 18 may_be_deduced_from
     [dns_types__a <= X, X <= dns_types__unimplemented].
fillblockinf_rules(81): dns_types__query_type__val(X) >= 
     dns_types__a may_be_deduced_from
     [0 <= X, X <= 18].
fillblockinf_rules(82): dns_types__query_type__val(X) <= 
     dns_types__unimplemented may_be_deduced_from
     [0 <= X, X <= 18].
fillblockinf_rules(83): succ(dns_types__query_type__val(X)) may_be_replaced_by 
     dns_types__query_type__val(X+1)
     if [0 <= X, X < 18].
fillblockinf_rules(84): pred(dns_types__query_type__val(X)) may_be_replaced_by 
     dns_types__query_type__val(X-1)
     if [0 < X, X <= 18].
fillblockinf_rules(85): dns_types__query_type__pos(
     dns_types__query_type__val(X)) may_be_replaced_by X
     if [0 <= X, X <= 18].
fillblockinf_rules(86): dns_types__query_type__val(
     dns_types__query_type__pos(X)) may_be_replaced_by X
     if [dns_types__a <= X, X <= dns_types__unimplemented].
fillblockinf_rules(87): dns_types__query_type__pos(X) <= 
     dns_types__query_type__pos(Y) & X <= Y are_interchangeable 
     if [dns_types__a <= X, X <= dns_types__unimplemented, 
     dns_types__a <= Y, Y <= dns_types__unimplemented].
fillblockinf_rules(88): dns_types__query_type__val(X) <= 
     dns_types__query_type__val(Y) & X <= Y are_interchangeable 
     if [0 <= X, X <= 18, 0 <= Y, Y <= 18].
fillblockinf_rules(89): unsigned_types__unsigned8__size >= 0 may_be_deduced.
fillblockinf_rules(90): unsigned_types__unsigned8__first may_be_replaced_by 0.
fillblockinf_rules(91): unsigned_types__unsigned8__last may_be_replaced_by 255.
fillblockinf_rules(92): unsigned_types__unsigned8__base__first may_be_replaced_by 0.
fillblockinf_rules(93): unsigned_types__unsigned8__base__last may_be_replaced_by 255.
fillblockinf_rules(94): unsigned_types__unsigned8__modulus may_be_replaced_by 256.
fillblockinf_rules(95): unsigned_types__unsigned16__size >= 0 may_be_deduced.
fillblockinf_rules(96): unsigned_types__unsigned16__first may_be_replaced_by 0.
fillblockinf_rules(97): unsigned_types__unsigned16__last may_be_replaced_by 65535.
fillblockinf_rules(98): unsigned_types__unsigned16__base__first may_be_replaced_by 0.
fillblockinf_rules(99): unsigned_types__unsigned16__base__last may_be_replaced_by 65535.
fillblockinf_rules(100): unsigned_types__unsigned16__modulus may_be_replaced_by 65536.
fillblockinf_rules(101): unsigned_types__unsigned32__size >= 0 may_be_deduced.
fillblockinf_rules(102): unsigned_types__unsigned32__first may_be_replaced_by 0.
fillblockinf_rules(103): unsigned_types__unsigned32__last may_be_replaced_by 4294967295.
fillblockinf_rules(104): unsigned_types__unsigned32__base__first may_be_replaced_by 0.
fillblockinf_rules(105): unsigned_types__unsigned32__base__last may_be_replaced_by 4294967295.
fillblockinf_rules(106): unsigned_types__unsigned32__modulus may_be_replaced_by 4294967296.
fillblockinf_rules(107): rr_type__rritemtype__size >= 0 may_be_deduced.
fillblockinf_rules(108): rr_type__rritemtype__first may_be_replaced_by rr_type__domainnameortimespec.
fillblockinf_rules(109): rr_type__rritemtype__last may_be_replaced_by rr_type__other.
fillblockinf_rules(110): rr_type__rritemtype__base__first may_be_replaced_by rr_type__domainnameortimespec.
fillblockinf_rules(111): rr_type__rritemtype__base__last may_be_replaced_by rr_type__other.
fillblockinf_rules(112): rr_type__rritemtype__pos(
     rr_type__rritemtype__first) may_be_replaced_by 0.
fillblockinf_rules(113): rr_type__rritemtype__pos(
     rr_type__domainnameortimespec) may_be_replaced_by 0.
fillblockinf_rules(114): rr_type__rritemtype__val(0) may_be_replaced_by 
     rr_type__domainnameortimespec.
fillblockinf_rules(115): rr_type__rritemtype__pos(rr_type__number) may_be_replaced_by 1.
fillblockinf_rules(116): rr_type__rritemtype__val(1) may_be_replaced_by 
     rr_type__number.
fillblockinf_rules(117): rr_type__rritemtype__pos(rr_type__class) may_be_replaced_by 2.
fillblockinf_rules(118): rr_type__rritemtype__val(2) may_be_replaced_by 
     rr_type__class.
fillblockinf_rules(119): rr_type__rritemtype__pos(
     rr_type__recordindicator) may_be_replaced_by 3.
fillblockinf_rules(120): rr_type__rritemtype__val(3) may_be_replaced_by 
     rr_type__recordindicator.
fillblockinf_rules(121): rr_type__rritemtype__pos(rr_type__ipv4) may_be_replaced_by 4.
fillblockinf_rules(122): rr_type__rritemtype__val(4) may_be_replaced_by 
     rr_type__ipv4.
fillblockinf_rules(123): rr_type__rritemtype__pos(rr_type__ipv6) may_be_replaced_by 5.
fillblockinf_rules(124): rr_type__rritemtype__val(5) may_be_replaced_by 
     rr_type__ipv6.
fillblockinf_rules(125): rr_type__rritemtype__pos(rr_type__lparen) may_be_replaced_by 6.
fillblockinf_rules(126): rr_type__rritemtype__val(6) may_be_replaced_by 
     rr_type__lparen.
fillblockinf_rules(127): rr_type__rritemtype__pos(rr_type__rparen) may_be_replaced_by 7.
fillblockinf_rules(128): rr_type__rritemtype__val(7) may_be_replaced_by 
     rr_type__rparen.
fillblockinf_rules(129): rr_type__rritemtype__pos(
     rr_type__control) may_be_replaced_by 8.
fillblockinf_rules(130): rr_type__rritemtype__val(8) may_be_replaced_by 
     rr_type__control.
fillblockinf_rules(131): rr_type__rritemtype__pos(
     rr_type__comment) may_be_replaced_by 9.
fillblockinf_rules(132): rr_type__rritemtype__val(9) may_be_replaced_by 
     rr_type__comment.
fillblockinf_rules(133): rr_type__rritemtype__pos(rr_type__other) may_be_replaced_by 10.
fillblockinf_rules(134): rr_type__rritemtype__val(10) may_be_replaced_by 
     rr_type__other.
fillblockinf_rules(135): rr_type__rritemtype__pos(
     rr_type__rritemtype__last) may_be_replaced_by 10.
fillblockinf_rules(136): rr_type__rritemtype__pos(succ(X)) may_be_replaced_by 
     rr_type__rritemtype__pos(X) + 1
     if [X <=rr_type__other, X <> rr_type__other].
fillblockinf_rules(137): rr_type__rritemtype__pos(pred(X)) may_be_replaced_by 
     rr_type__rritemtype__pos(X) - 1
     if [X >=rr_type__domainnameortimespec, X <> 
     rr_type__domainnameortimespec].
fillblockinf_rules(138): rr_type__rritemtype__pos(X) >= 0 may_be_deduced_from
     [rr_type__domainnameortimespec <= X, X <= rr_type__other].
fillblockinf_rules(139): rr_type__rritemtype__pos(X) <= 10 may_be_deduced_from
     [rr_type__domainnameortimespec <= X, X <= rr_type__other].
fillblockinf_rules(140): rr_type__rritemtype__val(X) >= 
     rr_type__domainnameortimespec may_be_deduced_from
     [0 <= X, X <= 10].
fillblockinf_rules(141): rr_type__rritemtype__val(X) <= 
     rr_type__other may_be_deduced_from
     [0 <= X, X <= 10].
fillblockinf_rules(142): succ(rr_type__rritemtype__val(X)) may_be_replaced_by 
     rr_type__rritemtype__val(X+1)
     if [0 <= X, X < 10].
fillblockinf_rules(143): pred(rr_type__rritemtype__val(X)) may_be_replaced_by 
     rr_type__rritemtype__val(X-1)
     if [0 < X, X <= 10].
fillblockinf_rules(144): rr_type__rritemtype__pos(
     rr_type__rritemtype__val(X)) may_be_replaced_by X
     if [0 <= X, X <= 10].
fillblockinf_rules(145): rr_type__rritemtype__val(
     rr_type__rritemtype__pos(X)) may_be_replaced_by X
     if [rr_type__domainnameortimespec <= X, X <= rr_type__other].
fillblockinf_rules(146): rr_type__rritemtype__pos(X) <= 
     rr_type__rritemtype__pos(Y) & X <= Y are_interchangeable 
     if [rr_type__domainnameortimespec <= X, X <= rr_type__other, 
     rr_type__domainnameortimespec <= Y, Y <= rr_type__other].
fillblockinf_rules(147): rr_type__rritemtype__val(X) <= 
     rr_type__rritemtype__val(Y) & X <= Y are_interchangeable 
     if [0 <= X, X <= 10, 0 <= Y, Y <= 10].
fillblockinf_rules(148): rr_type__linelengthindex__size >= 0 may_be_deduced.
fillblockinf_rules(149): rr_type__linelengthindex__first may_be_replaced_by 1.
fillblockinf_rules(150): rr_type__linelengthindex__last may_be_replaced_by 256.
fillblockinf_rules(151): rr_type__linelengthindex__base__first may_be_replaced_by -2147483648.
fillblockinf_rules(152): rr_type__linelengthindex__base__last may_be_replaced_by 2147483647.
fillblockinf_rules(153): 
     rr_type__nsec_record_type__recordtypeindexvalue__size >= 0 may_be_deduced.
fillblockinf_rules(154): 
     rr_type__nsec_record_type__recordtypeindexvalue__first may_be_replaced_by 0.
fillblockinf_rules(155): 
     rr_type__nsec_record_type__recordtypeindexvalue__last may_be_replaced_by 32.
fillblockinf_rules(156): 
     rr_type__nsec_record_type__recordtypeindexvalue__base__first may_be_replaced_by -2147483648.
fillblockinf_rules(157): 
     rr_type__nsec_record_type__recordtypeindexvalue__base__last may_be_replaced_by 2147483647.
fillblockinf_rules(158): 
     rr_type__nsec_record_type__recordtypearrayindex__size >= 0 may_be_deduced.
fillblockinf_rules(159): 
     rr_type__nsec_record_type__recordtypearrayindex__first may_be_replaced_by 1.
fillblockinf_rules(160): 
     rr_type__nsec_record_type__recordtypearrayindex__last may_be_replaced_by 32.
fillblockinf_rules(161): 
     rr_type__nsec_record_type__recordtypearrayindex__base__first may_be_replaced_by -2147483648.
fillblockinf_rules(162): 
     rr_type__nsec_record_type__recordtypearrayindex__base__last may_be_replaced_by 2147483647.
fillblockinf_rules(163): 
     rr_type__nsec_record_type__blocknumbervalue__size >= 0 may_be_deduced.
fillblockinf_rules(164): 
     rr_type__nsec_record_type__blocknumbervalue__first may_be_replaced_by 0.
fillblockinf_rules(165): 
     rr_type__nsec_record_type__blocknumbervalue__last may_be_replaced_by 32.
fillblockinf_rules(166): 
     rr_type__nsec_record_type__blocknumbervalue__base__first may_be_replaced_by -2147483648.
fillblockinf_rules(167): 
     rr_type__nsec_record_type__blocknumbervalue__base__last may_be_replaced_by 2147483647.
fillblockinf_rules(168): 
     rr_type__nsec_record_type__blocknumberarrayindex__size >= 0 may_be_deduced.
fillblockinf_rules(169): 
     rr_type__nsec_record_type__blocknumberarrayindex__first may_be_replaced_by 1.
fillblockinf_rules(170): 
     rr_type__nsec_record_type__blocknumberarrayindex__last may_be_replaced_by 32.
fillblockinf_rules(171): 
     rr_type__nsec_record_type__blocknumberarrayindex__base__first may_be_replaced_by -2147483648.
fillblockinf_rules(172): 
     rr_type__nsec_record_type__blocknumberarrayindex__base__last may_be_replaced_by 2147483647.
fillblockinf_rules(173): 
     rr_type__nsec_record_type__blocklengthvalue__size >= 0 may_be_deduced.
fillblockinf_rules(174): 
     rr_type__nsec_record_type__blocklengthvalue__first may_be_replaced_by 1.
fillblockinf_rules(175): 
     rr_type__nsec_record_type__blocklengthvalue__last may_be_replaced_by 32.
fillblockinf_rules(176): 
     rr_type__nsec_record_type__blocklengthvalue__base__first may_be_replaced_by -2147483648.
fillblockinf_rules(177): 
     rr_type__nsec_record_type__blocklengthvalue__base__last may_be_replaced_by 2147483647.
fillblockinf_rules(178): rr_type__nsec_record_type__bitmapindex__size >= 0 may_be_deduced.
fillblockinf_rules(179): rr_type__nsec_record_type__bitmapindex__first may_be_replaced_by 1.
fillblockinf_rules(180): rr_type__nsec_record_type__bitmapindex__last may_be_replaced_by 32.
fillblockinf_rules(181): rr_type__nsec_record_type__bitmapindex__base__first may_be_replaced_by -2147483648.
fillblockinf_rules(182): rr_type__nsec_record_type__bitmapindex__base__last may_be_replaced_by 2147483647.
fillblockinf_rules(183): blockmapindex__size >= 0 may_be_deduced.
fillblockinf_rules(184): blockmapindex__first may_be_replaced_by 0.
fillblockinf_rules(185): blockmapindex__last may_be_replaced_by 255.
fillblockinf_rules(186): blockmapindex__base__first may_be_replaced_by 0.
fillblockinf_rules(187): blockmapindex__base__last may_be_replaced_by 255.
fillblockinf_rules(188): blockmapindex__modulus may_be_replaced_by 256.
