All Topics  
Josephus problem

 

   Email Print
   Bookmark   Link






 

Josephus problem



 
 
The Josephus problem (or Josephus permutation) is a theoretical problem occurring in computer science
Computer science

Computer science is the study of the theoretical foundations of information and computation, and of practical techniques for their implementation and application in computer systems....
 and mathematics
Mathematics

Mathematics is the study of quantity, structure, space, change, and related topics of pattern and form. Mathematicians seek out patterns whether found in numbers, space, natural science, computers, imaginary abstractions, or elsewhere....
.

There are people standing in a circle
Circle

A circle is a simple shape of Euclidean geometry consisting of those point in a plane which are the same distance from a given point called the center....
 waiting to be executed. After the first man is executed, certain number of people are skipped and one man is executed. Then again, people are skipped and a man is executed. The elimination proceeds around the circle (which is becoming smaller and smaller as the executed people are removed), until only the last man remains, who is given freedom.

The task is to choose the place in the initial circle so that you survive (are the last one remaining).

problem is named after Flavius Josephus, a Jewish historian living in the 1st century.






Discussion
Ask a question about 'Josephus problem'
Start a new discussion about 'Josephus problem'
Answer questions from other users
Full Discussion Forum



Encyclopedia


The Josephus problem (or Josephus permutation) is a theoretical problem occurring in computer science
Computer science

Computer science is the study of the theoretical foundations of information and computation, and of practical techniques for their implementation and application in computer systems....
 and mathematics
Mathematics

Mathematics is the study of quantity, structure, space, change, and related topics of pattern and form. Mathematicians seek out patterns whether found in numbers, space, natural science, computers, imaginary abstractions, or elsewhere....
.

There are people standing in a circle
Circle

A circle is a simple shape of Euclidean geometry consisting of those point in a plane which are the same distance from a given point called the center....
 waiting to be executed. After the first man is executed, certain number of people are skipped and one man is executed. Then again, people are skipped and a man is executed. The elimination proceeds around the circle (which is becoming smaller and smaller as the executed people are removed), until only the last man remains, who is given freedom.

The task is to choose the place in the initial circle so that you survive (are the last one remaining).

History

The problem is named after Flavius Josephus, a Jewish historian living in the 1st century. As the legend goes, he and his 40 comrade soldiers were trapped in a cave, surrounded by Romans. They chose suicide over capture and decided that they would form a circle and start killing themselves using a step of three. As Josephus did not want to die, he was able to find the safe place, and stayed alive with his comrade, later joining the Romans who captured them. (The only statement given by Josephus himself is that by luck, or maybe by the hand of God, he and another man remained the last and gave up to the Romans.)

Solution

We explicitly solve the problem when every 2nd person will be killed, i.e. . (For the more general case , we outline a solution below.) We express the solution recursively. Let denote the position of the survivor when there are initially people (and ). The first time around the circle, all of the even-numbered people die. The second time around the circle, the new 2nd person dies, then the new 4th person, etc; it's as though there were no first time around the circle. If the initial number of people was even, then the person in position during the second time around the circle was originally in position (for every choice of ). So the person in position was originally in position . This gives us the recurrence:



If the initial number of people was odd, then we think of person 1 as dying at the end of the first time around the circle. Again, during the second time around the circle, the new 2nd person dies, then the new 4th person, etc. In this case, the person in position was originally in position . This gives us the recurrence:

When we tabulate the values of and we see a pattern:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 1 3 1 3 5 7 1 3 5 7 9 11 13 15 1


This suggests that is an increasing odd sequence that restarts with whenever the index n is a power of 2. Therefore, if we choose m and l so that and , then . It is clear that values in the table satisfy this equation. But mathematics demands exact proof. Below, we give a proof by induction.

Theorem: If and , then .

Proof: We use strong induction on . The base case is true. We consider separately the cases when is even and when is odd.

If is even, then choose and such that and . Note that . We have , where the second equality follows from the induction hypothesis.

If is odd, then choose and such that and . Note that . We have , where the second equality follows from the induction hypothesis. This completes the proof.

The most elegant form of the answer involves the binary representation of size : can be obtained by a one-bit left cyclic shift of itself. If we represent in binary as , then the solution is given by . The proof of this follows from the representation of as .

The easiest way to solve this problem in the general case is to use dynamic programming
Dynamic programming

In mathematics and computer science, dynamic programming is a method of solving problems that exhibit the properties of overlapping subproblems and optimal substructure ....
. This approach gives us the recurrence:



which is evident when considering how the survivor number changes when switching from to . This approach has running time , but for small and large there is another approach. The second approach also uses dynamic programming but has running time . It is based on considering killing k-th, 2k-th, ..., -th people as one step, then changing the numbering.

Variants


According to Concrete Mathematics
Concrete Mathematics

Concrete Mathematics: A Foundation for Computer Science, by Ronald Graham, Donald Knuth, and Oren Patashnik, is a perennial textbook in university computer science departments....
, section 1.3, Josephus had an accomplice; the problem was then to find the places of the two last remaining survivors (whose conspiracy would ensure their survival).

External links


  • (Java Applet) at cut-the-knot
    Cut-the-knot

    Cut-the-knot is an educational website maintained by Alexander Bogomolny and devoted to popular exposition of a great variety of topics in mathematics....