1. Feb 18, 2013

### izzy93

I'm trying to find the integration of my function f[x] from 1 to 4 using the indefinite integral and inserting limits using rules. I am not sure how to insert the limits with rules, have been playing about with the following

Integrate[f[x], x] /. x -> {1 >= x <= 4}

which ain't working,

any help much appreciated

2. Feb 18, 2013

### SteamKing

Staff Emeritus
How about 1 <= x <= 4?

3. Feb 18, 2013

### Bill Simpson

Try using some undefined function q, instead of Integrate, that will do nothing at the moment, just to see what actually happens with your substition.

In[1]:= q[f[x],x]/.x->{1≥x≤4}

Out[1]= q[f[{1≥x&&x≤4}],{1≥x&&x≤4}]

and that doesn't look anything like

q[f[x],{x,1,4}]

that I suspect you are trying to accomplish.

4. Feb 18, 2013

### izzy93

Hello Bill,

when I put that in , comes up with an error

ln[106]= q[f[x], x] /. {1 <= x <= 4}
ReplaceAll::reps: {1<=x<=4} is neither a list of replacement rules nor a valid dispatch table, and so cannot be used for replacing. >>
out[107] = q[E^(-x/2) x^2 Sin[5 x], x] /. {1 <= x <= 4}

Yes that's what I'm aiming for but I need to do it using rules. Is there another way of going about this?

thanks

5. Feb 18, 2013

### Bill Simpson

The reason for your latest error is you left out the "x->" that I had. Compare these:
In[1]:= q[f[x],x]/.x->{1≥x≤4}
ln[106]= q[f[x],x] /.{1<=x<=4}

Now if you need to use replacement rules and you need to start with {1<=x<=4} then I would look at

FullForm[{1<=x<=4}]

and see if you can think of a way to use rules to turn that into

{x,1,4}

If you can use replacement rules to accomplish that then you will be half way to then using that result as another replacement to turn x into {x,1,4}.

But you have two x that you have to worry about, one inside f[x] and one inside q[ ,x]. You only want to replace the second one, not the first one.

You might look at this
http://reference.wolfram.com/mathematica/ref/Replace.html
and pay particular attention to levelspec. Levels are not exactly obvious to a new user, but with the hint that you want to pay attention to that then you might be able to figure out how to have a replacment only change the particular x that you are wanting it to and leave the other x alone.

So look at that FullForm result and see if you can solve that problem first. Then you can study levels.

6. Feb 19, 2013

### izzy93

In[32] = q[f[x], x] /. x -> {1 <= x <= 4}
out[30]=q[{E^(-(1/2) (1 <= x <= 4)) (1 <= x <= 4)^2 Sin[
5 (1 <= x <= 4)]}, {1 <= x <= 4}]
which just substitutes in what I want the limits of x to be

In[1] = FullForm[{1 <= x <= 4}]
Out[2] = List[LessEqual[1,x,4]]

then I tried

In[3]= FullForm[{x >= 1, x <= 4}]
out[4] = List[GreaterEqual[x,1], LessEqual[x,4]]

Afraid I can't see how to turn it into {x,1,4}, is quite beyond me atm!

thanks

7. Feb 19, 2013

### Bill Simpson

In[1]:= {1≤x≤4}/.{l_<=v_<=h_}->{v,l,h}

Out[1]= {x,1,4}

So that just used your literal input to make a replacement rule.
Sometimes that won't work and sometimes it isn't obvious why.
In those cases you can sometimes use the FullForm of your
expression to make up your replacement rule.

Last edited: Feb 19, 2013
8. Feb 19, 2013

### izzy93

Ok it's odd but I think I see,
Thanks very much for your help