(x: unknown)
| 33 | // boxing can collapse the part term. Mirrors the P2/P3/P4 test suites. |
| 34 | const PART_HEADS = ['Real', 'Imaginary', 'Abs', 'Argument']; |
| 35 | function hasPartHead(x: unknown): boolean { |
| 36 | return ( |
| 37 | Array.isArray(x) && |
| 38 | (PART_HEADS.includes(x[0] as string) || x.some(hasPartHead)) |
| 39 | ); |
| 40 | } |
| 41 | |
| 42 | function conjunctsOf(assumptions: unknown): unknown[] { |
| 43 | if (Array.isArray(assumptions) && assumptions[0] === 'And') |