cannot compute derivative of overlapping types
ERROR in (t-rte-not-random) (rte_construct.clj:732)
Uncaught exception, not in assertion.
expected: nil
actual: clojure.lang.ExceptionInfo: cannot compute derivative of overlapping types because
(not java.io.Serializable) is not a subtype of java.lang.Number
{:error-type :derivative-undefined,
:wrt (not java.io.Serializable),
:expr java.lang.Number,
:sub-types [{:type (and (not java.io.Serializable) java.lang.Number)}
{:type (and (not java.io.Serializable) (not java.lang.Number))}]}
at clojure_rte.rte_core$derivative$fn__2695.invoke (rte_construct.clj:732)
clojure_rte.rte_core$traverse_pattern$if_atom__2534.invoke (rte_construct.clj:228)
clojure_rte.rte_core$traverse_pattern.invokeStatic (rte_construct.clj:315)
clojure_rte.rte_core$traverse_pattern.invoke (rte_construct.clj:200)
clojure_rte.rte_core$traverse_pattern.invokeStatic (rte_construct.clj:210)
clojure_rte.rte_core$traverse_pattern.invoke (rte_construct.clj:200)
clojure_rte.rte_core$derivative.invokeStatic (rte_construct.clj:713)
clojure_rte.rte_core$derivative.invoke (rte_construct.clj:693)
clojure_rte.rte_core$derivative$fn__2705$term1__2709.invoke (rte_construct.clj:748)
clojure_rte.rte_core$derivative$fn__2705.invoke (rte_construct.clj:756)
clojure_rte.rte_core$traverse_pattern$if_multiple_operands__2556.invoke (rte_construct.clj:297)
clojure_rte.rte_core$traverse_pattern.invokeStatic (rte_construct.clj:327)
clojure_rte.rte_core$traverse_pattern.invoke (rte_construct.clj:200)
clojure_rte.rte_core$traverse_pattern.invokeStatic (rte_construct.clj:210)
clojure_rte.rte_core$traverse_pattern.invoke (rte_construct.clj:200)
clojure_rte.rte_core$derivative.invokeStatic (rte_construct.clj:713)
clojure_rte.rte_core$derivative.invoke (rte_construct.clj:693)
clojure_rte.rte_core$derivative$fn__2714.invoke (rte_construct.clj:758)
clojure_rte.rte_core$traverse_pattern$if_exactly_one_operand__2550.invoke (rte_construct.clj:280)
clojure_rte.rte_core$traverse_pattern.invokeStatic (rte_construct.clj:324)
clojure_rte.rte_core$traverse_pattern.invoke (rte_construct.clj:200)
clojure_rte.rte_core$traverse_pattern.invokeStatic (rte_construct.clj:210)
clojure_rte.rte_core$traverse_pattern.invoke (rte_construct.clj:200)
clojure_rte.rte_core$derivative.invokeStatic (rte_construct.clj:713)
clojure_rte.rte_core$derivative.invoke (rte_construct.clj:693)
clojure_rte.rte_core$derivative$walk__2689$fn__2690.invoke (rte_construct.clj:699)
Edited by Jim Newton