Can I use Nest iteration variable as the variable of Limit?
up vote
2
down vote
favorite
Can anybody tell me what is wrong with this:
Limit[Nest[1/(1 + #) &, x0, n], n -> ∞]
nest
add a comment |
up vote
2
down vote
favorite
Can anybody tell me what is wrong with this:
Limit[Nest[1/(1 + #) &, x0, n], n -> ∞]
nest
2
The 3rd argument ofNest
must be numeric
– Coolwater
Nov 18 at 14:02
2
ThisFixedPoint[1/(1 + #) &, #] & /@ Range[0., 4, 1]
might help.
– Αλέξανδρος Ζεγγ
Nov 18 at 14:17
1
Or for an exact valuex /. Solve[{1/(1 + x) == x, x > 0}, x][[1]]
– Bob Hanlon
Nov 18 at 14:35
add a comment |
up vote
2
down vote
favorite
up vote
2
down vote
favorite
Can anybody tell me what is wrong with this:
Limit[Nest[1/(1 + #) &, x0, n], n -> ∞]
nest
Can anybody tell me what is wrong with this:
Limit[Nest[1/(1 + #) &, x0, n], n -> ∞]
nest
nest
edited Nov 18 at 14:20
Αλέξανδρος Ζεγγ
3,5381927
3,5381927
asked Nov 18 at 13:53
pablo
162
162
2
The 3rd argument ofNest
must be numeric
– Coolwater
Nov 18 at 14:02
2
ThisFixedPoint[1/(1 + #) &, #] & /@ Range[0., 4, 1]
might help.
– Αλέξανδρος Ζεγγ
Nov 18 at 14:17
1
Or for an exact valuex /. Solve[{1/(1 + x) == x, x > 0}, x][[1]]
– Bob Hanlon
Nov 18 at 14:35
add a comment |
2
The 3rd argument ofNest
must be numeric
– Coolwater
Nov 18 at 14:02
2
ThisFixedPoint[1/(1 + #) &, #] & /@ Range[0., 4, 1]
might help.
– Αλέξανδρος Ζεγγ
Nov 18 at 14:17
1
Or for an exact valuex /. Solve[{1/(1 + x) == x, x > 0}, x][[1]]
– Bob Hanlon
Nov 18 at 14:35
2
2
The 3rd argument of
Nest
must be numeric– Coolwater
Nov 18 at 14:02
The 3rd argument of
Nest
must be numeric– Coolwater
Nov 18 at 14:02
2
2
This
FixedPoint[1/(1 + #) &, #] & /@ Range[0., 4, 1]
might help.– Αλέξανδρος Ζεγγ
Nov 18 at 14:17
This
FixedPoint[1/(1 + #) &, #] & /@ Range[0., 4, 1]
might help.– Αλέξανδρος Ζεγγ
Nov 18 at 14:17
1
1
Or for an exact value
x /. Solve[{1/(1 + x) == x, x > 0}, x][[1]]
– Bob Hanlon
Nov 18 at 14:35
Or for an exact value
x /. Solve[{1/(1 + x) == x, x > 0}, x][[1]]
– Bob Hanlon
Nov 18 at 14:35
add a comment |
1 Answer
1
active
oldest
votes
up vote
6
down vote
accepted
Nest
is a functional programming construct whereas Limit
works primarily with mathematical expressions. It simply has no way to work with Nest[...]
.
This can instead be handled by converting the nested expression into a solved recurrence.
recval =
RSolveValue[{f[n] == 1/(1 + f[n - 1]), f[0] == x0}, f[n], n]
(* Out[591]= ((2/(1 + Sqrt[5]))^
n (-2^(1 - n) (1 - Sqrt[5])^n +
2^(1 - n) (1 + Sqrt[5])^n + (1/2 (1 - Sqrt[5]))^n x0 +
Sqrt[5] (1/2 (1 - Sqrt[5]))^n x0 - (1/2 (1 + Sqrt[5]))^n x0 +
Sqrt[5] (1/2 (1 + Sqrt[5]))^n x0))/(1 + Sqrt[
5] - ((1 - Sqrt[5])/(1 + Sqrt[5]))^n +
Sqrt[5] ((1 - Sqrt[5])/(1 + Sqrt[5]))^n + 2 x0 -
2 ((1 - Sqrt[5])/(1 + Sqrt[5]))^n x0) *)
Since we are only really interested in integer n
I will use DiscreteLimit
on this.
dlim = DiscreteLimit[recval, n -> Infinity]
(* Out[592]= (2 + (-1 + Sqrt[5]) x0)/(1 + Sqrt[5] + 2 x0) *)
This is actually independent of initial value:
FullSimplify[dlim]
(* Out[610]= 1/2 (-1 + Sqrt[5]) *)
Another well known way to deduce candidate values for the limit is to solve the fixed point equation.
Solve[x == 1/(1 + x), x]
(* Out[594]= {{x -> 1/2 (-1 - Sqrt[5])}, {x -> 1/2 (-1 + Sqrt[5])}} *)
+1 You get the same result withLimit[recval, n -> Infinity] // FullSimplify
. Also, it is useful to includeFullSimplify
in definition ofrecval
– Bob Hanlon
Nov 18 at 16:16
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
6
down vote
accepted
Nest
is a functional programming construct whereas Limit
works primarily with mathematical expressions. It simply has no way to work with Nest[...]
.
This can instead be handled by converting the nested expression into a solved recurrence.
recval =
RSolveValue[{f[n] == 1/(1 + f[n - 1]), f[0] == x0}, f[n], n]
(* Out[591]= ((2/(1 + Sqrt[5]))^
n (-2^(1 - n) (1 - Sqrt[5])^n +
2^(1 - n) (1 + Sqrt[5])^n + (1/2 (1 - Sqrt[5]))^n x0 +
Sqrt[5] (1/2 (1 - Sqrt[5]))^n x0 - (1/2 (1 + Sqrt[5]))^n x0 +
Sqrt[5] (1/2 (1 + Sqrt[5]))^n x0))/(1 + Sqrt[
5] - ((1 - Sqrt[5])/(1 + Sqrt[5]))^n +
Sqrt[5] ((1 - Sqrt[5])/(1 + Sqrt[5]))^n + 2 x0 -
2 ((1 - Sqrt[5])/(1 + Sqrt[5]))^n x0) *)
Since we are only really interested in integer n
I will use DiscreteLimit
on this.
dlim = DiscreteLimit[recval, n -> Infinity]
(* Out[592]= (2 + (-1 + Sqrt[5]) x0)/(1 + Sqrt[5] + 2 x0) *)
This is actually independent of initial value:
FullSimplify[dlim]
(* Out[610]= 1/2 (-1 + Sqrt[5]) *)
Another well known way to deduce candidate values for the limit is to solve the fixed point equation.
Solve[x == 1/(1 + x), x]
(* Out[594]= {{x -> 1/2 (-1 - Sqrt[5])}, {x -> 1/2 (-1 + Sqrt[5])}} *)
+1 You get the same result withLimit[recval, n -> Infinity] // FullSimplify
. Also, it is useful to includeFullSimplify
in definition ofrecval
– Bob Hanlon
Nov 18 at 16:16
add a comment |
up vote
6
down vote
accepted
Nest
is a functional programming construct whereas Limit
works primarily with mathematical expressions. It simply has no way to work with Nest[...]
.
This can instead be handled by converting the nested expression into a solved recurrence.
recval =
RSolveValue[{f[n] == 1/(1 + f[n - 1]), f[0] == x0}, f[n], n]
(* Out[591]= ((2/(1 + Sqrt[5]))^
n (-2^(1 - n) (1 - Sqrt[5])^n +
2^(1 - n) (1 + Sqrt[5])^n + (1/2 (1 - Sqrt[5]))^n x0 +
Sqrt[5] (1/2 (1 - Sqrt[5]))^n x0 - (1/2 (1 + Sqrt[5]))^n x0 +
Sqrt[5] (1/2 (1 + Sqrt[5]))^n x0))/(1 + Sqrt[
5] - ((1 - Sqrt[5])/(1 + Sqrt[5]))^n +
Sqrt[5] ((1 - Sqrt[5])/(1 + Sqrt[5]))^n + 2 x0 -
2 ((1 - Sqrt[5])/(1 + Sqrt[5]))^n x0) *)
Since we are only really interested in integer n
I will use DiscreteLimit
on this.
dlim = DiscreteLimit[recval, n -> Infinity]
(* Out[592]= (2 + (-1 + Sqrt[5]) x0)/(1 + Sqrt[5] + 2 x0) *)
This is actually independent of initial value:
FullSimplify[dlim]
(* Out[610]= 1/2 (-1 + Sqrt[5]) *)
Another well known way to deduce candidate values for the limit is to solve the fixed point equation.
Solve[x == 1/(1 + x), x]
(* Out[594]= {{x -> 1/2 (-1 - Sqrt[5])}, {x -> 1/2 (-1 + Sqrt[5])}} *)
+1 You get the same result withLimit[recval, n -> Infinity] // FullSimplify
. Also, it is useful to includeFullSimplify
in definition ofrecval
– Bob Hanlon
Nov 18 at 16:16
add a comment |
up vote
6
down vote
accepted
up vote
6
down vote
accepted
Nest
is a functional programming construct whereas Limit
works primarily with mathematical expressions. It simply has no way to work with Nest[...]
.
This can instead be handled by converting the nested expression into a solved recurrence.
recval =
RSolveValue[{f[n] == 1/(1 + f[n - 1]), f[0] == x0}, f[n], n]
(* Out[591]= ((2/(1 + Sqrt[5]))^
n (-2^(1 - n) (1 - Sqrt[5])^n +
2^(1 - n) (1 + Sqrt[5])^n + (1/2 (1 - Sqrt[5]))^n x0 +
Sqrt[5] (1/2 (1 - Sqrt[5]))^n x0 - (1/2 (1 + Sqrt[5]))^n x0 +
Sqrt[5] (1/2 (1 + Sqrt[5]))^n x0))/(1 + Sqrt[
5] - ((1 - Sqrt[5])/(1 + Sqrt[5]))^n +
Sqrt[5] ((1 - Sqrt[5])/(1 + Sqrt[5]))^n + 2 x0 -
2 ((1 - Sqrt[5])/(1 + Sqrt[5]))^n x0) *)
Since we are only really interested in integer n
I will use DiscreteLimit
on this.
dlim = DiscreteLimit[recval, n -> Infinity]
(* Out[592]= (2 + (-1 + Sqrt[5]) x0)/(1 + Sqrt[5] + 2 x0) *)
This is actually independent of initial value:
FullSimplify[dlim]
(* Out[610]= 1/2 (-1 + Sqrt[5]) *)
Another well known way to deduce candidate values for the limit is to solve the fixed point equation.
Solve[x == 1/(1 + x), x]
(* Out[594]= {{x -> 1/2 (-1 - Sqrt[5])}, {x -> 1/2 (-1 + Sqrt[5])}} *)
Nest
is a functional programming construct whereas Limit
works primarily with mathematical expressions. It simply has no way to work with Nest[...]
.
This can instead be handled by converting the nested expression into a solved recurrence.
recval =
RSolveValue[{f[n] == 1/(1 + f[n - 1]), f[0] == x0}, f[n], n]
(* Out[591]= ((2/(1 + Sqrt[5]))^
n (-2^(1 - n) (1 - Sqrt[5])^n +
2^(1 - n) (1 + Sqrt[5])^n + (1/2 (1 - Sqrt[5]))^n x0 +
Sqrt[5] (1/2 (1 - Sqrt[5]))^n x0 - (1/2 (1 + Sqrt[5]))^n x0 +
Sqrt[5] (1/2 (1 + Sqrt[5]))^n x0))/(1 + Sqrt[
5] - ((1 - Sqrt[5])/(1 + Sqrt[5]))^n +
Sqrt[5] ((1 - Sqrt[5])/(1 + Sqrt[5]))^n + 2 x0 -
2 ((1 - Sqrt[5])/(1 + Sqrt[5]))^n x0) *)
Since we are only really interested in integer n
I will use DiscreteLimit
on this.
dlim = DiscreteLimit[recval, n -> Infinity]
(* Out[592]= (2 + (-1 + Sqrt[5]) x0)/(1 + Sqrt[5] + 2 x0) *)
This is actually independent of initial value:
FullSimplify[dlim]
(* Out[610]= 1/2 (-1 + Sqrt[5]) *)
Another well known way to deduce candidate values for the limit is to solve the fixed point equation.
Solve[x == 1/(1 + x), x]
(* Out[594]= {{x -> 1/2 (-1 - Sqrt[5])}, {x -> 1/2 (-1 + Sqrt[5])}} *)
answered Nov 18 at 14:44
Daniel Lichtblau
46.3k275161
46.3k275161
+1 You get the same result withLimit[recval, n -> Infinity] // FullSimplify
. Also, it is useful to includeFullSimplify
in definition ofrecval
– Bob Hanlon
Nov 18 at 16:16
add a comment |
+1 You get the same result withLimit[recval, n -> Infinity] // FullSimplify
. Also, it is useful to includeFullSimplify
in definition ofrecval
– Bob Hanlon
Nov 18 at 16:16
+1 You get the same result with
Limit[recval, n -> Infinity] // FullSimplify
. Also, it is useful to include FullSimplify
in definition of recval
– Bob Hanlon
Nov 18 at 16:16
+1 You get the same result with
Limit[recval, n -> Infinity] // FullSimplify
. Also, it is useful to include FullSimplify
in definition of recval
– Bob Hanlon
Nov 18 at 16:16
add a comment |
Thanks for contributing an answer to Mathematica Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f186238%2fcan-i-use-nest-iteration-variable-as-the-variable-of-limit%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
2
The 3rd argument of
Nest
must be numeric– Coolwater
Nov 18 at 14:02
2
This
FixedPoint[1/(1 + #) &, #] & /@ Range[0., 4, 1]
might help.– Αλέξανδρος Ζεγγ
Nov 18 at 14:17
1
Or for an exact value
x /. Solve[{1/(1 + x) == x, x > 0}, x][[1]]
– Bob Hanlon
Nov 18 at 14:35