@johnhenry/math 0.0.3 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Shader.js","sourceRoot":"","sources":["../src/Shader.ts"],"names":[],"mappings":"AAwCA,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAC/C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;IACvC,CAAC;CACF;AAED,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC;IACvB,qHAAqH;IACrH,MAAM;IACN,MAAM;IACN,KAAK;IACL,UAAU;IACV,MAAM;IACN,OAAO;IACP,QAAQ;IACR,OAAO;IACP,SAAS;IACT,SAAS;IACT,KAAK;IACL,KAAK;IACL,OAAO;IACP,aAAa;IACb,IAAI;IACJ,MAAM;IACN,OAAO;IACP,KAAK;IACL,cAAc;IACd,OAAO;IACP,MAAM;IACN,OAAO;IACP,OAAO;IACP,QAAQ;IACR,WAAW;IACX,MAAM;IACN,OAAO;IACP,QAAQ;IACR,eAAe;IACf,SAAS;IACT,MAAM;IACN,OAAO;IACP,QAAQ;IACR,OAAO;IACP,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;IACN,OAAO;IACP,MAAM;IACN,UAAU;IACV,OAAO;IACP,OAAO;IACP,UAAU;IACV,WAAW;IACX,UAAU;IACV,UAAU;IACV,cAAc;IACd,QAAQ;IACR,SAAS;IACT,kBAAkB;IAClB,SAAS;IACT,OAAO;IACP,cAAc;IACd,YAAY;IACZ,WAAW;IACX,WAAW;IACX,WAAW;IACX,UAAU;IACV,YAAY;IACZ,KAAK;IACL,MAAM;IACN,cAAc;IACd,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;IACN,UAAU;IACV,UAAU;IACV,SAAS;IACT,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,kBAAkB;IAClB,aAAa;IACb,YAAY;IACZ,SAAS;IACT,UAAU;IACV,IAAI;IACJ,KAAK;IACL,OAAO;IACP,OAAO;IACP,OAAO;IACP,cAAc;IACd,MAAM;IACN,QAAQ;IACR,MAAM;IACN,OAAO;IACP,KAAK;IACL,MAAM;IACN,UAAU;IACV,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,UAAU;IACV,KAAK;IACL,KAAK;IACL,aAAa;IACb,aAAa;IACb,OAAO;IACP,QAAQ;IACR,OAAO;IACP,SAAS;IACT,OAAO;IACP,MAAM;IACN,OAAO;IACP,gBAAgB;IAChB,iBAAiB;IACjB,OAAO;IACP,KAAK;IACL,IAAI;IACJ,KAAK;IACL,OAAO;IACP,QAAQ;IACR,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,QAAQ;IACR,SAAS;IACT,KAAK;IACL,MAAM;IACN,aAAa;IACb,kBAAkB;IAClB,aAAa;IACb,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,KAAK;IACL,IAAI;IACJ,MAAM;IACN,YAAY;IACZ,QAAQ;IACR,IAAI;IACJ,QAAQ;IACR,OAAO;IACP,OAAO;IACP,YAAY;IACZ,KAAK;IACL,gBAAgB;IAChB,WAAW;IACX,WAAW;IACX,SAAS;IACT,aAAa;IACb,aAAa;IACb,YAAY;IACZ,iBAAiB;IACjB,YAAY;IACZ,iBAAiB;IACjB,cAAc;IACd,mBAAmB;IACnB,gBAAgB;IAChB,YAAY;IACZ,gBAAgB;IAChB,cAAc;IACd,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,UAAU;IACV,eAAe;IACf,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,OAAO;IACP,aAAa;IACb,MAAM;IACN,MAAM;IACN,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,OAAO;IACP,gBAAgB;IAChB,KAAK;IACL,SAAS;IACT,MAAM;IACN,KAAK;IACL,KAAK;IACL,KAAK;IACL,MAAM;IACN,QAAQ;IACR,MAAM;IACN,KAAK;IACL,SAAS;IACT,WAAW;IACX,KAAK;IACL,KAAK;IACL,UAAU;IACV,UAAU;IACV,iBAAiB;IACjB,eAAe;IACf,WAAW;IACX,KAAK;IACL,UAAU;IACV,MAAM;IACN,SAAS;IACT,IAAI;IACJ,UAAU;IACV,KAAK;IACL,cAAc;IACd,QAAQ;IACR,UAAU;IACV,cAAc;IACd,eAAe;IACf,eAAe;IACf,SAAS;IACT,YAAY;IACZ,WAAW;IACX,MAAM;IACN,OAAO;IACP,eAAe;IACf,KAAK;IACL,SAAS;IACT,WAAW;IACX,UAAU;IACV,MAAM;IACN,WAAW;IACX,KAAK;IACL,KAAK;IACL,QAAQ;IACR,SAAS;IACT,UAAU;IACV,KAAK;IACL,SAAS;IACT,SAAS;IACT,YAAY;IACZ,UAAU;IACV,kBAAkB;IAClB,SAAS;IACT,UAAU;IACV,UAAU;IACV,UAAU;IACV,QAAQ;IACR,aAAa;IACb,OAAO;IACP,WAAW;IACX,QAAQ;IACR,SAAS;IACT,WAAW;IACX,gBAAgB;IAChB,sBAAsB;IACtB,iBAAiB;IACjB,WAAW;IACX,gBAAgB;IAChB,sBAAsB;IACtB,aAAa;IACb,kBAAkB;IAClB,eAAe;IACf,qBAAqB;IACrB,iBAAiB;IACjB,WAAW;IACX,eAAe;IACf,aAAa;IACb,mBAAmB;IACnB,oBAAoB;IACpB,UAAU;IACV,QAAQ;IACR,MAAM;IACN,KAAK;IACL,QAAQ;IACR,OAAO;IACP,MAAM;IACN,KAAK;IACL,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,YAAY;IACZ,OAAO;IACP,MAAM;IACN,QAAQ;IACR,eAAe;IACf,aAAa;IACb,KAAK;IACL,MAAM;IACN,QAAQ;IACR,YAAY;IACZ,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,KAAK;IACL,MAAM;IACN,QAAQ;IACR,UAAU;IACV,YAAY;IACZ,kBAAkB;IAClB,SAAS;IACT,aAAa;IACb,mBAAmB;IACnB,YAAY;IACZ,kBAAkB;IAClB,eAAe;IACf,aAAa;IACb,iBAAiB;IACjB,uBAAuB;IACvB,gBAAgB;IAChB,sBAAsB;IACtB,mBAAmB;IACnB,aAAa;IACb,YAAY;IACZ,YAAY;IACZ,kBAAkB;IAClB,YAAY;IACZ,cAAc;IACd,oBAAoB;IACpB,kBAAkB;IAClB,yBAAyB;IACzB,oBAAoB;IACpB,oBAAoB;IACpB,0BAA0B;IAC1B,oBAAoB;IACpB,MAAM;IACN,cAAc;IACd,OAAO;IACP,OAAO;IACP,WAAW;IACX,MAAM;IACN,OAAO;IACP,KAAK;IACL,MAAM;IACN,SAAS;IACT,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,KAAK;IACL,MAAM;IACN,iBAAiB;IACjB,SAAS;IACT,OAAO;IACP,QAAQ;IACR,OAAO;IACP,gBAAgB;IAChB,iBAAiB;IACjB,iBAAiB;IACjB,QAAQ;IACR,UAAU;IACV,SAAS;IACT,YAAY;IACZ,iBAAiB;IACjB,YAAY;IACZ,iBAAiB;IACjB,cAAc;IACd,mBAAmB;IACnB,gBAAgB;IAChB,YAAY;IACZ,gBAAgB;IAChB,cAAc;IACd,KAAK;IACL,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,KAAK;IACL,SAAS;IACT,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,SAAS;IACT,MAAM;IACN,UAAU;IACV,MAAM;IACN,OAAO;IACP,OAAO;IACP,MAAM;IACN,WAAW;IACX,OAAO;CACR,CAAC,CAAC;AAEH,MAAM,IAAI,GAAG,mBAAmB,CAAC;AAYjC,SAAS,GAAG,CAAC,CAAS,EAAE,EAAO;IAC7B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,sBAAsB,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAC;IACjG,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAClB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,CAAC,IAAI,IAAI,CAAC;SAC3B,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,iBAAiB;IAC1E,iHAAiH;IACjH,OAAO,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,IAAI,CAAC,CAAS,EAAE,CAAS,EAAE,CAAM;IACxC,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC;AACvE,CAAC;AAED,SAAS,MAAM,CAAC,CAAM,EAAE,IAAY;IAClC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpB,OAAO,MAAM,IAAI,EAAE,CAAC;AACtB,CAAC;AAED,SAAS,UAAU,CAAC,CAAO;IACzB,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,CAAC,CAAC,KAAK,CAAC;IACvC,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC;IACpE,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,OAAO,GAA2B,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AAErG,SAAS,KAAK,CAAC,EAAU;IACvB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;QAAE,MAAM,IAAI,sBAAsB,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;IACzG,OAAO,OAAO,CAAC,EAAE,CAAW,CAAC;AAC/B,CAAC;AAED,SAAS,OAAO,CAAC,CAAO,EAAE,CAAM;IAC9B,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACrB,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACvB,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC;IACxD,CAAC;IACD,OAAO,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC;AAChC,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,MAAM,IAAI,sBAAsB,CAAC,GAAG,IAAI,0CAA0C,CAAC,CAAC;AACtF,CAAC;AAED,SAAS,IAAI,CAAC,CAAO,EAAE,CAAM;IAC3B,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,OAAO;YACV,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACvE,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YAClF,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;gBAAE,MAAM,IAAI,sBAAsB,CAAC,aAAa,CAAC,CAAC,IAAI,gCAAgC,CAAC,CAAC;YAC/G,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACnB,OAAO,CAAC,CAAC,IAAI,CAAC;QAChB,CAAC;QACD,KAAK,KAAK;YACR,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC;QAChC,KAAK,KAAK;YACR,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC;QACtD,KAAK,KAAK;YACR,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC;QACtD,KAAK,KAAK;YACR,OAAO,CAAC,CAAC,OAAO;gBACd,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG;gBACjE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC;QACnD,KAAK,KAAK;YACR,OAAO,CAAC,CAAC,OAAO;gBACd,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG;gBACjE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC;QACnD,KAAK,KAAK;YACR,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAC9E,KAAK,MAAM;YACT,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAClG,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,IAAI,CAAC,CAAC,OAAO;gBAAE,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,uBAAuB,CAAC,CAAC;YAC7D,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC3B,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;gBACf,KAAK,OAAO;oBACV,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC;gBACnE,KAAK,OAAO;oBACV,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC;gBACvF,KAAK,KAAK,CAAC;gBACX,KAAK,KAAK;oBACR,OAAO,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;gBACjC;oBACE,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QACD,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,IAAI,CAAC,CAAC,OAAO;gBAAE,WAAW,CAAC,iCAAiC,CAAC,CAAC;YAC9D,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACxB,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC;QAC1E,CAAC;QACD,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,IAAI,CAAC,CAAC,OAAO;gBAAE,WAAW,CAAC,gCAAgC,CAAC,CAAC;YAC7D,IAAI,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;YAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChD,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAA+B,CAAC;gBACvD,MAAM,IAAI,GAAG,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBACjC,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC3B,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,UAAU,GAAG,KAAK,CAAC,KAAK,IAAI,GAAG,CAAC;YACvF,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC;QACD,KAAK,KAAK;YACR,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;QAC5B,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;AACH,CAAC;AAED,SAAS,OAAO,CAAC,IAAU,EAAE,GAAS,EAAE,CAAM;IAC5C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACxB,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IAC3B,IAAI,EAAE,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAClE,MAAM,CAAC,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QACtB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,WAAW,IAAI,IAAI,CAAC;IACnD,CAAC;IACD,IAAI,EAAE,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;QAC7C,8FAA8F;QAC9F,MAAM,CAAC,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC;QAC3C,OAAO,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC7C,CAAC;IACD,OAAO,OAAO,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC;AACtC,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY,EAAE,CAAS,EAAE,CAAM;IAC/C,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC;IACzB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,KAAK,CAAC;QACX,KAAK,KAAK,CAAC;QACX,KAAK,KAAK,CAAC;QACX,KAAK,KAAK,CAAC;QACX,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO,CAAC;QACb,KAAK,OAAO,CAAC;QACb,KAAK,OAAO,CAAC;QACb,KAAK,KAAK,CAAC;QACX,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO,CAAC;QACb,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO,CAAC;QACb,KAAK,OAAO,CAAC;QACb,KAAK,MAAM;YACT,OAAO,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;QACzB,KAAK,IAAI;YACP,OAAO,OAAO,CAAC,GAAG,CAAC;QACrB,KAAK,OAAO;YACV,OAAO,QAAQ,CAAC,OAAO,IAAI,GAAG,CAAC;QACjC,KAAK,KAAK;YACR,OAAO,cAAc,CAAC,IAAI,CAAC;QAC7B,KAAK,KAAK;YACR,OAAO,cAAc,CAAC,IAAI,CAAC;QAC7B,KAAK,KAAK;YACR,OAAO,cAAc,CAAC,IAAI,CAAC;QAC7B,KAAK,MAAM;YACT,OAAO,eAAe,CAAC,IAAI,CAAC;QAC9B,KAAK,MAAM;YACT,OAAO,eAAe,CAAC,IAAI,CAAC;QAC9B,KAAK,MAAM;YACT,OAAO,eAAe,CAAC,IAAI,CAAC;QAC9B,KAAK,MAAM;YACT,OAAO,cAAc,CAAC,GAAG,CAAC;QAC5B,KAAK,MAAM;YACT,OAAO,cAAc,CAAC,GAAG,CAAC;QAC5B,KAAK,MAAM;YACT,OAAO,cAAc,CAAC,GAAG,CAAC;QAC5B,KAAK,OAAO;YACV,OAAO,eAAe,CAAC,GAAG,CAAC;QAC7B,KAAK,OAAO;YACV,OAAO,eAAe,CAAC,GAAG,CAAC;QAC7B,KAAK,OAAO;YACV,OAAO,eAAe,CAAC,GAAG,CAAC;QAC7B,KAAK,MAAM;YACT,OAAO,SAAS,CAAC,eAAe,CAAC,yBAAyB,CAAC;QAC7D,KAAK,OAAO;YACV,OAAO,QAAQ,CAAC,UAAU,CAAC;QAC7B,KAAK,OAAO;YACV,OAAO,aAAa,CAAC,GAAG,CAAC;QAC3B,KAAK,SAAS;YACZ,OAAO,sBAAsB,CAAC,KAAK,CAAC;QACtC,KAAK,MAAM;YACT,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACjD;YACE,OAAO,WAAW,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,IAAU,EAAE,GAAS,EAAE,CAAM;IAC/C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACxB,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAChE,OAAO,GAAG,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;IAC7C,CAAC;IACD,OAAO,GAAG,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC;AACvD,CAAC;AAED,SAAS,WAAW,CAAC,IAAY,EAAE,CAAS,EAAE,CAAM;IAClD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,KAAK,CAAC;QACX,KAAK,IAAI,CAAC;QACV,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK,CAAC;QACX,KAAK,KAAK,CAAC;QACX,KAAK,KAAK,CAAC;QACX,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK;YACR,OAAO,GAAG,MAAM,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;QAC1C;YACE,OAAO,WAAW,CAAC,YAAY,IAAI,uBAAuB,CAAC,CAAC;IAChE,CAAC;AACH,CAAC;AAED,8FAA8F;AAC9F,MAAM,YAAY,GAAG;IACnB,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,MAAM;CACP,CAAC;AACF,MAAM,WAAW,GAA6B;IAC5C,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;IAC9B,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;CAClC,CAAC;AAEF,SAAS,YAAY,CAAC,IAAY,EAAE,CAAgB;IAClD,MAAM,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC;IAC9C,MAAM,EAAE,GAAG,CAAC,CAAS,EAAE,MAAc,EAAE,IAAY,EAAE,EAAE,CACrD,CAAC,KAAK,MAAM;QACV,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,yBAAyB,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,IAAI,KAAK;QAC1H,CAAC,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC,OAAO,IAAI,KAAK,CAAC;IACtF,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,EAAE,CAC9C,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;IAC5F,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC;IAC5C,MAAM,CAAC,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;IACvD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM;YACT,OAAO,EAAE,CAAC,MAAM,EAAE,kBAAkB,EAAE,GAAG,CAAC,CAAC,CAAC,uBAAuB,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC;QAClG,KAAK,MAAM;YACT,OAAO,EAAE,CACP,MAAM,EACN,kBAAkB,EAClB;gBACE,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,uBAAuB,CAAC;gBAC1C,GAAG,CAAC,CAAC,CAAC,6BAA6B,EAAE,6BAA6B,CAAC,CAAC;aACrE,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;QACJ,KAAK,MAAM;YACT,OAAO,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;QAC/E,KAAK,KAAK;YACR,OAAO,EAAE,CACP,KAAK,EACL,SAAS,EACT,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAChH,CAAC;QACJ,KAAK,MAAM;YACT,OAAO,EAAE,CAAC,MAAM,EAAE,kBAAkB,EAAE,GAAG,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC/E,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,uDAAuD;YACvD,IAAI,CAAC,KAAK,MAAM;gBACd,OAAO,oRAAoR,CAAC;YAC9R,OAAO,iWAAiW,CAAC;QAC3W,CAAC;QACD,KAAK,OAAO;YACV,OAAO,EAAE,CACP,OAAO,EACP,SAAS,EACT;gBACE,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,WAAW,CAAC;gBAC9B,GAAG,CACD,CAAC,CACC,iCAAiC,EACjC,CAAC,KAAK,MAAM;oBACV,CAAC,CAAC,4DAA4D;oBAC9D,CAAC,CAAC,gEAAgE,CACrE,CACF;aACF,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;QACJ,KAAK,MAAM;YACT,OAAO,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,sBAAsB,EAAE,sBAAsB,CAAC,CAAC,CAAC,CAAC;QACvF,KAAK,MAAM;YACT,OAAO,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,sBAAsB,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC;QACxF,KAAK,MAAM;YACT,OAAO,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,iCAAiC,CAAC,CAAC,CAAC;QACvE,KAAK,OAAO;YACV,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,sBAAsB,EAAE,sBAAsB,CAAC,CAAC,CAAC,CAAC;QACxF,KAAK,OAAO;YACV,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,sBAAsB,EAAE,sBAAsB,CAAC,CAAC,CAAC,CAAC;QACxF,KAAK,OAAO;YACV,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,mCAAmC,CAAC,CAAC,CAAC;QAC1E,KAAK,MAAM;YACT,OAAO,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3D;YACE,MAAM,IAAI,KAAK,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,CAAS;IAC/B,OAAO,CACL,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC;QACjC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QACjB,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;QACpB,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CACrB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAU,EAAE,OAAsB,EAAE,UAAyB,EAAE;IAC3F,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC;IACzC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC7D,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC1B,IACE,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC;YAClC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YACf,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;YAChB,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;YACnB,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;YAEnB,MAAM,IAAI,sBAAsB,CAAC,kBAAkB,CAAC,mCAAmC,CAAC,CAAC;IAC7F,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IACpC,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,MAAM,KAAK,MAAM,CAAC;QACxE,MAAM,IAAI,sBAAsB,CAAC,kBAAkB,MAAM,mCAAmC,CAAC,CAAC;IAChG,MAAM,GAAG,GAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;IACxG,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACnC,0BAA0B;IAC1B,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAClC,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE,IAAI,GAAI,CAAC;QAC7B,IAAI,GAAG,KAAK,CAAC;QACb,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;YAC1B,KAAK,MAAM,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBACvC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBACnB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACd,IAAI,GAAG,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SACpD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;SACpC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChB,IAAI,MAAM,GAAG,OAAO,CAAC;IACrB,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACvC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;QACvG,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClG,MAAM,MAAM,GACV,OAAO,KAAK,MAAM;YAChB,CAAC,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,YAAY,IAAI,MAAM,iBAAiB,UAAU,MAAM;YACzE,CAAC,CAAC,MAAM,OAAO,CAAC,YAAY,IAAI,MAAM,QAAQ,CAAC,gBAAgB,UAAU,MAAM,CAAC;QACpF,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,OAAO,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IACxD,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;AAC1E,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { Rational } from "./Rational.ts";
2
+ import { type ShaderOptions, type ShaderResult } from "./Shader.ts";
2
3
  import type { Structure } from "./Structure.ts";
