MathGroup Archive 2007

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: How to parse result from Reduce[ ] function


Anton Vrba wrote:
> Hi,
>  
> The output of a Reduce[...] function call is
>  
> C[1](element)Integers &&
> x==358537039003+2964364736430689 C[1] &&
> y==28744265823+237656026328741 C[1] &&
> p==205319+1697566324 C[1]
>  
> but I want to use the values  after the p== i.e. 205319 and 1697566324 for further calculation in my program
>  
> How do I obtain these? other than by manual cut and paste.
>  
> Thanks for your help
> best regards
> Anton
> 

A combination of Cases and transformation rules should do the trick.

In[1]:=
sol = C[1] â?? Integers && x == 358537039003 +
       2964364736430689*C[1] &&
     y == 28744265823 + 237656026328741*C[1] &&
     p == 205319 + 1697566324*C[1];

In[2]:=
savedvalues = Flatten[
    Cases[sol, p == (val_) -> val] /. Plus -> List /.
     C[1] -> 1]

Out[2]=
{205319, 1697566324}

In[3]:=
First[savedvalues]

Out[3]=
205319

In[4]:=
Last[savedvalues]

Out[4]=
1697566324

Regards,
Jean-Marc


  • Prev by Date: Re: List manipulation
  • Next by Date: Re: How to parse result from Reduce[ ] function
  • Previous by thread: Re: How to parse result from Reduce[ ] function
  • Next by thread: Re: How to parse result from Reduce[ ] function