# HG changeset patch
# User Sebastian Pancratz <sage@pancratz.org>
# Date 1263776557 28800
# Node ID 35eeb5638d35ea3e5be154acd3c54233326d169d
# Parent 21efb0b3fc474972b5c7f617d99173536a3d79d0
Small 3-line change conversing rationals to integers.
diff -r 21efb0b3fc47 -r 35eeb5638d35 sage/combinat/combinat.py
|
a
|
b
|
|
| 454 | 454 | |
| 455 | 455 | :: |
| 456 | 456 | |
| 457 | | sage: lucas = lambda n:(5/2)*lucas_number1(n,1,-1)+(1/2)*lucas_number2(n,1,-1) |
| | 457 | sage: lucas = lambda n : Integers((5/2)*lucas_number1(n,1,-1)+(1/2)*lucas_number2(n,1,-1)) |
| 458 | 458 | sage: [[lucas(n),is_prime(lucas(n)),n+1,is_prime(n+1)] for n in range(15)] |
| 459 | 459 | [[1, False, 1, False], |
| 460 | 460 | [3, True, 2, True], |
diff -r 21efb0b3fc47 -r 35eeb5638d35 sage/rings/arith.py
|
a
|
b
|
|
| 4148 | 4148 | x = int(sqrt(m)) |
| 4149 | 4149 | if mod(x,2) == 0: |
| 4150 | 4150 | x = x - 1 |
| 4151 | | p = (m-x**2)/2 |
| | 4151 | p = (m-x**2) // 2 |
| 4152 | 4152 | while not is_prime(p): |
| 4153 | 4153 | x = x - 2 |
| 4154 | | p = (m-x**2)/2 |
| | 4154 | p = (m-x**2) // 2 |
| 4155 | 4155 | if x < 0: |
| 4156 | 4156 | # fall back to brute force |
| 4157 | 4157 | m = m + d |