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

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


                  /*function Parser_Utilities.getRecordType*/


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

getrecordtyp_rules(1): integer__size >= 0 may_be_deduced.
getrecordtyp_rules(2): integer__first may_be_replaced_by -2147483648.
getrecordtyp_rules(3): integer__last may_be_replaced_by 2147483647.
getrecordtyp_rules(4): integer__base__first may_be_replaced_by -2147483648.
getrecordtyp_rules(5): integer__base__last may_be_replaced_by 2147483647.
getrecordtyp_rules(6): character__size >= 0 may_be_deduced.
getrecordtyp_rules(7): character__first may_be_replaced_by 0.
getrecordtyp_rules(8): character__last may_be_replaced_by 255.
getrecordtyp_rules(9): character__base__first may_be_replaced_by 0.
getrecordtyp_rules(10): character__base__last may_be_replaced_by 255.
getrecordtyp_rules(11): positive__size >= 0 may_be_deduced.
getrecordtyp_rules(12): positive__first may_be_replaced_by 1.
getrecordtyp_rules(13): positive__last may_be_replaced_by 2147483647.
getrecordtyp_rules(14): positive__base__first may_be_replaced_by -2147483648.
getrecordtyp_rules(15): positive__base__last may_be_replaced_by 2147483647.
getrecordtyp_rules(16): dns_types__query_type__size >= 0 may_be_deduced.
getrecordtyp_rules(17): dns_types__query_type__size may_be_replaced_by 16.
getrecordtyp_rules(18): dns_types__query_type__first may_be_replaced_by dns_types__a.
getrecordtyp_rules(19): dns_types__query_type__last may_be_replaced_by dns_types__unimplemented.
getrecordtyp_rules(20): dns_types__query_type__base__first may_be_replaced_by dns_types__a.
getrecordtyp_rules(21): dns_types__query_type__base__last may_be_replaced_by dns_types__unimplemented.
getrecordtyp_rules(22): dns_types__query_type__pos(
     dns_types__query_type__first) may_be_replaced_by 0.
getrecordtyp_rules(23): dns_types__query_type__pos(dns_types__a) may_be_replaced_by 0.
getrecordtyp_rules(24): dns_types__query_type__val(0) may_be_replaced_by 
     dns_types__a.
getrecordtyp_rules(25): dns_types__query_type__pos(dns_types__ns) may_be_replaced_by 1.
getrecordtyp_rules(26): dns_types__query_type__val(1) may_be_replaced_by 
     dns_types__ns.
getrecordtyp_rules(27): dns_types__query_type__pos(
     dns_types__cname) may_be_replaced_by 2.
getrecordtyp_rules(28): dns_types__query_type__val(2) may_be_replaced_by 
     dns_types__cname.
getrecordtyp_rules(29): dns_types__query_type__pos(dns_types__soa) may_be_replaced_by 3.
getrecordtyp_rules(30): dns_types__query_type__val(3) may_be_replaced_by 
     dns_types__soa.
getrecordtyp_rules(31): dns_types__query_type__pos(dns_types__wks) may_be_replaced_by 4.
getrecordtyp_rules(32): dns_types__query_type__val(4) may_be_replaced_by 
     dns_types__wks.
getrecordtyp_rules(33): dns_types__query_type__pos(dns_types__ptr) may_be_replaced_by 5.
getrecordtyp_rules(34): dns_types__query_type__val(5) may_be_replaced_by 
     dns_types__ptr.
getrecordtyp_rules(35): dns_types__query_type__pos(dns_types__mx) may_be_replaced_by 6.
getrecordtyp_rules(36): dns_types__query_type__val(6) may_be_replaced_by 
     dns_types__mx.
getrecordtyp_rules(37): dns_types__query_type__pos(
     dns_types__aaaa) may_be_replaced_by 7.
getrecordtyp_rules(38): dns_types__query_type__val(7) may_be_replaced_by 
     dns_types__aaaa.
getrecordtyp_rules(39): dns_types__query_type__pos(dns_types__srv) may_be_replaced_by 8.
getrecordtyp_rules(40): dns_types__query_type__val(8) may_be_replaced_by 
     dns_types__srv.
getrecordtyp_rules(41): dns_types__query_type__pos(dns_types__a6) may_be_replaced_by 9.
getrecordtyp_rules(42): dns_types__query_type__val(9) may_be_replaced_by 
     dns_types__a6.
