I think you would get sqrt(x^2) = x, if x belonged to the natural domain of sqrt, which is a Riemann surface, that may also be defined using the language of "sheaves". I don't know how to connect this to the article or Mathematica.
That's not what it simplifies to using a real or complex number domains for x, it's abs(x). CAS need type inference assumptions and/or type qualifiers to be more powerful.
For x = -i, square(x) = -1, sqrt(square(x)) = i. Meanwhile, abs(x) = 1. You're right that it simplifies to abs(x) for real x, but that no longer holds for arbitrary complex values.
so there's an unconditionally correct answer (it's also equal to abs(x) for x>0), and then there is an answer that is only correct for half the domain, which requires an additional assumption.
Not in general. As people have pointed out elsewhere, it's true if x is real. That isn't always a helpful assumption. (When x is real you can plug that assumption into Mathematica. Then Mathematica should agree with you.)
But consider sqrt(i) = sqrt(exp(i\pi/2)). That's exp(i\pi/4). Your rule would give 1 as the answer. It's not helpful for a serious math system to give that answer to this problem.
I feel this so, so much. It is a very exciting time. I have had a very specific goal in mind and I could work out large parts on my own. But there is a lot that I didn't have any basis or time to build expertise on. Using Claude Code to fill out those gaps and educate me along the way has meant I've gotten little sleep in the last two months. And I managed to make the thing I was envisioning: https://gridpaper.org/examples/ :)
Opinions differ: hobby coders love it, but domain expert secretly despise it because it narrows the gap between the skills they spent years honing and the average Claude, I mean Joe, that just uses this mental exoskeleton.
I do understand this sentiment. But I wish these experts would see that they too are novices in literally every other field that they are not explicitly trained or experienced in. It is fun to explore curiosities even in spaces you don't know well.
Hi! I'm a computational scientist by training, and I've spent an unreasonable number of years wrangling gnuplot and matplotlib to make figures look right for papers and presentations. At some point I just wanted to try to build a tool to help.
Gridpaper is a figure editor that runs entirely in your browser. Under the hood, it's gnuplot 6 compiled to WebAssembly, which means you get all that rendering power without installing anything. No account, no server, your data never leaves your machine.
The core idea is that there are no chart types. Instead you compose layers from a small set of building blocks: 12 geometric marks (curves, bars, heatmaps, vectors, surfaces…) across 5 coordinate systems. A scatter plot with a fit line isn't a special widget — it's two layers. A grouped bar chart is three bar layers in a group set to dodge. It sounds abstract, but in practice it means you can build a lot from very few pieces.
Some things worth poking at:
* The example gallery has 50 figures you can click to open in the editor
* Try importing a CSV (drag it onto the canvas)
* Switch to polar or 3D coordinates and watch the available marks change
* The design page¹ explains the compositional grammar if that sort of thing interests you
I should be upfront: it's not open source yet. I'm a solo developer and I want to get the core solid first. The plan is to open the rendering engine (the gnuplot WASM bridge and compiler) first, then the full editor.
Claude is very good and I believe they have enough to take them to profitability. Just over the last week or so, I’ve spent ~$30 beyond their monthly plan fee and I love it.
But is this good enough to justify a $350B valuation? Netflix gets that sort of valuation with hundreds of millions of subscribers and well established delivery costs.