# FindInstance only satisfies half of my double inequality

FindInstance[
298973528525.436 < 10^10*(n - k*3.32192809488736) < 298973528539.862,
{n, k}, Integers
]


Result is: {{n -> 7507853441837, k -> 2260089089033}}

Checking these two integers in the expression between the inequality signs gives 298974609375, which satisfies the left inequality but not the right one. Is it because of limitations surrounding the size of numbers?

This all arose in my effort to find the smallest power of 2 that begins with 9 nines. To begin with 1 nine, the power needed is 53; to begin with 2 nines, the power has to be 93; 3 nines, power 2621; 4 nines, power 13301; 5 nines, power 254370; and so on. I suspect for the number to start with 9 nines the power will be in the trillions or higher. Values I used: 2^29.8973528526=999999999 and log(base 2) of 10 is 3.32192809488736

• What if you split the inequality into two with &&? Also, why not use the exact values, like Log2[999999999]? Commented Apr 23, 2016 at 4:13
• I tried both things you recommend and it did not help. I'm beginning to feel that FindInstance is seriously flawed. It works well for me sometimes - and then leaves me scratching my head on other occasions. Commented Apr 23, 2016 at 4:21
• My way of thinking with "heuristic" functions such as FindInstance[] goes like this: if it comes up with something, wonderful! If it doesn't, it just means I have more legwork to do. Commented Apr 23, 2016 at 9:24
• That is an excellent way to look at it. Commented Apr 23, 2016 at 20:43

eq1 = SetPrecision[298973528525.436 < 10^10*(n - k*3.32192809488736), 50];