We’ve been through this before. If you apply a limited number of inputs to a circuit, the set of possible functions that could produce these results will be of size > 1, even after logic minimization. What you are doing basically is looking at several truth tables, and seeing which ones have rows 0 1 1. It should be of no surprise to anyone that more than one do.
If however you present me with n **2 or four inputs, I can tell you precisely which function is being computed. And I can even give you a minimal implementation of that function using well known logic minimization techniques. If I don’t require minimal logic, I can give you an infinite number of implementations all implementing the same computation.
Now I thought you were tallking about circuits with memory. Small FSMs can have their state tables derived from various experiments - you learn this in automata theory. Large ones - with thousands or millions of state elements - are not practical to understand, though there are various methods such as partitioning which makes the process simpler. However there are methods to prove that an implementation implements a specific computation, which is done during the verification of designs. I’ve read a bunch of papers on this, but haven’t really done it myself. And testing involves seeing if an instantiation of a design matches a golden computation - so in a sense you are automatically deriving a computation from applying inputs to the circuit which allows you to say the compuation either matches the golden one or mismatches at one or several places.
My point in bringing up the physical aspects of things is to show that we must determine what the computation is under this kind of variation. So, what you seem to be saying is impossible is done all the time.
Let’s try a simpler example. There is a kind of puzzle where you shoot a marble into a black box and see where it comes out, and try to deduce the shape of the object in the box. If you shoot one marble in (which is your example, basically) you can imagine several shapes that are possible based on the result. You refine this by shooting more marbles in. Are you saying that there are really several shapes in the box after one marble, as opposed to one shape and a set of possible but incorrect shapes?
As I said before, when you diagnose a circuit which is basically finding which incorrect function the circuit implements, you have an ambiguity set of possible causes (computations) which you try to narrow down. Even if you cannot, that does not mean that there are two different computations being done.
Sure I can. Anything you can do in software you can do in hardware. I can examine the design, see the multipliers, adders and control, see that there is probably an init line and a start line and some outputs, and figure out it is doing a polynomial expansion that gives you the digits if pi slowly but surely.
Now, if what you are saying that we can’t tell what a black box with no inputs and no outputs is computing - well sure. We don’t know that the inside of a black hole isn’t playing World of Warcraft either. But the simulator writer in the OP can observe or the simulation is pointless. (Practically speaking it will be hard to observe everything, which is one reason I don’t believe in the simulation. But we agree on that.)
A specification is the computation we want the chip to do. If we never know what a chip is computing, we’d never know if it is working properly - and we do. Gravity is not a spec. If the government says that a frank must be at least a foot long, then it can make an 11 inch one illegal. And no, saying you interpret a foot as 10 inches, so your 11 inch frank is a foot 1 inch and legal. Equally valid interpretation, right. Silly I know, but less silly than bringing in gravity.
We don’t have to make any arbitrary choices. For instance, we can throw the same pattern at the chip n times and see if the output changes. If it does, we know the chip is sequential. (Actually we’d throw a pattern and its inverse so if there was a clock it would toggle.) We could throw patterns representing numbers at various input positions and see if any of them looks like addition. We’d make hypotheses about the computation and test to support or disprove them. And if we could look inside the job would be much easier.