getrecordtyp_rules(43): dns_types__query_type__pos(dns_types__opt) may_be_replaced_by 10.
getrecordtyp_rules(44): dns_types__query_type__val(10) may_be_replaced_by 
     dns_types__opt.
getrecordtyp_rules(45): dns_types__query_type__pos(dns_types__ds) may_be_replaced_by 11.
getrecordtyp_rules(46): dns_types__query_type__val(11) may_be_replaced_by 
     dns_types__ds.
getrecordtyp_rules(47): dns_types__query_type__pos(
     dns_types__rrsig) may_be_replaced_by 12.
getrecordtyp_rules(48): dns_types__query_type__val(12) may_be_replaced_by 
     dns_types__rrsig.
getrecordtyp_rules(49): dns_types__query_type__pos(
     dns_types__nsec) may_be_replaced_by 13.
getrecordtyp_rules(50): dns_types__query_type__val(13) may_be_replaced_by 
     dns_types__nsec.
getrecordtyp_rules(51): dns_types__query_type__pos(
     dns_types__dnskey) may_be_replaced_by 14.
getrecordtyp_rules(52): dns_types__query_type__val(14) may_be_replaced_by 
     dns_types__dnskey.
getrecordtyp_rules(53): dns_types__query_type__pos(dns_types__any) may_be_replaced_by 15.
getrecordtyp_rules(54): dns_types__query_type__val(15) may_be_replaced_by 
     dns_types__any.
getrecordtyp_rules(55): dns_types__query_type__pos(dns_types__caa) may_be_replaced_by 16.
getrecordtyp_rules(56): dns_types__query_type__val(16) may_be_replaced_by 
     dns_types__caa.
getrecordtyp_rules(57): dns_types__query_type__pos(
     dns_types__error) may_be_replaced_by 17.
getrecordtyp_rules(58): dns_types__query_type__val(17) may_be_replaced_by 
     dns_types__error.
getrecordtyp_rules(59): dns_types__query_type__pos(
     dns_types__unimplemented) may_be_replaced_by 18.
getrecordtyp_rules(60): dns_types__query_type__val(18) may_be_replaced_by 
     dns_types__unimplemented.
getrecordtyp_rules(61): dns_types__query_type__pos(
     dns_types__query_type__last) may_be_replaced_by 18.
getrecordtyp_rules(62): 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].
getrecordtyp_rules(63): 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].
getrecordtyp_rules(64): dns_types__query_type__pos(X) >= 0 may_be_deduced_from
     [dns_types__a <= X, X <= dns_types__unimplemented].
getrecordtyp_rules(65): dns_types__query_type__pos(X) <= 18 may_be_deduced_from
     [dns_types__a <= X, X <= dns_types__unimplemented].
getrecordtyp_rules(66): dns_types__query_type__val(X) >= 
     dns_types__a may_be_deduced_from
     [0 <= X, X <= 18].
getrecordtyp_rules(67): dns_types__query_type__val(X) <= 
     dns_types__unimplemented may_be_deduced_from
     [0 <= X, X <= 18].
getrecordtyp_rules(68): succ(dns_types__query_type__val(X)) may_be_replaced_by 
     dns_types__query_type__val(X+1)
     if [0 <= X, X < 18].
getrecordtyp_rules(69): pred(dns_types__query_type__val(X)) may_be_replaced_by 
     dns_types__query_type__val(X-1)
     if [0 < X, X <= 18].
getrecordtyp_rules(70): dns_types__query_type__pos(
     dns_types__query_type__val(X)) may_be_replaced_by X
     if [0 <= X, X <= 18].
getrecordtyp_rules(71): 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].
getrecordtyp_rules(72): 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].
getrecordtyp_rules(73): 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].
getrecordtyp_rules(74): rr_type__linelengthindex__size >= 0 may_be_deduced.
getrecordtyp_rules(75): rr_type__linelengthindex__first may_be_replaced_by 1.
getrecordtyp_rules(76): rr_type__linelengthindex__last may_be_replaced_by 256.
getrecordtyp_rules(77): rr_type__linelengthindex__base__first may_be_replaced_by -2147483648.
getrecordtyp_rules(78): rr_type__linelengthindex__base__last may_be_replaced_by 2147483647.
