Skip to content

Commit e4a1542

Browse files
committed
simplify + type
1 parent 4cd781c commit e4a1542

File tree

1 file changed

+31
-52
lines changed

1 file changed

+31
-52
lines changed

typed-racket-lib/typed-racket/base-env/base-env-numeric.rkt

Lines changed: 31 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1019,65 +1019,44 @@
10191019
(commutative-case -InexactComplex (Un -InexactComplex -InexactReal -PosRat -NegRat) -InexactComplex)
10201020
(varop N))]
10211021
[+ (from-cases
1022-
(-> -Zero)
10231022
(-> N N : -true-propset : (-arg-path 0))
1024-
(binop -Zero)
10251023
(-> N -Zero N : -true-propset : (-arg-path 0))
10261024
(-> -Zero N N : -true-propset : (-arg-path 1))
1027-
(-> -PosByte -PosByte -PosIndex)
10281025
(-> -Byte -Byte -Index)
1029-
(-> -PosByte -PosByte -PosByte -PosIndex)
10301026
(-> -Byte -Byte -Byte -Index)
1031-
(commutative-binop -PosIndex -Index -PosFixnum)
1032-
(-> -PosIndex -Index -Index -PosFixnum)
1033-
(-> -Index -PosIndex -Index -PosFixnum)
1034-
(-> -Index -Index -PosIndex -PosFixnum)
10351027
(-> -Index -Index -NonNegFixnum)
10361028
(-> -Index -Index -Index -NonNegFixnum)
1037-
(commutative-binop -NegFixnum -One -NonPosFixnum)
1038-
(commutative-binop -NonPosFixnum -NonNegFixnum -Fixnum)
1039-
(commutative-case -PosInt -Nat -PosInt)
1040-
(commutative-case -NegInt -NonPosInt -NegInt)
1041-
(map varop (list -Nat -NonPosInt -Int))
1042-
(commutative-case -PosRat -NonNegRat -PosRat)
1043-
(commutative-case -NegRat -NonPosRat -NegRat)
1044-
(map varop (list -NonNegRat -NonPosRat -Rat))
1045-
;; flonum + real -> flonum
1046-
(commutative-case -PosFlonum -NonNegReal -PosFlonum)
1047-
(commutative-case -PosReal -NonNegFlonum -PosFlonum)
1048-
(commutative-case -NegFlonum -NonPosReal -NegFlonum)
1049-
(commutative-case -NegReal -NonPosFlonum -NegFlonum)
1050-
(commutative-case -NonNegFlonum -NonNegReal -NonNegFlonum)
1051-
(commutative-case -NonPosFlonum -NonPosReal -NonPosFlonum)
1052-
(commutative-case -Flonum -Real -Flonum)
1053-
(varop-1+ -Flonum)
1054-
;; single-flonum + rat -> single-flonum
1055-
(commutative-case -PosSingleFlonum (Un -NonNegRat -NonNegSingleFlonum) -PosSingleFlonum)
1056-
(commutative-case (Un -PosRat -PosSingleFlonum) -NonNegSingleFlonum -PosSingleFlonum)
1057-
(commutative-case -NegSingleFlonum (Un -NonPosRat -NonPosSingleFlonum) -NegSingleFlonum)
1058-
(commutative-case (Un -NegRat -NegSingleFlonum) -NonPosSingleFlonum -NegSingleFlonum)
1059-
(commutative-case -NonNegSingleFlonum (Un -NonNegRat -NonNegSingleFlonum) -NonNegSingleFlonum)
1060-
(commutative-case -NonPosSingleFlonum (Un -NonPosRat -NonPosSingleFlonum) -NonPosSingleFlonum)
1061-
(commutative-case -SingleFlonum (Un -Rat -SingleFlonum) -SingleFlonum)
1062-
(varop-1+ -SingleFlonum)
1063-
;; inexact-real + real -> inexact-real
1064-
(commutative-case -PosInexactReal -NonNegReal -PosInexactReal)
1065-
(commutative-case -PosReal -NonNegInexactReal -PosInexactReal)
1066-
(commutative-case -NegInexactReal -NonPosReal -NegInexactReal)
1067-
(commutative-case -NegReal -NonPosInexactReal -NegInexactReal)
1068-
(commutative-case -NonNegInexactReal -NonNegReal -NonNegInexactReal)
1069-
(commutative-case -NonPosInexactReal -NonPosReal -NonPosInexactReal)
1070-
(commutative-case -InexactReal -Real -InexactReal)
1071-
;; real
1072-
(commutative-case -PosReal -NonNegReal -PosReal)
1073-
(commutative-case -NegReal -NonPosReal -NegReal)
1074-
(map varop (list -NonNegReal -NonPosReal -Real -ExactNumber))
1075-
;; complex
1076-
(commutative-case -FloatComplex N -FloatComplex)
1077-
(commutative-case -Flonum -InexactComplex -FloatComplex)
1078-
(commutative-case -SingleFlonumComplex (Un -Rat -SingleFlonum -SingleFlonumComplex) -SingleFlonumComplex)
1079-
(commutative-case -InexactComplex (Un -Rat -InexactReal -InexactComplex) -InexactComplex)
1080-
(varop N))]
1029+
(-> -NegFixnum -One -NonPosFixnum)
1030+
(-> -One -NegFixnum -NonPosFixnum)
1031+
(-> -NonPosFixnum -NonNegFixnum -Fixnum)
1032+
(-> -NonNegFixnum -NonPosFixnum -Fixnum)
1033+
(-> -Flonum -Real -Flonum)
1034+
(-> -Real -Flonum -Flonum)
1035+
(-> -SingleFlonum (Un -Rat -SingleFlonum) -SingleFlonum)
1036+
(-> (Un -Rat -SingleFlonum) -SingleFlonum -SingleFlonum)
1037+
(-> -InexactReal -Real -InexactReal)
1038+
(-> -Real -InexactReal -InexactReal)
1039+
(-> -FloatComplex N -FloatComplex)
1040+
(-> N -FloatComplex -FloatComplex)
1041+
(-> -Flonum -InexactComplex -FloatComplex)
1042+
(-> -InexactComplex -Flonum -FloatComplex)
1043+
(-> -SingleFlonumComplex (Un -Rat -SingleFlonum -SingleFlonumComplex) -SingleFlonumComplex)
1044+
(-> (Un -Rat -SingleFlonum -SingleFlonumComplex) -SingleFlonumComplex -SingleFlonumComplex)
1045+
(-> -InexactComplex (Un -Rat -InexactReal -InexactComplex) -InexactComplex)
1046+
(-> (Un -Rat -InexactReal -InexactComplex) -InexactComplex -InexactComplex)
1047+
(-> -PosReal -NonNegReal -PosReal)
1048+
(-> -NonNegReal -PosReal -PosReal)
1049+
(-> -PosReal -NonNegReal -NonNegReal -PosReal)
1050+
(-> -NonNegReal -PosReal -NonNegReal -PosReal)
1051+
(-> -NonNegReal -NonNegReal -PosReal -PosReal)
1052+
(-> -NegReal -NonPosReal -NegReal)
1053+
(-> -NonPosReal -NegReal -NegReal)
1054+
(-> -NegReal -NonPosReal -NonPosReal -NegReal)
1055+
(-> -NonPosReal -NegReal -NonPosReal -NegReal)
1056+
(-> -NonPosReal -NonPosReal -NegReal -NegReal)
1057+
(map varop (list -Zero -Nat -Int -PosReal -NegReal
1058+
-NonNegReal -NonPosReal -Real -ExactNumber N))
1059+
(map varop-1+ (list -Flonum -SingleFlonum)))]
10811060

10821061
[- (from-cases
10831062
(binop -Zero)

0 commit comments

Comments
 (0)