2

This came to me as a generalization of another question:

What does the algorithm matter, if the input-output game plus performance is the same?

And lead me to a rabbit hole of following philosophical conclusions:
(I go top-down. So, don't stop just after the first statements. Explanation follows.)

Everything is real.
Reality is effect.
We observe and measure things by their effects.
Falsehoods, illusions, delusions, the hypothetical, abstract concepts have an effect larger than 0. Therefore, falsehoods, illusions, delusions, the hypothetical, abstract concepts are real. Real by the effect they exert.

A square circle is real by the effect larger than 0 it just took onto your thoughts.
Your thoughts affect your actions. Your actions affect your environment.
Superstitions and false believes shaped the state of our society significantly.
Lies have utility.
It would be ignorant to call these things unreal while being influenced by it.
It would be ignorant to say real is what persists regardless your believes, as a lot of ideologies and abstract concepts persisted (by their effect) and will continue to persist longer than any physical object.

Now separate essence and effect.
Here essence are the internal things and processes of the object that create an external effect.
Here effect is the difference to the world, where this effect does not apply.

What does it matter if:

an object O

  1. has essence E1 and effect A1
  2. has essence E2 and effect A1
  3. has no essence and effect A1 (hypothetical and impossible case)
  4. has essence E1 and no effect
  5. has essence E2 and no effect
  6. has essence E1 and effect A2
  7. has essence E2 and effect A3

In case 1,2 and 3 the worlds progress to the same states.
In case of 4 and 5 the worlds progress to the same state.
In case of 6 and 7 the worlds progress to different states.

It seems that effect matters, essence doesn't.
Although, of course, the essence causes the effect and obviously just affected my actions writing you about it.
However, you may have different essences creating the same effect, right?

1
  • "You read too many comic books."
    – Scott Rowe
    Commented Apr 27 at 23:12

3 Answers 3

1

I will deal with the initial Comp. Sci. starting of your sequence. The rest follows naturally.

How does the algorithm matter if the function the algorithm computes is the same?

Say we have: y = 2*x vs y = x + x

On older processors where a mul opcode could be considerably more expensive than an add it could clearly make a difference.

Now you'll say I am cheating since you did say (in effect) function plus performance.

This is easier said than done.

Consider Kruskal's vs Prim's algorithm for finding the minimum spanning tree of a graph. The Kruskal complexity is O(E log V). The Prim's is O(V2). 1

The result is the Prim's works better on dense graphs — many edges does'nt increase cost. Contrariwise where the graph is sparse Kruskal's is better.

Well actually it goes further: Prim's doesn't work at all for unconnected graphs whereas Kruskal's gives the spanning forest. Now you could say that this makes the function itself different and so the your whole point is vacuously true. One could then give the reparty that we stick to connected graphs then the functions computed are identical.

And we get to the nub of the matter:

Performance is not a uni-dimensional question

For somethings as close to Platonic-Simple as graphs we have two parameters and therefore two dimensions — V and E.

For softer domain questions there would be more parameters:

Is a Steinway better or a Roland? Apart from pure musicality, think costs, storage, portability...

When we go still softer — regarding living beings and humans — its in zillions. Which is better old-fashioned or modern?

Which gets the essence?


1 The complexity expressions are the simple case.

See Prim and Kruskal for more intricate details

4
  • The 2 provided algorithms seem to violate my side-condition, namely that effect is the same. In this particular case, any (input X output X performance) element being identical. That is not the case, if I understood your examples correctly.
    – retrospace
    Commented Apr 27 at 15:09
  • But of course in most cases performance will be different. It is hard to find 2 different algorithms that have exactly the same input X output X performance set. Is it possible at all? And after exact match we could descend into approximate match. But exact match was in question. I like to limit it to exact match.
    – retrospace
    Commented Apr 27 at 15:16
  • @retrospace: If you add so much as one nop to any given implementation of an algorithm, it will be ever so slightly slower, despite being exactly the same algorithm (albeit not exactly the same implementation). More pragmatically, you can implement the same algorithm in C and in Python, and their performance will look nothing alike. So this whole idea that performance and "is the same algorithm?" have anything to do with each other is simply fallacious.
    – Kevin
    Commented Apr 28 at 3:02
  • "you can implement the same algorithm in C and in Python, and their performance will look nothing alike" This actually gives me more tweaking options to create 2 objects, that have the same input X output X performance set. So, no fallacy concluded. Now, having these 2 objects, how does their difference in essence matter? They do have the same input X output X performance set. Assuming, we can't and won't ever look inside and split it into its compartments.
    – retrospace
    Commented Apr 28 at 11:36
1

Essence matters because different essences lead to different effects. You seem to be confusing yourself by assuming that objects have a single effect, when in fact objects that differ in essence are considered different precisely because the do not always cause identical effects. A dollar bill and a dollar coin have the same effect in the sense that each can be exchanged for a dollar's worth of ice-cream, but they cause different effects in other respects- coins don't rustle and bills don't jangle, for example. In certain circumstances, objects with different essences can have the same or similar effects, to the point that their different essences are unimportant, whereas in other circumstances the different essences count. For example, I might ignore the difference between a hammer and a spanner if I just wanted something hard and heavy to crack a nut, but if I want to undo a nut, the essential differences between a spanner and a hammer become important.

3
  • That's just nuts.
    – Scott Rowe
    Commented Apr 27 at 23:14
  • "You seem to be confusing yourself by assuming that objects have a single effect" No, I did consider multiple effects. I just use the singular noun effect as a sum of all effects. Sorry, for the confusion. Furthermore, there are examples of different essences that cause the same effect. One is the recursive variant and the iterative variant of the Fibonacci sequence algorithm. Both are different algorithms but have the same input X output set. And performance can be matched by conditionally slowing down the slower variant.
    – retrospace
    Commented Apr 28 at 11:29
  • 1
    Many thanks for the clarification! In that case, my answer would be that extremely few things have identical overall effects, and the fact that they differ is down to them having different essences, which is why essences are important. Commented Apr 28 at 14:12
0

If you don't know the algorithm, you can't be sure that the effects will always be the same. It's possible that that the test cases you tried had the same effect purely by coincidence.

Mathematicians don't consier a conjecture to be a law unless they can prove it from basic principles. There are some well known conjectures that have been tested for enormouse numbers of cases, with no contradictions, so they're very likely to be true, but until they know why they're still considered conjectures.

Newton's laws of motion and Einstein's theories of relativity predict the same effects at speeds and masses that we experience in everyday life. But when speeds approach the speed of light, or we're close to stars and their large gravitational fields, the results are different. Newton's laws are an acceptable approximation, but they don't reflect the underlying mechanism as well as Einstein's theories.

In computing, you might try to reproduce the effect of a program by observing its results. But unless you actually know the algorithm, there could easily be edge cases where the two programs behave differently.

This all comes down to a basic problem of induction from examples.

7
  • That is how it usually works in practice and in physics where our knowledge is limited to the finite subset of input X output that we observed. But is it theoretically possible to have 2 different algorithms that have the same set of input X output X performance? I think at least same performance is no issue as you can slow down the slower algorithm of the two. So, only a full input X output match is in question. I think it is possible: (1) x = x + 1, (2) x = x*x/x+2-1; have the same input X output but are different algorithms. Or take a recursive algorithms versus its non-recursive form.
    – retrospace
    Commented Apr 28 at 11:02
  • Yes, there are many examples of that, e.g. y = x + x versus y = 2 * x. But ensuring that you have such equivalence requires knowing the algorithm you're replacing, you can't do it with a black box.
    – Barmar
    Commented Apr 28 at 12:55
  • Knowing the essence (or the algorithm in our example) is exactly what I suspected unnecessary in my original question. Remember "What does the essence of anything matter, ...". I am not up to finding the essence, but questioning the relevance, if I already would know its full effect (set of all input X output). If I know all its input X output, I can predict its actions, I can utilize it. So, I use it by my understanding of its input X output set, not by its essence.
    – retrospace
    Commented Apr 28 at 19:04
  • But you can't generally know the full effect just by observing the outputs, unless it has a finite domain and you test all those values. Look up riddle of induction
    – Barmar
    Commented Apr 28 at 21:30
  • 1
    My point is that there may be specific examples where you can enumerate all the inputs and outputs, and then the allgorithm/mechanism doesn't matter. But in general that's not the case.
    – Barmar
    Commented Apr 29 at 18:49

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .