Talk:Hyper operator: Difference between revisions
No edit summary |
Case for n=0 |
||
Line 79: | Line 79: | ||
Sorry, I wasn't talking to you. I was talking to the same person you were. (Edit conflict after you posted. I just added mine after yours.) I meant that what ''he'' had said depended on what ''he'' meant. I should have clarified. [[User:He Who Is|He Who Is]] 01:23, 5 June 2006 (UTC) |
Sorry, I wasn't talking to you. I was talking to the same person you were. (Edit conflict after you posted. I just added mine after yours.) I meant that what ''he'' had said depended on what ''he'' meant. I should have clarified. [[User:He Who Is|He Who Is]] 01:23, 5 June 2006 (UTC) |
||
:OK. I am sorry that I misunderstood you. I think my examples may help anyway. [[User:JRSpriggs|JRSpriggs]] 02:27, 5 June 2006 (UTC) |
:OK. I am sorry that I misunderstood you. I think my examples may help anyway. [[User:JRSpriggs|JRSpriggs]] 02:27, 5 June 2006 (UTC) |
||
== Case for n=0 == |
|||
Where does the definition that hyper(''a'',0,''b'') = ''b'' + 1 come from? Also, This doesn't seem to fit with the hyper1 operator being addition, hyper2 being multiplication, etc. This case for ''n'' = 0 is fine as far as I can see, but I think a case has to be added defining the operation as ''a'' + ''b'' for ''n'' = 1. --[[User:72.140.146.246|72.140.146.246]] 23:49, 6 June 2006 (UTC) |
Revision as of 23:49, 6 June 2006
This article is very muddy to me. It needs some love. -- imbaczek
- It may be helpful if you can define "love" mathematically. OmegaMan
The definition previous given was incomplete. It defines hyper(a,n,b)=hyper(a,n-1,hyper(a,n,b-1)) without ever defining a base case to which hyper(a,n,b-1) can reduce. This C++ code demostrates why the definition without the stipulation that hyper(a,n,0)=1 for n>1 is invalid. The deletion of the lines containing "if(b==0) return 1;" results in infinite recursion.
template<class T> T Hyper(T a, T n, T b) { switch(n) { case 1: return a+b; // intentionally grouped with also infrequent n=2 branch case 2: return a*b; case 3: return IntegerPow(a,b); // intentionally grouped with also common n>3 branch default: if(b==0) return 1; return Hyper( a , n-1 , Hyper(a,n,b-1) ); } }
130.39.153.46 04:17, 25 Sep 2004 (UTC)
All of the relevant content of this page should be dumped into or merged with the relevant content of a page by the better-known name of "tetration". In any case, the continuing existence of two seperate pages to describe the fourth binary operation is redundant and unnecessary. -OmegaMan
Why is there an if statement in the default? Why not just add a case 0 line? He Who Is 20:35, 2 June 2006 (UTC)
- Notice the switch statement is checking n, but the if statement is checking b. --72.140.146.246 23:43, 6 June 2006 (UTC)
Cool Funtions
We should investigate funtions f(x) such that f(hyper(a,b,n))=hyper(f(a),b,n-1). Such funtions would allow definition of hyper with real numbers by f-1(hyper(f(a),b,n-1)).--SurrealWarrior
That sounds good, and I've recently been working on the same thing. So far I've defined it over all integers n. In the article on Knuth arrow notation, it is mentioned that . From that I've found for all even negative n, it is simply b+1, and all odd negative n give simply b.That gave me, so far:
Where O and E are the sets of all positive odd and even numbers, respectively. This aside, I've made no progress yet to generalizing over all reals, or complex
He Who Is 01:00, 23 April 2006 (UTC)
B.T.W., OmegaMan, I think it would be better merged with Knuth Up-Arrow notation or Conway Chained-Arrow Notation, as these there notations expand beyond addition, multiplication, exponentation, and tetration, including pentation, sextation, and infinitely iterated iterations therof.
Why not associative?
I would question the statement that addition and multiplication are "defined to be associative". They are defined in terms of disjoint unions of sets and Cartesian products of sets (provided the axiom of choice holds). We are just lucky that they turn out to be associative.
However, one can define an infinite sequence of binary operations on (subsets of) the real numbers which are commutative, associative, distributive over the previous operation, and have identity elements. Just let X <n-th operation> Y = expn ((lnn(X)) + (lnn(Y))). The identity will be expn(0). This will do the trick. JRSpriggs 09:07, 13 May 2006 (UTC)
I believe it can be seen as more than a coinsidence why addition and multiplication are communative, but exponentation are. Consider this: Addition can be defined and visualized as a simple combination of ranges on a number line (and it can be flipped to represent the commutativity), and multiplication can be defined and visualized as a simple creation of a plane of a shape with different side lengths (and it can be rotated 90 degrees to represent its communativity), but exponentation cannot be represented in three dimensions, but tencends dimensions. x^n can be represented as an n-dimensional shape bordered by n-unit long lines, not in keeping with the pattern created by addition and multiplication. And by the way expn(lnn) always equals x.He Who Is 01:55, 20 May 2006 (UTC)
- You misread the parentheses. That's an interesting operation that JRSpriggs posted. rspeer / ɹəədsɹ 03:48, 20 May 2006 (UTC)
- I think the parentheses were mistyped, not misread. The operation reads expn ((lnn(X)) + (lnn(Y))), which would (as presented) simplify to x + lnn(Y). Perhaps it should be expn (((lnn(X)) + (lnn(Y))))? (NB: sin a + b = (sin a) + b, yet sin a * b = sin (a * b), and presumably that also holds for exp. The problem seems be distributivity rules.)
- And what do expn and lnn mean anyway?
No... It think they were written correctly. Look at it more closely. At first I though an extra parenthese (sp?) was added to the end, because I'm more used to seeing it written ln x, and exp x, w/o parentheses.He Who Is 20:08, 2 June 2006 (UTC)
- So is it ? Or is that not quite right? And what's the superscript n for?
Superscripts denote recursivity. f^n(x) is f acting on x n times. So that function cannot be written any other way, wsince we dont know how many times to write exp, or ln.
- Then would be correct for the first operation only.
- To remove any confusion (I hope), X <n-th operation> Y = expn {[lnn(X)] + [lnn(Y)]}. And for example, exp3 (W) = exp {exp [exp (W)]}. JRSpriggs 20:45, 3 June 2006 (UTC)
That depends on what you mean. Instead of plugging in x and y to the formula, and ignoring the exponents, then plugging in the outputs, then plugging in the outputs, then plugging in the outputs, (n times) you would first find the nth natural logarithm of x, add it to the nth natural logarithm of y, then take the nth exponential of the output. You are correct if you mean that x and y represent the n-1th ln of x and y, then yes. But I think you thought that the function was: (exp o (lnx + lny))n (x,y) (See Function Composition). Each seperated function is recursive, not the entire thing.He Who Is 21:15, 3 June 2006 (UTC)
- I am perfectly clear about what I mean. I said what I meant and I meant what I said. For anyone jumping in the middle of this, I was defining something different from the operations described in the article. Let me give another description of the first three:
- X <0> Y = X+Y
- X <1> Y = exp (ln (X) + ln (Y)) = X·Y
- X <2> Y = exp (exp (ln (ln (X)) + ln (ln (Y)))) = exp (ln (X) · ln (Y)) = Xln(Y) = Yln(X)
- more generally, X <n+1> Y = exp (ln (X) <n> ln (Y))
- I hope that this finally makes it as clear to others as it is to me. JRSpriggs 00:57, 5 June 2006 (UTC)
Sorry, I wasn't talking to you. I was talking to the same person you were. (Edit conflict after you posted. I just added mine after yours.) I meant that what he had said depended on what he meant. I should have clarified. He Who Is 01:23, 5 June 2006 (UTC)
- OK. I am sorry that I misunderstood you. I think my examples may help anyway. JRSpriggs 02:27, 5 June 2006 (UTC)
Case for n=0
Where does the definition that hyper(a,0,b) = b + 1 come from? Also, This doesn't seem to fit with the hyper1 operator being addition, hyper2 being multiplication, etc. This case for n = 0 is fine as far as I can see, but I think a case has to be added defining the operation as a + b for n = 1. --72.140.146.246 23:49, 6 June 2006 (UTC)