$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r74810 - sandbox/SOC/2011/checks/libs/checks/doc
From: pierre.talbot.6114_at_[hidden]
Date: 2011-10-08 12:10:04
Author: trademark
Date: 2011-10-08 12:10:03 EDT (Sat, 08 Oct 2011)
New Revision: 74810
URL: http://svn.boost.org/trac/boost/changeset/74810
Log:
Add mail address.
Add error's testability content.
Correct typos.
Text files modified: 
   sandbox/SOC/2011/checks/libs/checks/doc/algorithm.qbk |     6 +++---                                  
   sandbox/SOC/2011/checks/libs/checks/doc/checks.qbk    |     2 +-                                      
   sandbox/SOC/2011/checks/libs/checks/doc/errors.qbk    |    27 +++++++++++++++++----------             
   3 files changed, 21 insertions(+), 14 deletions(-)
Modified: sandbox/SOC/2011/checks/libs/checks/doc/algorithm.qbk
==============================================================================
--- sandbox/SOC/2011/checks/libs/checks/doc/algorithm.qbk	(original)
+++ sandbox/SOC/2011/checks/libs/checks/doc/algorithm.qbk	2011-10-08 12:10:03 EDT (Sat, 08 Oct 2011)
@@ -20,9 +20,9 @@
 between the size or the efficiency.
 Critical numbers, for example, the __IBAN, use two check digits.
 
-The main difference with these algorithms (and the other checksum algorithms 
-such as CRC or cryptographic hashes) is that we don't analyse the binary 
-content of the sequence but the lexical values meaning, so "123" is equivalent to [~123]. 
+The main difference between these algorithms and the other checksum algorithms 
+such as CRC or cryptographic hashes is we don't analyse the binary content of the 
+sequence but the lexical values meaning, so "123" is equivalent to [~123]. 
 It also means we could skip the undesirable values.
 
 [section:checksum_algorithm Checksum algorithms]
Modified: sandbox/SOC/2011/checks/libs/checks/doc/checks.qbk
==============================================================================
--- sandbox/SOC/2011/checks/libs/checks/doc/checks.qbk	(original)
+++ sandbox/SOC/2011/checks/libs/checks/doc/checks.qbk	2011-10-08 12:10:03 EDT (Sat, 08 Oct 2011)
@@ -100,7 +100,7 @@
 [*https://svn.boost.org/svn/boost/sandbox/SOC/2011/checks/boost/checks/boost/ Boost Sandbox checks source code.]
 ] [/important]
 
-[note Comments and suggestions (even bugs!) to Pierre Talbot. ]
+[note Comments and suggestions (even bugs!) to Pierre Talbot ( ptalbot_at_[hidden] ) ]
 
 [endsect] [/section:status Status]
 
Modified: sandbox/SOC/2011/checks/libs/checks/doc/errors.qbk
==============================================================================
--- sandbox/SOC/2011/checks/libs/checks/doc/errors.qbk	(original)
+++ sandbox/SOC/2011/checks/libs/checks/doc/errors.qbk	2011-10-08 12:10:03 EDT (Sat, 08 Oct 2011)
@@ -10,7 +10,16 @@
 [section:errors Type of errors]
 
 This section will describe some common errors that an user or a device can make. 
-It will also discuss the efficiency of the algorithms studied.
+It will also discuss the factors that affect the testability of these errors. 
+We will focus on the weighted sum algorithms.
+
+A good test algorithm will satisfied these measurements :
+
+# Test each digit which influence the final result differently. This often include 
+a specific test for the check digit or the different weights.
+# Test these with all combinations the algorithm supports (it often the digit from 
+0 to 9 and sometimes letters from A to Z).
+
 
 [section:alteration Alteration]
 
@@ -18,15 +27,14 @@
 
 The single error is always detected if the modulus is equal or greater than the 
 range of the value in the number. For example, if an algorithm accept the values 
-0 to 9 and A to Z (whether 36 different values), the modulus should be greater 
+from 0 to 9 and A to Z (whether 36 different values), the modulus should be greater 
 or equal than 36. If it's respected, the single error will be detected.
 
-The Verhoeff algorithm detects all single error.
 
 [h5 Multiple error]
 
 If more than one digit is altered, a simple sum can't ensure that the check digit will be different.
-In fact it depends on the compensation of the altered digits. For example : 1 + 2 + 3 = 6. 
+In fact, it depends on the compensation of the altered digits. For example : 1 + 2 + 3 = 6. 
 If we alter 2 digits, the sum could become : 2 + 2 + 2 = 6. The result is equal because 1 + 3 = 2 + 2, 
 the digits altered are compensated. 
 
@@ -45,23 +53,22 @@
 [section:length Length]
 
 The length is not often a problem because many codes and numbers have a fixed length. 
-But if the user do not specify the size, an error could be uncaught if the check digit of
-the new sequence of digit is equal to the last digit of this sequence.
+But if the user doesn't specify the size, an error could be uncaught if the check digit of
+the new sequence is equal to the last digit of the old sequence.
 
 [endsect] [/section:length Length] 
 
 [section: Observations and summary]
 
 # An error in the checksum is detected if | new_checksum - checksum | != modulus.
-# The assertion: "new_checksum == checksum" doesn't mean that the number is error-free. 
-Digits can be compensated or the check digit altered.
-
-
+# The assertion: "check digit = check digit expected" doesn't mean that the number 
+is error-free. Digits can be compensated or the check digit altered.
 
 [table:summary Error catching summary
 [[][1 Alteration] [2 Alterations] [Twin transpositions] ]
 [[Luhn] [18/18 (100%)] [] [88/90 (97.78%)]]
 [[Verhoeff] [18/18 (100%)] [] [90/90 (100%)]]
+[ Other tests coming soon ! ]
 ]
 
 [endsect] [/section:errors Type of errors]