Difference between revisions of "Sudoku"
From BP Wiki
		
		
		
 (Created page with "= Sudoku =  In this example one can see two properties of behavioral programming  * How different heuristics and pieces of knowledge about the problem domain can be used separ...")  | 
				|||
| Line 1: | Line 1: | ||
| − | = Sudoku =    | + | = Sudoku =  | 
| − | In this example one can see two properties of behavioral programming    | + | In this example one can see two properties of behavioral programming  | 
| − | * How different heuristics and pieces of knowledge about the problem domain can be used separately to program an application   | + | * How different heuristics and pieces of knowledge about the problem domain can be used separately to program an application  | 
* How model-checking can be used to help find a desired scenario.  | * How model-checking can be used to help find a desired scenario.  | ||
| − | = Requirements =    | + | = Requirements =  | 
| − | In the cells of a 9X9 grid which is also divided into 9 3X3 boxes, place the digits 1-9 such that in each row, column and box, each digit appears exactly once.    | + | In the cells of a 9X9 grid which is also divided into 9 3X3 boxes, place the digits 1-9 such that in each row, column and box, each digit appears exactly once.  | 
= Events =  | = Events =  | ||
* Move: A single event class with 9X9X9 = 721 instances. The class has 5 data fields:  | * Move: A single event class with 9X9X9 = 721 instances. The class has 5 data fields:  | ||
| − | ** number: the number written in the cell  (1-9)    | + | ** number: the number written in the cell  (1-9)  | 
| − | ** row: The row  of the cell (1-9)    | + | ** row: The row  of the cell (1-9)  | 
** col: the column of the cell  (1-9)  | ** col: the column of the cell  (1-9)  | ||
| − | ** boxrow: The row of the 3X3 box in which this cell resides (1-3)    | + | ** boxrow: The row of the 3X3 box in which this cell resides (1-3)  | 
| − | ** boxcol: the column of the 3X3 box in which this cell resides (1-3)    | + | ** boxcol: the column of the 3X3 box in which this cell resides (1-3)  | 
| + | The triggering of the event symbolizes the writing of the digit in the associated cell.  | ||
| − | |||
| − | + | == b-threads ==  | |
| − | == b-threads ==    | + | |
* DefaultMove: Each of the 81 instances of this b-thread class, is associated with a cell, and requests all possible 9 digits  | * DefaultMove: Each of the 81 instances of this b-thread class, is associated with a cell, and requests all possible 9 digits  | ||
Revision as of 11:18, 15 April 2014
Contents
Sudoku
In this example one can see two properties of behavioral programming
- How different heuristics and pieces of knowledge about the problem domain can be used separately to program an application
 - How model-checking can be used to help find a desired scenario.
 
Requirements
In the cells of a 9X9 grid which is also divided into 9 3X3 boxes, place the digits 1-9 such that in each row, column and box, each digit appears exactly once.
Events
-  Move: A single event class with 9X9X9 = 721 instances. The class has 5 data fields:
- number: the number written in the cell (1-9)
 - row: The row of the cell (1-9)
 - col: the column of the cell (1-9)
 - boxrow: The row of the 3X3 box in which this cell resides (1-3)
 - boxcol: the column of the 3X3 box in which this cell resides (1-3)
 
 
The triggering of the event symbolizes the writing of the digit in the associated cell.
b-threads
- DefaultMove: Each of the 81 instances of this b-thread class, is associated with a cell, and requests all possible 9 digits