Sure, Aaron I will open an issue for this.

On Thu, Jul 4, 2013 at 5:38 AM, Aaron Meurer <[email protected]> wrote:

> Yes, this functionality would be useful in a general setting (probably in
> the ntheory module). It would also be useful to have a class,
> ContinuedFraction, which can help with the abstractions of the continued
> fraction representation, especially the infinite ones. There is actually a
> lot of cool arithmetic you can do on continued fractions. The class would
> also handle printing.
>
> Of course, you shouldn't spend too much time away from the things you
> planned to do for GSoC, but if you find some free time, maybe you could
> look into it.  Otherwise, just open an issue.
>
> Aaron Meurer
>
>
> On Fri, Jun 28, 2013 at 11:56 AM, Thilina Rathnayake <
> [email protected]> wrote:
>
>>
>> Code segment I proposed should be changed as below. Otherwise it fails
>> when sqrt()'s are not involved.
>>
>>
>>     def continued_fraction(a, b):
>>         p = Wild('p')
>>         q = Wild('q')
>>         r = Wild('r')
>>
>>         a = Add(a)
>>
>>         match = a.match(p + r*sqrt(q))
>>         # and do the processing according to whether
>>         # q = 0 or not
>>
>>
>>
>> On Fri, Jun 28, 2013 at 10:00 PM, Thilina Rathnayake <
>> [email protected]> wrote:
>>
>>> One approach would be to have three inputs to continued_fraction()
>>> function
>>> corresponding to the general form of a quadratic irrational fraction (a
>>> + sqrt(b)) / c
>>> We can set  b = 0 for other cases. But I think it is not a good approach.
>>>
>>> Another approach would be to keep the current interface of
>>> continued_fraction()
>>> unchanged and pattern match to identify sqrt() s involved in the
>>> numerator.
>>>
>>>     def continued_fraction(a, b):
>>>         p = Wild('p')
>>>         q = Wild('q')
>>>         match = a.match(p + sqrt(q))
>>>         # and do the processing according to whether
>>>         # q = 0 or not
>>>
>>>
>>>
>>> On Fri, Jun 28, 2013 at 8:23 PM, Thilina Rathnayake <
>>> [email protected]> wrote:
>>>
>>>> Yes, that is where it should go. I don't think it will be that hard to
>>>> combine.
>>>> There is a Java code <http://www.alpertron.com.ar/CONTFRAC.HTM> that
>>>> is used in Dario Alpern's website.
>>>>
>>>> I need the continued_fraction representation of quadratic irrational
>>>> numbers
>>>> in the Diophantine equation module. I can implement it in diophantine
>>>> module
>>>> but I think that does not belong there. We should implement it in
>>>> ntheory
>>>> and then use it in Diophantine module. Shall I start on this?
>>>>
>>>>
>>>>
>>>> On Fri, Jun 28, 2013 at 8:49 AM, Stephen Loo <[email protected]>wrote:
>>>>
>>>>> I have considered this, in quantum module, the continued_fraction
>>>>> function is only work for rational number a/b = continued_fraction(a, b),
>>>>> but my function above is work for float and depending on the precision. I
>>>>> don't know how to combine into single function, and it is not suggested to
>>>>> place in quantum module, it should be in ntheory.
>>>>>
>>>>> Stephen
>>>>>
>>>>> Thilina Rathnayake於 2013年6月28日星期五UTC+8上午10時58分36秒寫道:
>>>>>>
>>>>>>
>>>>>> Thanks guys for the help. Shouldn't we add this functionality to the
>>>>>> current continued_fraction or
>>>>>> add a new function to SymPy so user can use it directly?
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Fri, Jun 28, 2013 at 7:45 AM, Stephen Loo <[email protected]>wrote:
>>>>>>
>>>>>>> def continued_fraction(r):
>>>>>>>     while True:
>>>>>>>         i = int(r)
>>>>>>>         yield i
>>>>>>>         if i == r:
>>>>>>>             break
>>>>>>>         r = 1 / (r - i)
>>>>>>>
>>>>>>>
>>>>>>> Thilina Rathnayake於 2013年6月28日星期五UTC+**8上午4時16分34秒寫道:
>>>>>>>
>>>>>>>> Hi all,
>>>>>>>>
>>>>>>>> Is there a function in sympy which gives the continued fraction
>>>>>>>> representation
>>>>>>>> of quadratic irrationalities like, (sqrt(17) + 5 ) / 4?
>>>>>>>>
>>>>>>>> I found an implementation of a continued fraction function in
>>>>>>>> Shor's algorithm:
>>>>>>>> http://docs.sympy.org/dev/**modu**les/physics/quantum/shor.**html<http://docs.sympy.org/dev/modules/physics/quantum/shor.html>
>>>>>>>>
>>>>>>>> But it doesn't seem to give correct results when irrationalities
>>>>>>>> are involved.
>>>>>>>>
>>>>>>>> >>> from sympy.physics.quantum.shor import continued_fraction
>>>>>>>>> >>> continued_fraction(sqrt(17)+5, 4)
>>>>>>>>> [2, 4]
>>>>>>>>>
>>>>>>>>
>>>>>>>> Actual answer should be 2, [3, 1, 1] with the numbers inside []
>>>>>>>> repeating forever.
>>>>>>>> Any help would be appreciated.
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>> Thilina.
>>>>>>>> .
>>>>>>>>
>>>>>>>  --
>>>>>>> You received this message because you are subscribed to the Google
>>>>>>> Groups "sympy" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>>> send an email to sympy+un...@**googlegroups.com.
>>>>>>> To post to this group, send email to [email protected].
>>>>>>>
>>>>>>> Visit this group at 
>>>>>>> http://groups.google.com/**group/sympy<http://groups.google.com/group/sympy>
>>>>>>> .
>>>>>>> For more options, visit 
>>>>>>> https://groups.google.com/**groups/opt_out<https://groups.google.com/groups/opt_out>
>>>>>>> .
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>  --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "sympy" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to [email protected].
>>>>> To post to this group, send email to [email protected].
>>>>> Visit this group at http://groups.google.com/group/sympy.
>>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>
>>
>> Thilina Rathnayake,
>>
>> Undergraduate,
>>
>> Dept. of Comp. Sci.
>>
>> UoM.
>> [image: 
>> LinkedIn]<http://s.wisestamp.com/links?url=http%3A%2F%2Flk.linkedin.com%2Fpub%2Fthilina-bandara-rathnayake%2F35%2F36a%2F50%2F>
>>  “"A casual stroll through the lunatic asylum shows that faith does not
>> prove anything." - Friedrich 
>> Nietzsche<http://s.wisestamp.com/links?url=http%3A%2F%2Fwww.quotesdaddy.com%2Fquote%2F477550%2Ffriedrich-nietzsche%2Fa-casual-stroll-through-the-lunatic-asylum-shows-that>
>> ”  Get this email app! 
>> <http://s.wisestamp.com/links?url=http%3A%2F%2Fwww.wisestamp.com%2Fapps%2Fquotes%3Futm_source%3Dextension%26utm_medium%3Demail%26utm_term%3Dquotes%26utm_campaign%3Dapps>
>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "sympy" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at http://groups.google.com/group/sympy.
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>>
>>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "sympy" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/sympy.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sympy.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to