Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Checking weather any positive number is zero or not

  1. Jul 1, 2011 #1
    I would like to have a function f such that f(0) = 0 and f(x) = 1 for any x>0. I can compute f in the following way:

    f(x) = (2*x+1)/2 - (2*x-1)/2 . Here the division is integer division. But if x=0, here we divide (2*0-1)/2 or -1/2, which is a problem. Because we do not have any number -1 here.

    We can also compute f(x) as follows
    f(x) = ((2*x+3) % 2*(x-1)+3)/2 . Here % is remainder. This is also a problem because we are doing something like x%y which is nonlinear. To be clear x%2 is allowed, but x%y is not allowed.

    So, can anyone help me constructing such a function which is linear and over positive integer and all operation will be integer operation? Or can anyone tell me that it is not possible to construct f with such restriction?

    I really appreciate any help.
    NB: f simply checks weather any positive number is zero or not and return 0 if 0 ;else return -1.
    Thanks a lot...
     
  2. jcsd
  3. Jul 1, 2011 #2
    "So, can anyone help me constructing such a function which is linear"

    The function you are describing is non-linear by definition. So no, there is no linear function that can give the output:

    f(0) = 0 and f(x) = 1 for any x>0


    There is a piecewise linear function:

    f(x) = { 0 if x=0
    1 otherwise



    But someone who knows math better than me may demonstrate this wrong...
     
  4. Jul 1, 2011 #3

    gb7nash

    User Avatar
    Homework Helper

    For all integers greater than 0 or for all real numbers greater than 0?

    If you want it for all real numbers greater than 0, you could use the piecewise function the previous poster suggested. If you weren't looking for a piecewise function, a continuous function does not exist. By the IVT, it's impossible to have a continuous function with this property.

    With integers, it's possible.

    This example doesn't work. f(x) = (2*x+1)/2 - (2*x-1)/2 = x + (1/2) - x - (1/2) = 0, so really, this just says that f(x) = 0.

    I'm not sure what your definition of remainder is here.

    Why not f(n) = [n/(n+1)], where [] is the ceiling function?
     
  5. Jul 1, 2011 #4
    Dear gb7nash

    Thanks for your reply.

    "For all integers greater than 0 or for all real numbers greater than 0?"
    I am considering natural numbers including 0.

    "This example doesn't work. f(x) = (2*x+1)/2 - (2*x-1)/2 = x + (1/2) - x - (1/2) = 0, so really, this just says that f(x) = 0.
    "
    f(x) = (2*x+1)/2 - (2*x-1)/2 works because you have to consider (2*x-1) as a whole number. you should not simplify it. look when x=2, f(2)= (2*2+1)/2 - (2*2-1)/2 = 5/2-3/2= 2-1=1.

    "I'm not sure what your definition of remainder is here."

    c=a%b , d= a/b => a=d*b +c

    "Why not f(n) = [n/(n+1)], where [] is the ceiling function?"

    Since I am considering only positive integer number including 0, probably i cannot represent ceiling.

    Thanks...
     
  6. Jul 6, 2011 #5
    f(x) = x^0 works but I don't know if that's quite what you're looking for.
     
  7. Jul 6, 2011 #6
    Isn't the ceiling function notation ⌈x⌉ rather than the whole [x]
     
  8. Jul 6, 2011 #7

    gb7nash

    User Avatar
    Homework Helper

    Yes, but I can't find ⌈⌉ on the keyboard. :tongue:
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook




Similar Discussions: Checking weather any positive number is zero or not
  1. Can any real number (Replies: 24)

  2. Total number of zeros. (Replies: 9)

Loading...