3
4
  export type FuncName = "sin" | "cos" | "tan" | "exp" | "ln" | "sqrt" | "asin" | "acos" | "atan" | "sinh" | "cosh" | "tanh" | "cot" | "sec" | "csc" | "asinh" | "acosh" | "atanh" | "coth" | "sech" | "csch" | "acot" | "asec" | "acsc" | "acoth" | "asech" | "acsch" | "abs" | "log10" | "log2" | "cbrt" | "floor" | "ceil" | "round" | "sign" | "trunc" | "expm1" | "log1p" | "sigmoid" | "erf" | "relu";
4
5
  /** Elementary functions that take exactly two `Expr` operands (see the `call2` `Expr` variant). */
@@ -139,9 +140,31 @@ export interface OdeClosedFormResult {
139
140
  y?: Expr;
140
141
  implicitRelation?: Expr;
141
142
  }
143
+ /** Options for {@link Symbolic.parse} and {@link Symbolic.fromLatex}. */
144
+ export interface ParseOptions {
145
+ /**
146
+ * Read juxtaposition as multiplication, the way people type maths: `2x`, `x y`, `xy`, `2(x+1)`,
147
+ * `(x+1)(x-1)`, `x(x+1)`, `3sin(x)`. Default `false`, which keeps the strict grammar (`2x` is an
148
+ * error and `xy` is one variable named `xy`).
149
+ *
150
+ * With this on, a run of letters that is not a function call (`name(`) or `pi` is split into
151
+ * single-letter variables, so `xy` is `x*y` and multi-letter variable names such as `theta` are
152
+ * unavailable (use a subscript: `x_1` or `x_a`, which stays one variable). A letter followed by
153
+ * digits is a product too (`x3` is `x*3`). A function name must be followed by `(`. Space
154
+ * between two numbers multiplies (`2 3` is `6`). Juxtaposition has the same precedence as `*`
155
+ * and `/` and binds left to right, so `1/2x` is `(1/2)*x`; `^` binds tighter (`2x^2` is `2*(x^2)`).
156
+ * For `fromLatex` it also lets a function with no brackets take a whole product as its argument
157
+ * (`\sin 2x` is `sin(2*x)`, `\sin x\cos x` is `sin(x)*cos(x)`), and `^` take one token (`x^23` is
158
+ * `x^2*3`, as TeX reads it; `x^{23}` is `x^23`).
159
+ */
160
+ implicitMultiplication?: boolean;
161
+ }
142
162
  export declare class Symbolic {
143
- /** Parse an expression string such as `"sin(x^2) + 3*x"` into an AST. */
144
- static parse(input: string): Expr;
163
+ /**
164
+ * Parse an expression string such as `"sin(x^2) + 3*x"` into an AST.
165
+ * Pass `{ implicitMultiplication: true }` to also read `2x`, `x y` and `2(x+1)`; see {@link ParseOptions}.
166
+ */
167
+ static parse(input: string, options?: ParseOptions): Expr;
145
168
  static differentiate(expr: Expr | string, variable?: string): Expr;
146
169
  /**
147
170
  * Like {@link differentiate}, but also returns a bottom-up trace of every
@@ -154,6 +177,16 @@ export declare class Symbolic {
154
177
  steps: DifferentiationStep[];
155
178
  result: Expr;
156
179
  };
180
+ /**
181
+ * Algebraic simplification: constant folding, like-term collection, and, as a last
182
+ * step, expanding the expression as a rational function and cancelling common
183
+ * factors -- `(x+1)^2 - x^2 - 2*x` gives `1` and `(x^2-1)/(x-1)` gives `x+1`.
184
+ * The expanded/cancelled form is used only when it is strictly smaller than the
185
+ * collected form, so a product such as `(x+1)*2` keeps its shape. Non-polynomial
186
+ * subexpressions (`sin(x)`, `x^y`) are treated as opaque symbols. Like any CAS
187
+ * cancellation, `(x^2-1)/(x-1)` is `x+1` as an expression, ignoring that the
188
+ * original is undefined at `x = 1`.
189
+ */
157
190
  static simplify(expr: Expr | string): Expr;
158
191
  /**
159
192
  * Simplifies `expr` with additional domain knowledge about specific
@@ -340,6 +373,17 @@ export declare class Symbolic {
340
373
  */
341
374
  static evaluateOverStructure<T>(expr: Expr | string, structure: Structure<T>, env?: Record<string, T>): T;
342
375
  static toString(expr: Expr | string): string;
376
+ /**
377
+ * Compile `expr` to a GLSL ES 3.0 expression over `float` (default) or, with
378
+ * `{ complex: true }`, over `vec2` complex numbers (the helpers it needs, such as
379
+ * `mx_cmul`, are returned in `helpers` and emitted once). Output is deterministic.
380
+ * Refuses nodes with no shader form (`sum`, `product`, `erf`, `gcd`, `lcm`, and anything
381
+ * not closed under the complex numbers in complex mode) with a `ShaderUnsupportedError`.
382
+ * Shader `pow` of a negative base with a non-integer exponent is undefined, unlike JS `NaN`.
383
+ */
384
+ static toGLSL(expr: Expr | string, options?: ShaderOptions): ShaderResult;
385
+ /** As {@link toGLSL}, for WGSL (`f32` / `vec2<f32>`; `select` replaces the ternary). */
386
+ static toWGSL(expr: Expr | string, options?: ShaderOptions): ShaderResult;
343
387
  /** Render `expr` as a LaTeX string, e.g. `"x/2"` -> `"\\frac{x}{2}"`. */
344
388
  static toLatex(expr: Expr | string): string;
345
389
  /**
@@ -352,11 +396,15 @@ export declare class Symbolic {
352
396
  * commands (`\sin`, `\arcsin`, `\sinh`, `\operatorname{sech}`, ...), and the
353
397
  * two-argument `BinaryFuncName` commands (`\min`, `\max`, `\gcd`,
354
398
  * `\operatorname{atan2}`, `\operatorname{hypot}`, `\operatorname{lcm}`).
355
- * Spacing commands (`\,`, `\;`, `\!`, `\quad`) are ignored.
399
+ * Spacing commands (`\,`, `\;`, `\!`, `\quad`) are ignored. Single-token arguments as TeX
400
+ * reads them (`\frac12`, `\frac1x`, `\sqrt2`) and a power on a function command
401
+ * (`\sin^{2}(x)` is `sin(x)^2`) are accepted. An exponent of `-1` on a function command (`\sin^{-1}`) is
402
+ * refused as ambiguous (inverse function or reciprocal): write `\arcsin(x)` or `(\sin x)^{-1}`. For what people type into a math field
403
+ * (`2x`, `\sin 2x`, `(x+1)(x-1)`, `x^23`) pass `{ implicitMultiplication: true }`; see {@link ParseOptions}.
356
404
  *
357
405
  * @throws on LaTeX constructs with no `Expr` equivalent, e.g. `\int` or `\sum`.
358
406
  */
359
- static fromLatex(latex: string): Expr;
407
+ static fromLatex(latex: string, options?: ParseOptions): Expr;
360
408
  /**
361
409
  * Solve `expr = 0` for `variable`, returning every *real* root @johnhenry/math
362
410
  * can find as an exact `Expr` (rationals and `sqrt`-radicals where
@@ -1 +1 @@
1
- {"version":3,"file":"Symbolic.d.ts","sourceRoot":"","sources":["../src/Symbolic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Symbolic.d.ts","sourceRoot":"","sources":["../src/Symbolic.ts"],"names":[],"mappings":"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"}