# Correction log for the proofread edition

Version 2 · 30 October 2026

All 201 supplied PDF pages were compared individually with the reconstruction. This log records transcription and structure corrections; issues already present in the source are documented separately. Source page numbers below refer to physical PDF pages.

## PF1-001 · PDF page 18 · printed page 8

Category: FOOTNOTE_BOUNDARY. [View source page](https://cbr.purposebuilt.app/reader#page-18).

Before:

````text
* From http://smi-web.stanford.edu/projects/history.html#DENDRAL DENDRAL began as an effort to explore the mechanisation of scientific reasoning and the formalisation of scientific knowledge by working within a specific domain of science, organic chemistry. Another concern was to use AI methodology to better understand some fundamental questions in the philosophy of science, including the process by which explanatory hypotheses are discovered or judged adequate. After more than a decade of collaboration among chemists, geneticists, and computer scientists, DENDRAL had become not only a successful demonstration of the power of rule-based expert systems, but also a significant tool for molecular structure analysis in both academic and industrial research labs. Using a plan-generate-test search paradigm and data from mass spectrometry and other sources, DENDRAL proposes plausible candidate structures for new or unknown chemical compounds. Its performance rivals that of human experts for certain classes of organic compounds, resulting in a number of published papers in the chemical literature. Although no longer a topic of academic research, the most recent version of the interactive structure generator, GENOA, has been licensed by Stanford University for commercial use.
````

After:

````text
* From http://smi-web.stanford.edu/projects/history.html#DENDRAL

DENDRAL began as an effort to explore the mechanisation of scientific reasoning and the formalisation of scientific knowledge by working within a specific domain of science, organic chemistry. Another concern was to use AI methodology to better understand some fundamental questions in the philosophy of science, including the process by which explanatory hypotheses are discovered or judged adequate. After more than a decade of collaboration among chemists, geneticists, and computer scientists, DENDRAL had become not only a successful demonstration of the power of rule-based expert systems, but also a significant tool for molecular structure analysis in both academic and industrial research labs. Using a plan-generate-test search paradigm and data from mass spectrometry and other sources, DENDRAL proposes plausible candidate structures for new or unknown chemical compounds. Its performance rivals that of human experts for certain classes of organic compounds, resulting in a number of published papers in the chemical literature. Although no longer a topic of academic research, the most recent version of the interactive structure generator, GENOA, has been licensed by Stanford University for commercial use.
````

## PF1-002 · PDF page 19 · printed page 9

Category: FOOTNOTE_BOUNDARY. [View source page](https://cbr.purposebuilt.app/reader#page-19).

Before:

````text
† From http://smi-web.stanford.edu/projects/history.html#MYCIN MYCIN is an interactive program that diagnoses certain infectious diseases, prescribes antimicrobial therapy, and can explain its reasoning in detail. In a controlled test, its performance equalled that of specialists. In addition, the MYCIN program incorporated several important AI developments. MYCIN extended the notion that the knowledge base should be separate from the inference engine, and its rule-based inference engine was built on a backward-chaining, or goal-directed, control strategy. Since it was designed as a consultant for physicians, MYCIN was given the ability to explain both its line of reasoning and its knowledge. Because of the rapid pace of developments in medicine, the knowledge base was designed for easy augmentation. Furthermore, because medical diagnosis often involves a degree of uncertainty, MYCIN's rules incorporated certainty factors to indicate the importance (i.e., likelihood and risk) of a conclusion. Although MYCIN was never used routinely by physicians, it has substantially influenced other AI research. At the HPP, MYCIN led to work in TEIRESIAS, EMYCIN, PUFF, CENTAUR, VM, GUIDON, and SACON (described below), and to ONCOCIN and ROGET. The book, Rule-Based Expert System: The MYCIN Experiment at the Stanford Heuristic Programming Project, describes the decade of research on MYCIN and its descendants.
````

After:

````text
† From http://smi-web.stanford.edu/projects/history.html#MYCIN

MYCIN is an interactive program that diagnoses certain infectious diseases, prescribes antimicrobial therapy, and can explain its reasoning in detail. In a controlled test, its performance equalled that of specialists. In addition, the MYCIN program incorporated several important AI developments. MYCIN extended the notion that the knowledge base should be separate from the inference engine, and its rule-based inference engine was built on a backward-chaining, or goal-directed, control strategy. Since it was designed as a consultant for physicians, MYCIN was given the ability to explain both its line of reasoning and its knowledge. Because of the rapid pace of developments in medicine, the knowledge base was designed for easy augmentation. Furthermore, because medical diagnosis often involves a degree of uncertainty, MYCIN's rules incorporated certainty factors to indicate the importance (i.e., likelihood and risk) of a conclusion. Although MYCIN was never used routinely by physicians, it has substantially influenced other AI research. At the HPP, MYCIN led to work in TEIRESIAS, EMYCIN, PUFF, CENTAUR, VM, GUIDON, and SACON (described below), and to ONCOCIN and ROGET. The book, Rule-Based Expert System: The MYCIN Experiment at the Stanford Heuristic Programming Project, describes the decade of research on MYCIN and its descendants.
````

## PF1-003 · PDF page 24 · printed page 14

Category: DISPLAY_BOUNDARY. [View source page](https://cbr.purposebuilt.app/reader#page-24).

Before:

````text
The inference of fuzzy implications generalizes two kinds of logic inference using the implications in classical logic: modus ponens and modus tollens. The logic inferences can e briefly illustrated here, using the following implication: IF a person’s IQ is high THEN the person is smart.
````

After:

````text
The inference of fuzzy implications generalizes two kinds of logic inference using the implications in classical logic: modus ponens and modus tollens. The logic inferences can e briefly illustrated here, using the following implication:

IF a person’s IQ is high THEN the person is smart.
````

## PF1-004 · PDF page 24 · printed page 14

Category: DISPLAY_BOUNDARY. [View source page](https://cbr.purposebuilt.app/reader#page-24).

Before:

````text
Given: Jack’s IQ is High → Jack is Smart. Jack’s IQ is somewhat High.
````

After:

````text
Given: Jack’s IQ is High → Jack is Smart.

Jack’s IQ is somewhat High.
````

## PF1-005 · PDF page 26 · printed page 16

Category: DISPLAY_BOUNDARY. [View source page](https://cbr.purposebuilt.app/reader#page-26).

Before:

````text
IF The motor is hot THEN Shut the motor down
````

After:

````text
IF The motor is hot

THEN Shut the motor down
````

## PF1-006 · PDF page 26 · printed page 16

Category: BULLET_PARAGRAPH_BOUNDARY. [View source page](https://cbr.purposebuilt.app/reader#page-26).

Before:

````text
• The motor’s temperature is hot We would not have an exact match and the rule would not fire. As humans, we can easily interpret these two statements as meaning the same thing as the antecedent of the example, but the computer is unforgiving of difference in the statement’s syntax.
````

After:

````text
• The motor’s temperature is hot

We would not have an exact match and the rule would not fire. As humans, we can easily interpret these two statements as meaning the same thing as the antecedent of the example, but the computer is unforgiving of difference in the statement’s syntax.
````

## PF1-007 · PDF page 28 · printed page 18

Category: OCR_TEXT_OR_PUNCTUATION. [View source page](https://cbr.purposebuilt.app/reader#page-28).

Before:

````text
Scripts were proposed as a structure for conceptual memory, describing information about stereotypical events such as going to a restaurant or visiting a doctor. However, experiments on scripts demonstrated they were not a complete theory of memory representation - people often confuse events that have similar scripts. For example, a person might mix up room scenes from a visit to a doctor’s office with a visit to a dentist’s office.
````

After:

````text
Scripts were proposed as a structure for conceptual memory, describing information about stereotypical events such as going to a restaurant or visiting a doctor. However, experiments on scripts demonstrated they were not a complete theory of memory representation – people often confuse events that have similar scripts. For example, a person might mix up room scenes from a visit to a doctor’s office with a visit to a dentist’s office.
````

## PF1-008 · PDF page 30 · printed page 20

Category: OCR_TEXT_OR_PUNCTUATION. [View source page](https://cbr.purposebuilt.app/reader#page-30).

Before:

````text
Goker and Roth-Berghofer [15] adapted this methodology to improve their old model for their existing help desk support system HOMER, which was originally developed by Goker, Roth- Berghofer, Bergmann, Pantleon, Traphoner, Wess, and Wilke [15]. The original CBR process model involved four main tasks: retrieve, reuse, revise, and retain. The improved model was broken down into two cycles, namely the application cycle and the maintenance cycle, with two newly added tasks: recycle and refine. The two process cycles allow the two cycles to work more autonomously and independently of each other. The flexibility for this help desk system to be used in a dynamic, corporate environment by a large group of users was the outcome.
````

After:

````text
Goker and Roth-Berghofer [15] adapted this methodology to improve their old model for their existing help desk support system HOMER, which was originally developed by Goker, Roth-Berghofer, Bergmann, Pantleon, Traphoner, Wess, and Wilke [15]. The original CBR process model involved four main tasks: retrieve, reuse, revise, and retain. The improved model was broken down into two cycles, namely the application cycle and the maintenance cycle, with two newly added tasks: recycle and refine. The two process cycles allow the two cycles to work more autonomously and independently of each other. The flexibility for this help desk system to be used in a dynamic, corporate environment by a large group of users was the outcome.
````

## PF1-009 · PDF page 31 · printed page 21

Category: OCR_TEXT_OR_PUNCTUATION. [View source page](https://cbr.purposebuilt.app/reader#page-31).

Before:

````text
Similar to information retrieval, CBR relies heavily on algorithms to retrieve cases efficiently. A category of these algorithms is Nearest Neighbour, which is also well known and intensively studied for the solution of classification and pattern recognition problems. Short and Fukunaga [35] introduced the Value Difference Metric and the Euclidean-Hamming metrics, which were accepted and used in the field of information theory until recently. Blanzieri and Ricci [5] extended SF2 from the Short, and Fukunaga metric, with its definition to input spaces with nominal features, and introduced a different estimate for the density probability used in this metric. They also modified SF2 metric to be the Minimum Risk Metric (MRM) by optimising the risk of misclassification instead. The MRM proved was less restrictive than SF2, and thus seemed particularly suitable for CBR applications when a relevant classification of the cases is available. Further work was required to address in depth the relation between MRM and the base mathematical theory, as well as to explore the performances of the metrics in higher dimensions and their sensitivity to noisy data.
````

After:

````text
Similar to information retrieval, CBR relies heavily on algorithms to retrieve cases efficiently. A category of these algorithms is Nearest Neighbour, which is also well known and intensively studied for the solution of classification and pattern recognition problems. Short and Fukunaga [35] introduced the Value Difference Metric and the Euclidean-Hamming metrics, which were accepted and used in the field of information theory until recently. Blanzieri and Ricci [5] extended SF2 from the Short. and Fukunaga metric, with its definition to input spaces with nominal features, and introduced a different estimate for the density probability used in this metric. They also modified SF2 metric to be the Minimum Risk Metric (MRM) by optimising the risk of misclassification instead. The MRM proved was less restrictive than SF2, and thus seemed particularly suitable for CBR applications when a relevant classification of the cases is available. Further work was required to address in depth the relation between MRM and the base mathematical theory, as well as to explore the performances of the metrics in higher dimensions and their sensitivity to noisy data.
````

## PF1-010 · PDF page 36 · printed page 26

Category: FOOTNOTE_BULLET_BOUNDARY. [View source page](https://cbr.purposebuilt.app/reader#page-36).

Before:

````text
• Documents originally intended for the print medium can easily be re-adapted for other media, such as the computer display screen. The language that this Web browser uses, Hypertext Mark-up Language (HTML), is an example of an SGML-based language. There is a document type definition for HTML (and reading the HTML specification is effectively reading an expanded version of the document type definition). SGML is based somewhat on earlier generalised mark-up languages developed at IBM, including General Mark-up Language (GML) and ISIL.
````

After:

````text
• Documents originally intended for the print medium can easily be re-adapted for other media, such as the computer display screen.

The language that this Web browser uses, Hypertext Mark-up Language (HTML), is an example of an SGML-based language. There is a document type definition for HTML (and reading the HTML specification is effectively reading an expanded version of the document type definition). SGML is based somewhat on earlier generalised mark-up languages developed at IBM, including General Mark-up Language (GML) and ISIL.
````

## PF1-011 · PDF page 42 · printed page 32

Category: BULLET_PARAGRAPH_BOUNDARY. [View source page](https://cbr.purposebuilt.app/reader#page-42).

Before:

````text
• suggesting which factors the users should focus on when comparing and contrasting new situations and their solutions to old ones in order to determine if an old outcome can apply to a new situation. The outcomes of the old situations can be projected on the new ones, allowing the outcome of the new solutions to be predicted. When different old cases can be used to predict different outcomes, the factors suggested by case-based advisory systems can also help the users to do argumentation (i.e., to determine which of the old cases are similar enough to the new one for the projection to make sense). This process has the potential to help the users in several ways. First,
````

After:

````text
• suggesting which factors the users should focus on when comparing and contrasting new situations and their solutions to old ones in order to determine if an old outcome can apply to a new situation.

The outcomes of the old situations can be projected on the new ones, allowing the outcome of the new solutions to be predicted. When different old cases can be used to predict different outcomes, the factors suggested by case-based advisory systems can also help the users to do argumentation (i.e., to determine which of the old cases are similar enough to the new one for the projection to make sense). This process has the potential to help the users in several ways. First,
````

## PF1-012 · PDF page 43 · printed page 33

Category: WRAPPED_HEADING. [View source page](https://cbr.purposebuilt.app/reader#page-43).

Before:

````text
2.6 Goal-based Scenario’s (GBS) Top-down Approach
````

After:

````text
2.6 Goal-based Scenario’s (GBS) Top-down Approach to Design
````

## PF1-013 · PDF page 47 · printed page 37

Category: BULLET_PARAGRAPH_BOUNDARY. [View source page](https://cbr.purposebuilt.app/reader#page-47).

Before:

````text
• Choose to follow up a question to go to another case screen If he/she chooses to view the full case, a story in the form of a short video is presented. When the user finishes viewing or reading the first case, they are brought back to the case screen. He/she could then follow the links to another case screen and repeat the cycle.
````

After:

````text
• Choose to follow up a question to go to another case screen

If he/she chooses to view the full case, a story in the form of a short video is presented. When the user finishes viewing or reading the first case, they are brought back to the case screen. He/she could then follow the links to another case screen and repeat the cycle.
````

## PF1-014 · PDF page 50 · printed page 40

Category: OCR_TEXT_OR_PUNCTUATION. [View source page](https://cbr.purposebuilt.app/reader#page-50).

Before:

````text
The four components - retrieve, reuse, revise, and retain - are described in detail below. Each component is listed alongside the key issues involved in its implementation, as well as the unique knowledge necessary for that component’s successful use.
````

After:

````text
The four components - retrieve, reuse, revise, and retain – are described in detail below. Each component is listed alongside the key issues involved in its implementation, as well as the unique knowledge necessary for that component’s successful use.
````

## PF1-015 · PDF page 51 · printed page 41

Category: CAPTION_PARAGRAPH_BOUNDARY. [View source page](https://cbr.purposebuilt.app/reader#page-51).

Before:

````text
Figure 2-1: Aamodt & Plaza's CBR cycle [1] Ian Watson proposed an improved version that contains an additional two activities:
````

After:

````text
Figure 2-1: Aamodt & Plaza's CBR cycle [1]

Ian Watson proposed an improved version that contains an additional two activities:
````

## PF1-016 · PDF page 35 · printed page 25

Category: FOOTNOTE_CLASSIFICATION. [View source page](https://cbr.purposebuilt.app/reader#page-35).

Before:

````text
‡ SGML is a standard for specifying a document mark-up language or tag set. Such a specification is a document type definition (DTD). SGML is not a document language, but a description of how to specify one. It is metadata. SGML is based on the idea that documents have structural and other semantic elements that can be described without reference to how such elements should be displayed. The actual display of such a document may vary depending on the output medium and style preferences. Some advantages of documents based on SGML are:
````

After:

````text
‡ SGML is a standard for specifying a document mark-up language or tag set. Such a specification is a document type definition (DTD). SGML is not a document language, but a description of how to specify one. It is metadata. SGML is based on the idea that documents have structural and other semantic elements that can be described without reference to how such elements should be displayed. The actual display of such a document may vary depending on the output medium and style preferences. Some advantages of documents based on SGML are:
````

## PF1-017 · PDF page 35 · printed page 25

Category: FOOTNOTE_CLASSIFICATION. [View source page](https://cbr.purposebuilt.app/reader#page-35).

Before:

````text
• They can be created by thinking in terms of document structure rather than appearance characteristics (which may change over time).
````

After:

````text
• They can be created by thinking in terms of document structure rather than appearance characteristics (which may change over time).
````

## PF1-018 · PDF page 36 · printed page 26

Category: FOOTNOTE_CLASSIFICATION. [View source page](https://cbr.purposebuilt.app/reader#page-36).

Before:

````text
• They will be more portable because an SGML compiler can interpret any document by reference to its document type definition (DTD).
````

After:

````text
• They will be more portable because an SGML compiler can interpret any document by reference to its document type definition (DTD).
````

## PF1-019 · PDF page 56 · printed page 46

Category: NATIVE_MATH_SOURCE_FIDELITY. [View source page](https://cbr.purposebuilt.app/reader#page-56).

Before:

````text
d_{ij}=(\mathbf{c}_j-\mathbf{x}_i)'S^{-1}(\mathbf{c}_j-\mathbf{x}_i)
````

After:

````text
d_{ij}=(c_j-x_i)'S^{-1}(c_j-x_i)
````

## PF1-020 · PDF page 59 · printed page 49

Category: NATIVE_MATH_SOURCE_FIDELITY. [View source page](https://cbr.purposebuilt.app/reader#page-59).

Before:

````text
2^{D_1}\times 2^{D_2}\times\cdots\times 2^{D_k}
````

After:

````text
2_1^D\,x\,2_2^D\,x\,\ldots\,x\,2_k^D
````

## PF1-021 · PDF page 59 · printed page 49

Category: OCR_TEXT_OR_PUNCTUATION. [View source page](https://cbr.purposebuilt.app/reader#page-59).

Before:

````text
In a similarity-based fuzzy relation, the impreciseness of attribute values is primarily in their meaning. For example, the values of the attribute EXPERTISE in the relation shown in PROFILE Relation often partially overlap. The overlapping degree of these areas of expertise is specified by a similarity matrix such as the one shown in table 2-3. In addition to imprecision due to semantics, a similarity-based fuzzy relation could also describe imprecision due to incomplete information. For example, we may wish to describe that the age of a suspect is 19 or 20. To do this, an attribute in a tuple is allowed to have a set of values, which describe all possible values for the attribute in the tuple. A similarity-based fuzzy relation involving domains D₁, D₂, ..., Dₖ is thus a subset of the Cartesian product 2^(D₁) × 2^(D₂) × ... × 2^(Dₖ). Furthermore, as we discussed earlier, the values in domains D₁, D₂, ..., Dₖ are related by a similarity relations S₁, S₂, ..., Sₖ that map each pair of values in a domain to the interval [0,1]. A similarity measure of 1 means that the pair is identical, whereas a similarity measure of 0 means the pair is entirely different.
````

After:

````text
In a similarity-based fuzzy relation, the impreciseness of attribute values is primarily in their meaning. For example, the values of the attribute EXPERTISE in the relation shown in PROFILE Relation often partially overlap. The overlapping degree of these areas of expertise is specified by a similarity matrix such as the one shown in table 2-3. In addition to imprecision due to semantics, a similarity-based fuzzy relation could also describe imprecision due to incomplete information. For example, we may wish to describe that the age of a suspect is 19 or 20. To do this, an attribute in a tuple is allowed to have a set of values, which describe all possible values for the attribute in the tuple. A similarity-based fuzzy relation involving domains D₁, D₂, ..., Dₖ is thus a subset of the Cartesian product 2_1^D x 2_2^D x ... x 2_k^D. Furthermore, as we discussed earlier, the values in domains D₁, D₂, ..., Dₖ are related by a similarity relations S₁, S₂, ..., Sₖ that map each pair of values in a domain to the interval [0,1]. A similarity measure of 1 means that the pair is identical, whereas a similarity measure of 0 means the pair is entirely different.
````

## PF1-022 · PDF page 63 · printed page 53

Category: LIST_INTRODUCTION_BOUNDARY. [View source page](https://cbr.purposebuilt.app/reader#page-63).

Before:

````text
Two techniques that may be applicable: 1. Parametric Search is common and often combined with keyword or stepwise (hierarchical) searches to improve functionality. In this approach, the user enters one or more values for attributes of the product. The attributes of the parameters can generally be numeric or symbolic. A parametric search acts like a filter and is, in effect, the same as a database query - it meets all of the search criteria exactly or it fails. Some parametric search systems provide ranges and sets of values to overcome the limitations of the database approach, but “No match found!” is still a common occurrence. Some implementations of this approach use the product code and manufacturer’s code as the parameters, meaning that the user must know the product he/she wants before starting the search.
````

After:

````text
Two techniques that may be applicable:

1. Parametric Search is common and often combined with keyword or stepwise (hierarchical) searches to improve functionality. In this approach, the user enters one or more values for attributes of the product. The attributes of the parameters can generally be numeric or symbolic. A parametric search acts like a filter and is, in effect, the same as a database query - it meets all of the search criteria exactly or it fails. Some parametric search systems provide ranges and sets of values to overcome the limitations of the database approach, but “No match found!” is still a common occurrence. Some implementations of this approach use the product code and manufacturer’s code as the parameters, meaning that the user must know the product he/she wants before starting the search.
````

## PF1-023 · PDF page 63 · printed page 53

Category: NESTED_LIST_RECONSTRUCTION. [View source page](https://cbr.purposebuilt.app/reader#page-63).

Before:

````text
2. Another approach is the Nearest Neighbour method of searching, also called an Intelligent Parametric Search. This approach is a key output from CBR research and is the basis for the INRECA Catalogue Search applications (INRECA, 99). The characteristics of the problem domain that make “nearest neighbour” so effective are as follows: o Student needs to search the knowledge base (a.k.a. product space) in its entirety o Cases in the knowledge base will be similar in terms of their characteristics and their structure o Student generally does not need an exact match as each student’s profile is quite individually unique - the optimum match will suffice o Student needs the ability to negotiate with the search system o No match found is an unacceptable outcome from a search
````

After:

````text
2. Another approach is the Nearest Neighbour method of searching, also called an Intelligent Parametric Search. This approach is a key output from CBR research and is the basis for the INRECA Catalogue Search applications (INRECA, 99). The characteristics of the problem domain that make “nearest neighbour” so effective are as follows:

○ Student needs to search the knowledge base (a.k.a. product space) in its entirety

○ Cases in the knowledge base will be similar in terms of their characteristics and their structure

○ Student generally does not need an exact match as each student’s profile is quite individually unique - the optimum match will suffice

○ Student needs the ability to negotiate with the search system

○ No match found is an unacceptable outcome from a search
````

## PF1-024 · PDF page 67 · printed page 57

Category: TITLE_URL_PARAGRAPH_BOUNDARY. [View source page](https://cbr.purposebuilt.app/reader#page-67).

Before:

````text
North Dakota State University (http://www.ndsu.nodak.edu/instruct/mcclean/ag_www/advise.htm#useful) This is typical of the most common approach. North Dakota simply posts all requirements and relevant information on the Web. Students still have to make their own decision on what courses to take each semester. All general education and major requirements are defined clearly and concisely on the Web.
````

After:

````text
North Dakota State University

(http://www.ndsu.nodak.edu/instruct/mcclean/ag_www/advise.htm#useful)

This is typical of the most common approach. North Dakota simply posts all requirements and relevant information on the Web. Students still have to make their own decision on what courses to take each semester. All general education and major requirements are defined clearly and concisely on the Web.
````

## PF1-025 · PDF page 67 · printed page 57

Category: TITLE_URL_PARAGRAPH_BOUNDARY. [View source page](https://cbr.purposebuilt.app/reader#page-67).

Before:

````text
INSITE (Indiana Student Information Transaction Environment), Indiana University http://insite.indiana.edu/ INSITE is a Web-based service for Indiana University students, faculty, and staff. It provides secure access to student information. For students, access to information is protected by a Student ID number (SIDN) and PIN. The following information is available through INSITE:
````

After:

````text
INSITE (Indiana Student Information Transaction Environment), Indiana University

http://insite.indiana.edu/

INSITE is a Web-based service for Indiana University students, faculty, and staff. It provides secure access to student information. For students, access to information is protected by a Student ID number (SIDN) and PIN. The following information is available through INSITE:
````

## P068-STRUCT-001 · PDF page 68 · printed page 58

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-68).

Structural or native-object change:

````text
{"paragraph_index": 7, "split_before": ["http://ar.byu.edu/dept_academ_advise/sect3.htm", "Academic Advisement at BYU"]}
````

## P068-STRUCT-002 · PDF page 68 · printed page 58

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-68).

Structural or native-object change:

````text
{"paragraph_index": 8, "split_before": ["http://csumb.edu/student/services/registration/", "Planner Web for student advising"]}
````

## P068-STRUCT-003 · PDF page 68 · printed page 58

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-68).

Structural or native-object change:

````text
{"paragraph_index": 9, "split_before": ["http://pmac.aas.duke.edu/", "The website doubles"]}
````

## P069-STRUCT-001 · PDF page 69 · printed page 59

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-69).

Structural or native-object change:

````text
{"paragraph_index": 0, "split_before": ["http://www.acadweb.wwu.edu/advising/gur_humanities.html", "At West Washington University"]}
````

## P069-STRUCT-002 · PDF page 69 · printed page 59

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-69).

Structural or native-object change:

````text
{"paragraph_index": 1, "split_before": ["http://www.ncsu.edu/advising_central/advisers/preprof.html", "Advising Central at NC State"]}
````

## P079-STRUCT-001 · PDF page 79 · printed page 69

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-79).

Structural or native-object change:

````text
{"paragraph_index": 2, "delete_count": 2, "replacement": [["heading", "3.7 Internet-based expert system for selecting an academic major"]]}
````

## P080-STRUCT-001 · PDF page 80 · printed page 70

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-80).

Structural or native-object change:

````text
{"paragraph_index": 0, "delete_count": 3, "replacement": [["heading", "Chapter 4 Applying CBR to automate Academic Advisement"]]}
````

## P085-STRUCT-001 · PDF page 85 · printed page 75

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-85).

Structural or native-object change:

````text
{"paragraph_index": 0, "replacement": [["heading", "4.2.1.1 1st year"], ["text", "Every student shares a common 1st year structure and every course is compulsory:"]]}
````

## P085-STRUCT-002 · PDF page 85 · printed page 75

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-85).

Structural or native-object change:

````text
{"paragraph_index": 5, "replacement": [["heading", "4.2.1.2 2nd year"], ["text", "Students begin to narrow towards a specialisation by selecting compulsory electives from two streams:"]]}
````

## P085-STRUCT-003 · PDF page 85 · printed page 75

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-85).

Structural or native-object change:

````text
{"paragraph_index": 11, "replacement": [["heading", "4.2.1.3 3rd year"], ["text", "Students decide on which of the two streams will be their major for the degree outcome. From this year onwards, specialisation within majors becomes possible:"]]}
````

## P086-STRUCT-001 · PDF page 86 · printed page 76

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-86).

Structural or native-object change:

````text
{"paragraph_index": 0, "replacement": [["heading", "4.2.1.4 4th year"], ["text", "Most courses in this year will be electives from within their major, and students can choose to specialise in one area or to spread their electives across other relevant fields to gain broader knowledge, rather than depth:"]]}
````

## P086-STRUCT-002 · PDF page 86 · printed page 76

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-86).

Structural or native-object change:

````text
{"paragraph_index": 8, "split_before": ["Students should finish", "Normal load per year", "Students must fulfil", "Failed compulsory courses"]}
````

## P087-STRUCT-001 · PDF page 87 · printed page 77

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-87).

Structural or native-object change:

````text
{"paragraph_index": 1, "split_before": ["“Electives can be used"]}
````

## P087-STRUCT-002 · PDF page 87 · printed page 77

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-87).

Structural or native-object change:

````text
{"paragraph_index": 2, "split_before": ["“Some students may wish"]}
````

## P093-STRUCT-001 · PDF page 93 · printed page 83

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-93).

Structural or native-object change:

````text
{"paragraph_index": 1, "split_before": ["Equal."]}
````

## P093-STRUCT-002 · PDF page 93 · printed page 83

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-93).

Structural or native-object change:

````text
{"paragraph_index": 2, "split_before": ["A: {", "B: {", "C: {"]}
````

## P098-STRUCT-001 · PDF page 98 · printed page 88

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-98).

Structural or native-object change:

````text
{"paragraph_index": 8, "split_before": ["i. Value -2"]}
````

## P099-STRUCT-001 · PDF page 99 · printed page 89

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-99).

Structural or native-object change:

````text
{"paragraph_index": 0, "split_before": ["1. Local similarity functions", "2. Attribute weights", "3. An amalgamation function"]}
````

## P099-STRUCT-002 · PDF page 99 · printed page 89

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-99).

Structural or native-object change:

````text
{"paragraph_index": 4, "split_before": ["1. Core courses"]}
````

## P100-STRUCT-001 · PDF page 100 · printed page 90

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-100).

Structural or native-object change:

````text
{"paragraph_index": 5, "replacement": [["heading", "4.5.2 3-pass process of Stream Elective decision"]]}
````

## P104-STRUCT-001 · PDF page 104 · printed page 94

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-104).

Structural or native-object change:

````text
{"paragraph_index": 11, "split_before": ["Core courses:"]}
````

## P105-STRUCT-001 · PDF page 105 · printed page 95

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-105).

Structural or native-object change:

````text
{"paragraph_index": 1, "split_before": ["Core courses:", "Pick 1 stream elective", "Pick 1 free elective"]}
````

## P105-STRUCT-002 · PDF page 105 · printed page 95

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-105).

Structural or native-object change:

````text
{"paragraph_index": 2, "split_before": ["Core courses:", "Pick 1 stream elective", "Pick 2 free electives"]}
````

## P106-STRUCT-001 · PDF page 106 · printed page 96

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-106).

Structural or native-object change:

````text
{"paragraph_index": 0, "split_before": ["○ Results", "○ Availability", "○ Stream Preference", "○ Previous Academic Year"]}
````

## P106-STRUCT-002 · PDF page 106 · printed page 96

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-106).

Structural or native-object change:

````text
{"paragraph_index": 1, "split_before": ["○ Strong recommendation"]}
````

## P107-STRUCT-001 · PDF page 107 · printed page 97

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-107).

Structural or native-object change:

````text
{"paragraph_index": 0, "split_before": ["○ Microcontroller", "○ Internetworking", "○ Software"]}
````

## P107-STRUCT-002 · PDF page 107 · printed page 97

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-107).

Structural or native-object change:

````text
{"paragraph_index": 6, "split_before": ["○ YRSCRR", "○ YRSCRS"]}
````

## P107-STRUCT-003 · PDF page 107 · printed page 97

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-107).

Structural or native-object change:

````text
{"paragraph_index": 7, "split_before": ["○ EXPT", "○ PRST", "○ TOUGH"]}
````

## P107-STRUCT-004 · PDF page 107 · printed page 97

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-107).

Structural or native-object change:

````text
{"paragraph_index": 8, "split_before": ["○ EXAM", "○ ASGN"]}
````

## P108-STRUCT-001 · PDF page 108 · printed page 98

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-108).

Structural or native-object change:

````text
{"paragraph_index": 1, "replacement": [["heading", "4.5.5.3 Conversational CBR"], ["text", "CCBR needs to find out the following:"]]}
````

## P111-STRUCT-001 · PDF page 111 · printed page 101

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-111).

Structural or native-object change:

````text
{"paragraph_index": 2, "split_before": ["HDs →", "DI/HD →", "CR/DI →", "PA/CR →", "PAs →"]}
````

## P111-STRUCT-002 · PDF page 111 · printed page 101

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-111).

Structural or native-object change:

````text
{"paragraph_index": 5, "replacement": [["heading", "4.5.5.4 Proof of Concept - Test Cases"], ["text", "Legends of Test Cases using MS Excel"]]}
````

## P112-STRUCT-001 · PDF page 112 · printed page 102

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-112).

Structural or native-object change:

````text
{"paragraph_index": 6, "replacement": [["text", "Sequence of Prerequisites"], ["text", "D1 → D2 → D3"], ["text", "O1 → O2 → O3"], ["text", "O1,M1 → OM2 → OM3"], ["text", "M1 → M2"], ["text", "M1,N2 → MN3"], ["text", "N1,N2,S2 → NS3 (note: N1 is NOT a prerequisite for N2)"], ["text", "S1 → S2 → S3"]]}
````

## P113-STRUCT-001 · PDF page 113 · printed page 103

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-113).

Structural or native-object change:

````text
{"paragraph_index": 4, "split_before": ["For INT,"]}
````

## P118-STRUCT-001 · PDF page 118 · printed page 108

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-118).

Structural or native-object change:

````text
{"paragraph_index": 3, "delete_count": 2, "replacement": []}
````

## P119-STRUCT-001 · PDF page 119 · printed page 109

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-119).

Structural or native-object change:

````text
{"paragraph_index": 0, "delete_count": 3, "replacement": [["heading", "4.5.9.2 Object Model"], ["text", "Figure 4-2 below shows the aggregation between knowledge base and smaller objects that make up one case."]]}
````

## P120-STRUCT-001 · PDF page 120 · printed page 110

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-120).

Structural or native-object change:

````text
{"paragraph_index": 0, "delete_count": 4, "replacement": [["heading", "4.5.9.3 Entity-Relationship Diagram"], ["text", "Figure 4-3 below shows the Entity-Relationship (ER) diagram of the database, as the knowledge or case base is stored in MySQL database software."]]}
````

## P121-STRUCT-001 · PDF page 121 · printed page 111

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-121).

Structural or native-object change:

````text
{"paragraph_index": 0, "delete_count": 9, "replacement": [["heading", "4.5.9.4 System Operation"], ["text", "Figure 4-4 below gives the system flow of control in the form of a UML Activity Diagram. This is the high level flow and shows the sequence of major operations and the two main loops in the prototype system."]]}
````

## P123-STRUCT-001 · PDF page 123 · printed page 113

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-123).

Structural or native-object change:

````text
{"paragraph_index": 4, "split_before": ["(Q2)"]}
````

## P123-STRUCT-002 · PDF page 123 · printed page 113

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-123).

Structural or native-object change:

````text
{"paragraph_index": 5, "split_before": ["Jack’s GPA is between"]}
````

## P123-STRUCT-003 · PDF page 123 · printed page 113

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-123).

Structural or native-object change:

````text
{"paragraph_index": 6, "split_before": ["Whether a student’s GPA"]}
````

## P124-STRUCT-001 · PDF page 124 · printed page 114

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-124).

Structural or native-object change:

````text
{"paragraph_index": 5, "split_before": ["Necessity is the counterpart"]}
````

## P124-STRUCT-002 · PDF page 124 · printed page 114

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-124).

Structural or native-object change:

````text
{"paragraph_index": 6, "split_before": ["Nec(A intersection B)", "Pos(A union B)"]}
````

## P124-STRUCT-003 · PDF page 124 · printed page 114

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-124).

Structural or native-object change:

````text
{"paragraph_index": 7, "split_before": ["Necessity for A is", "Possibility for A is"]}
````

## P126-STRUCT-001 · PDF page 126 · printed page 116

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-126).

Structural or native-object change:

````text
{"paragraph_index": 1, "split_before": ["1. The combination", "2. Distance of two vectors", "3. Trivial Information Retrieval"]}
````

## P127-STRUCT-001 · PDF page 127 · printed page 117

Category: complete-page structural correction. [View source page](https://cbr.purposebuilt.app/reader#page-127).

Structural or native-object change:

````text
{"paragraph_index": 8, "replacement": [["text", "That is,"], ["text", "2[(X+Y)+(X+2Y)+(X+3Y)+(X+4Y)+(X+5Y)]=[(X+6Y)+(X+7Y)+(X+8Y)+(X+9Y)+(X+10Y)]."], ["text", "This equates to X=2Y."]]}
````

## P068-001 · PDF page 68 · printed page 58

Category: punctuation. [View source page](https://cbr.purposebuilt.app/reader#page-68).

Before:

````text
Student Planning System - Brigham Young University
````

After:

````text
Student Planning System – Brigham Young University
````

## P072-001 · PDF page 72 · printed page 62

Category: punctuation. [View source page](https://cbr.purposebuilt.app/reader#page-72).

Before:

````text
policies and regulations - such as
````

After:

````text
policies and regulations – such as
````

## P072-002 · PDF page 72 · printed page 62

Category: punctuation. [View source page](https://cbr.purposebuilt.app/reader#page-72).

Before:

````text
and pass-fail - in an automated fashion
````

After:

````text
and pass-fail – in an automated fashion
````

## P075-001 · PDF page 75 · printed page 65

Category: hyphenation. [View source page](https://cbr.purposebuilt.app/reader#page-75).

Before:

````text
real­ time data
````

After:

````text
real-time data
````

## P075-002 · PDF page 75 · printed page 65

Category: punctuation. [View source page](https://cbr.purposebuilt.app/reader#page-75).

Before:

````text
exceptions -global and individual - exist.
````

After:

````text
exceptions – global and individual – exist.
````

## P077-001 · PDF page 77 · printed page 67

Category: heading punctuation. [View source page](https://cbr.purposebuilt.app/reader#page-77).

Before:

````text
Basic Services - Text Information
````

After:

````text
Basic Services – Text Information
````

## P077-002 · PDF page 77 · printed page 67

Category: punctuation. [View source page](https://cbr.purposebuilt.app/reader#page-77).

Before:

````text
Online forms - applications and requests for information
````

After:

````text
Online forms – applications and requests for information
````

## P081-001 · PDF page 81 · printed page 71

Category: punctuation. [View source page](https://cbr.purposebuilt.app/reader#page-81).

Before:

````text
ways of doing business - the current
````

After:

````text
ways of doing business – the current
````

## P081-002 · PDF page 81 · printed page 71

Category: punctuation. [View source page](https://cbr.purposebuilt.app/reader#page-81).

Before:

````text
structure and practices -and identify
````

After:

````text
structure and practices – and identify
````

## P086-001 · PDF page 86 · printed page 76

Category: hyphenation. [View source page](https://cbr.purposebuilt.app/reader#page-86).

Before:

````text
over­ enrolling
````

After:

````text
over-enrolling
````

## P088-001 · PDF page 88 · printed page 78

Category: hyphenation. [View source page](https://cbr.purposebuilt.app/reader#page-88).

Before:

````text
pre-re­ enrolment survey
````

After:

````text
pre-re-enrolment survey
````

## P089-001 · PDF page 89 · printed page 79

Category: proper-name OCR. [View source page](https://cbr.purposebuilt.app/reader#page-89).

Before:

````text
Marcus Jurgens
````

After:

````text
Marcus Jürgens
````

## P089-002 · PDF page 89 · printed page 79

Category: range punctuation. [View source page](https://cbr.purposebuilt.app/reader#page-89).

Before:

````text
A= 0 - 4
````

After:

````text
A= 0 – 4
````

## P091-001 · PDF page 91 · printed page 81

Category: quotation punctuation. [View source page](https://cbr.purposebuilt.app/reader#page-91).

Before:

````text
appropriate times - problem of assigning labels
````

After:

````text
appropriate times – problem of assigning labels
````

## P096-001 · PDF page 96 · printed page 86

Category: hyphenation. [View source page](https://cbr.purposebuilt.app/reader#page-96).

Before:

````text
For non­ selected field
````

After:

````text
For non-selected field
````

## P097-001 · PDF page 97 · printed page 87

Category: grade-mapping punctuation. [View source page](https://cbr.purposebuilt.app/reader#page-97).

Before:

````text
1 for PA, 2 - CR, 3 - DI and 4 - HD
````

After:

````text
1 for PA, 2 – CR, 3 – DI and 4 – HD
````

## P097-002 · PDF page 97 · printed page 87

Category: grade-mapping punctuation. [View source page](https://cbr.purposebuilt.app/reader#page-97).

Before:

````text
-1 for NN, 0 - PA, 1 - CR, 2 - DI and 3 - HD
````

After:

````text
-1 for NN, 0 – PA, 1 – CR, 2 – DI and 3 – HD
````

## P098-001 · PDF page 98 · printed page 88

Category: numeric-label spacing. [View source page](https://cbr.purposebuilt.app/reader#page-98).

Before:

````text
Value-2 assigns
````

After:

````text
Value -2 assigns
````

## P098-002 · PDF page 98 · printed page 88

Category: numeric-list spacing. [View source page](https://cbr.purposebuilt.app/reader#page-98).

Before:

````text
10,8,6 and 4
````

After:

````text
10, 8, 6 and 4
````

## P098-003 · PDF page 98 · printed page 88

Category: numeric-list spacing. [View source page](https://cbr.purposebuilt.app/reader#page-98).

Before:

````text
10,4,2 and 1
````

After:

````text
10, 4, 2 and 1
````

## P098-004 · PDF page 98 · printed page 88

Category: omitted algorithm step number. [View source page](https://cbr.purposebuilt.app/reader#page-98).

Before:

````text
Display the ranked course list
````

After:

````text
5. Display the ranked course list
````

## P102-001 · PDF page 102 · printed page 92

Category: hyphenation. [View source page](https://cbr.purposebuilt.app/reader#page-102).

Before:

````text
non­ technical electives
````

After:

````text
non-technical electives
````

## P102-002 · PDF page 102 · printed page 92

Category: hyphenation. [View source page](https://cbr.purposebuilt.app/reader#page-102).

Before:

````text
non­ stream electives
````

After:

````text
non-stream electives
````

## P103-001 · PDF page 103 · printed page 93

Category: punctuation and spacing. [View source page](https://cbr.purposebuilt.app/reader#page-103).

Before:

````text
prerequisite course -assuming
````

After:

````text
prerequisite course – assuming
````

## P106-001 · PDF page 106 · printed page 96

Category: nested list-marker OCR. [View source page](https://cbr.purposebuilt.app/reader#page-106).

Before:

````text
o Results of
````

After:

````text
○ Results of
````

## P106-002 · PDF page 106 · printed page 96

Category: nested list-marker OCR. [View source page](https://cbr.purposebuilt.app/reader#page-106).

Before:

````text
o Availability of
````

After:

````text
○ Availability of
````

## P106-003 · PDF page 106 · printed page 96

Category: nested list-marker OCR. [View source page](https://cbr.purposebuilt.app/reader#page-106).

Before:

````text
o Stream Preference
````

After:

````text
○ Stream Preference
````

## P106-004 · PDF page 106 · printed page 96

Category: nested list-marker OCR. [View source page](https://cbr.purposebuilt.app/reader#page-106).

Before:

````text
o Previous Academic Year
````

After:

````text
○ Previous Academic Year
````

## P106-005 · PDF page 106 · printed page 96

Category: nested list-marker OCR. [View source page](https://cbr.purposebuilt.app/reader#page-106).

Before:

````text
o Strong recommendation list
````

After:

````text
○ Strong recommendation list
````

## P107-001 · PDF page 107 · printed page 97

Category: nested list-marker OCR. [View source page](https://cbr.purposebuilt.app/reader#page-107).

Before:

````text
o Mobile Communication
````

After:

````text
○ Mobile Communication
````

## P107-002 · PDF page 107 · printed page 97

Category: nested list-marker OCR. [View source page](https://cbr.purposebuilt.app/reader#page-107).

Before:

````text
o Microcontroller
````

After:

````text
○ Microcontroller
````

## P107-003 · PDF page 107 · printed page 97

Category: nested list-marker OCR. [View source page](https://cbr.purposebuilt.app/reader#page-107).

Before:

````text
o Internetworking Protocols
````

After:

````text
○ Internetworking Protocols
````

## P107-004 · PDF page 107 · printed page 97

Category: nested list-marker OCR. [View source page](https://cbr.purposebuilt.app/reader#page-107).

Before:

````text
o Software Engineering
````

After:

````text
○ Software Engineering
````

## P107-005 · PDF page 107 · printed page 97

Category: nested list-marker OCR. [View source page](https://cbr.purposebuilt.app/reader#page-107).

Before:

````text
o YRSCRR
````

After:

````text
○ YRSCRR
````

## P107-006 · PDF page 107 · printed page 97

Category: nested list-marker OCR. [View source page](https://cbr.purposebuilt.app/reader#page-107).

Before:

````text
o YRSCRS
````

After:

````text
○ YRSCRS
````

## P107-007 · PDF page 107 · printed page 97

Category: nested list-marker OCR. [View source page](https://cbr.purposebuilt.app/reader#page-107).

Before:

````text
o EXPT
````

After:

````text
○ EXPT
````

## P107-008 · PDF page 107 · printed page 97

Category: nested list-marker OCR. [View source page](https://cbr.purposebuilt.app/reader#page-107).

Before:

````text
o PRST
````

After:

````text
○ PRST
````

## P107-009 · PDF page 107 · printed page 97

Category: nested list-marker OCR. [View source page](https://cbr.purposebuilt.app/reader#page-107).

Before:

````text
o TOUGH
````

After:

````text
○ TOUGH
````

## P107-010 · PDF page 107 · printed page 97

Category: nested list-marker OCR. [View source page](https://cbr.purposebuilt.app/reader#page-107).

Before:

````text
o EXAM
````

After:

````text
○ EXAM
````

## P107-011 · PDF page 107 · printed page 97

Category: nested list-marker OCR. [View source page](https://cbr.purposebuilt.app/reader#page-107).

Before:

````text
o ASGN
````

After:

````text
○ ASGN
````

## P111-001 · PDF page 111 · printed page 101

Category: line-wrap spacing. [View source page](https://cbr.purposebuilt.app/reader#page-111).

Before:

````text
(6- 10)
````

After:

````text
(6-10)
````

## P111-002 · PDF page 111 · printed page 101

Category: arrow symbol transcription. [View source page](https://cbr.purposebuilt.app/reader#page-111).

Before:

````text
HDs -> 86-100%
````

After:

````text
HDs → 86-100%
````

## P111-003 · PDF page 111 · printed page 101

Category: arrow symbol transcription. [View source page](https://cbr.purposebuilt.app/reader#page-111).

Before:

````text
DI/HD ->77-85%
````

After:

````text
DI/HD → 77-85%
````

## P111-004 · PDF page 111 · printed page 101

Category: arrow symbol transcription. [View source page](https://cbr.purposebuilt.app/reader#page-111).

Before:

````text
CR/DI ->67-76%
````

After:

````text
CR/DI → 67-76%
````

## P111-005 · PDF page 111 · printed page 101

Category: arrow symbol transcription. [View source page](https://cbr.purposebuilt.app/reader#page-111).

Before:

````text
PA/CR -> 58-66%
````

After:

````text
PA/CR → 58-66%
````

## P111-006 · PDF page 111 · printed page 101

Category: arrow symbol transcription. [View source page](https://cbr.purposebuilt.app/reader#page-111).

Before:

````text
PAs -> 50-57%
````

After:

````text
PAs → 50-57%
````

## P112-001 · PDF page 112 · printed page 102

Category: label spacing. [View source page](https://cbr.purposebuilt.app/reader#page-112).

Before:

````text
level): 1 -weak
````

After:

````text
level): 1-weak
````

## P114-001 · PDF page 114 · printed page 104

Category: hyphenation. [View source page](https://cbr.purposebuilt.app/reader#page-114).

Before:

````text
three sub­ systems
````

After:

````text
three sub-systems
````

## P126-001 · PDF page 126 · printed page 116

Category: source capitalization. [View source page](https://cbr.purposebuilt.app/reader#page-126).

Before:

````text
distance of non-interest attributes
````

After:

````text
distance of non-Interest attributes
````

## ROOT-P129-C001 · PDF page 129 · printed page 119

Category: Restore printed left and right permutation subscripts. [View source page](https://cbr.purposebuilt.app/reader#page-129).

Before:

````text
(5P3)
````

After:

````text
(₅P₃)
````

## ROOT-P131-C002 · PDF page 131 · printed page 121

Category: Vector spacing. [View source page](https://cbr.purposebuilt.app/reader#page-131).

Before:

````text
(1,2, 1, 3, 2,3, 1, 2)
````

After:

````text
(1, 2, 1, 3, 2, 3, 1, 2)
````

## ROOT-P131-C003 · PDF page 131 · printed page 121

Category: Vector spacing. [View source page](https://cbr.purposebuilt.app/reader#page-131).

Before:

````text
(0,2, 0, 3,1, 2,3)
````

After:

````text
(0, 2, 0, 3, 1, 2, 3)
````

## ROOT-P131-C004 · PDF page 131 · printed page 121

Category: Course identifier OCR zero versus letter O. [View source page](https://cbr.purposebuilt.app/reader#page-131).

Before:

````text
NS7, NM5, 02.
````

After:

````text
NS7, NM5, O2.
````

## ROOT-P131-C005 · PDF page 131 · printed page 121

Category: Vector spacing. [View source page](https://cbr.purposebuilt.app/reader#page-131).

Before:

````text
(0,3, 0,1, 2,1,1)
````

After:

````text
(0, 3, 0, 1, 2, 1, 1)
````

## ROOT-P132-C006 · PDF page 132 · printed page 122

Category: Vector spacing. [View source page](https://cbr.purposebuilt.app/reader#page-132).

Before:

````text
(3, 2, 0, 0,1, 2,2)
````

After:

````text
(3, 2, 0, 0, 1, 2, 2)
````

## ROOT-P132-C007 · PDF page 132 · printed page 122

Category: Vector spacing. [View source page](https://cbr.purposebuilt.app/reader#page-132).

Before:

````text
(0, 3,1, 2, 0,1, 3)
````

After:

````text
(0, 3, 1, 2, 0, 1, 3)
````

## ROOT-P132-C008 · PDF page 132 · printed page 122

Category: Vector spacing. [View source page](https://cbr.purposebuilt.app/reader#page-132).

Before:

````text
(0,1, 0,3, 2,1,3)
````

After:

````text
(0, 1, 0, 3, 2, 1, 3)
````

## ROOT-P133-C009 · PDF page 133 · printed page 123

Category: Course identifier OCR zero versus letter O. [View source page](https://cbr.purposebuilt.app/reader#page-133).

Before:

````text
NS7, S8, and 02.
````

After:

````text
NS7, S8, and O2.
````

## ROOT-P133-C010 · PDF page 133 · printed page 123

Category: Vector spacing. [View source page](https://cbr.purposebuilt.app/reader#page-133).

Before:

````text
(0,1,3, 0, 2, 2,3)
````

After:

````text
(0, 1, 3, 0, 2, 2, 3)
````

## ROOT-P133-C011 · PDF page 133 · printed page 123

Category: Vector spacing. [View source page](https://cbr.purposebuilt.app/reader#page-133).

Before:

````text
(0, 0 ,1 ,2 ,3 ,2 ,1 )
````

After:

````text
(0, 0, 1, 2, 3, 2, 1)
````

## ROOT-P134-C012 · PDF page 134 · printed page 124

Category: Vector spacing. [View source page](https://cbr.purposebuilt.app/reader#page-134).

Before:

````text
(1, 2, 0, 0, 3,1, 2)
````

After:

````text
(1, 2, 0, 0, 3, 1, 2)
````

## ROOT-P134-C013 · PDF page 134 · printed page 124

Category: Course identifier OCR lowercase l versus digit 1. [View source page](https://cbr.purposebuilt.app/reader#page-134).

Before:

````text
OM3, and D l.
````

After:

````text
OM3, and D1.
````

## ROOT-P134-C014 · PDF page 134 · printed page 124

Category: Vector spacing. [View source page](https://cbr.purposebuilt.app/reader#page-134).

Before:

````text
(1, 1,0, 1,0, 1,0, 1)
````

After:

````text
(1, 1, 0, 1, 0, 1, 0, 1)
````

## ROOT-P134-C015 · PDF page 134 · printed page 124

Category: Vector spacing. [View source page](https://cbr.purposebuilt.app/reader#page-134).

Before:

````text
(0, 2, 0 ,3 ,1 ,3 ,3 )
````

After:

````text
(0, 2, 0, 3, 1, 3, 3)
````

## ROOT-P132-S001 · PDF page 132 · printed page 122

Category: Separate source heading from following regular paragraph. [View source page](https://cbr.purposebuilt.app/reader#page-132).

Before:

````text
4.7.2.3 Test case (3, 2, 0, 0,1, 2,2) Translation of the attributes vector:
````

After:

````text
[["heading", "4.7.2.3 Test case (3, 2, 0, 0, 1, 2, 2)"], ["text", "Translation of the attributes vector:"]]
````

## ROOT-P134-S001 · PDF page 134 · printed page 124

Category: Separate source heading from following regular paragraph. [View source page](https://cbr.purposebuilt.app/reader#page-134).

Before:

````text
4.7.2.8 Test case (1, 2, 0, 0, 3,1, 2) Translation of the attributes vector:
````

After:

````text
[["heading", "4.7.2.8 Test case (1, 2, 0, 0, 3, 1, 2)"], ["text", "Translation of the attributes vector:"]]
````

## P093-M01 · PDF page 93 · printed page 83

Category: formula sentence punctuation. [View source page](https://cbr.purposebuilt.app/reader#page-93).

Before:

````text
\sqrt{\frac{0.75}{2^i}}
````

After:

````text
\sqrt{\frac{0.75}{2^i}}.
````

## P093-M02 · PDF page 93 · printed page 83

Category: formula sentence punctuation. [View source page](https://cbr.purposebuilt.app/reader#page-93).

Before:

````text
1-\frac{1+i}{1+n}
````

After:

````text
1-\frac{1+i}{1+n}.
````

## P113-M01 · PDF page 113 · printed page 103

Category: source formula connective. [View source page](https://cbr.purposebuilt.app/reader#page-113).

Before:

````text
{}_5P_3=\frac{5!}{(5-3)!}=60
````

After:

````text
{}_5P_3\ \text{or}\ \frac{5!}{(5-3)!}=60
````

## chapter-4-title-case · PDF page 80 · printed page 70

Category: source heading capitalization. [View source page](https://cbr.purposebuilt.app/reader#page-80).

Before:

````text
Chapter 4 Applying CBR to Automate Academic Advisement
````

After:

````text
Chapter 4 Applying CBR to automate Academic Advisement
````

## P118-F01 · PDF page 118 · printed page 108

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-118).

Structural or native-object change:

````text
{"id": "P118-F01", "pdf_page": 118, "selector": {"kind": "figure", "id": "figure-4-1"}, "action": "retain_source_image_and_verified_labels; do not emit linearized OCR as thesis prose", "verified_labels": ["Problem", "Server", "Data Retriever", "Similarity Calculator", "Recommender Agent", "Case base", "Student"], "note": "The existing prose-like OCR omitted Problem and split Case base. These are diagram labels, not a source paragraph; the image preserves the layout and connections."}
````

## P119-F01 · PDF page 119 · printed page 109

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-119).

Structural or native-object change:

````text
{"id": "P119-F01", "pdf_page": 119, "selector": {"kind": "figure", "id": "figure-4-2"}, "action": "retain_source_image; remove garbled OCR from running prose", "verified_labels": ["Knowledge Base", "Case", "PastPerformance", "Specialization", "Interests", "DSP", "Optics", "Microwave", "Networking", "Satellite", "Courses", "Course", "CourseName", "Pre-requisite"], "readable_method_stems": ["GetCase", "SetCase", "RetrieveCase", "GetInterest", "SetInterest", "MatchInterest", "GetCourses", "SetCourses", "CheckPrereq"], "uncertain_details": ["Exact operation-parenthesis glyphs are degraded or intersect box borders.", "Multiplicity near Knowledge Base begins with0 but following notation is not reliably readable.", "Several attribute/operation visibility icons and box-edge symbols are degraded; do not infer plus/minus/cardinality values."], "note": "Method stems are readable, but must not be promoted to exact executable signatures. Preserve original figure as the controlling image."}
````

## P120-F01 · PDF page 120 · printed page 110

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-120).

Structural or native-object change:

````text
{"id": "P120-F01", "pdf_page": 120, "selector": {"kind": "figure", "id": "figure-4-3"}, "action": "retain_source_image_and_verified_labels; remove linearized OCR from running prose", "verified_labels": ["Knowledge", "Case", "Interests", "PRFM", "CHRT", "DSP", "OPTIC", "MWAVE", "NTWRK", "SATEL", "Course", "PK", "Name", "Prequisite", "PK,FK1", "Name", "contains", "consists of", "consists of", "requires"], "note": "Original crow's-foot geometry remains in image. PK,FK1 uses a comma, not the OCR's dot. Preserve the source's Prequisite spelling."}
````

## P121-F01 · PDF page 121 · printed page 111

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-121).

Structural or native-object change:

````text
{"id": "P121-F01", "pdf_page": 121, "selector": {"kind": "figure", "id": "figure-4-4"}, "action": "retain_source_image; remove garbled OCR from running prose; do not infer clipped letters", "verified_labels": ["Get Student's profile", "Calculate Similarity", "Retrieve similar cases", "Rank retrieved cases", "Obtain one case from the result set", "Retrieve recommended courses", "Obtain one course from the result set", "Move to the next course", "Fulfil pre-requisite ?", "Add case weight to course weight", "Anymore courses left in the result set ?", "Anymore similar cases in the result set ?", "Rank courses based on accumulated weights", "yes", "no"], "unresolved_labels": [{"region": "Left return-loop box", "visible_text": "[clipped initial glyph]ove to the next case", "note": "Likely Move, but the initial glyph is clipped in the supplied source; do not silently complete it."}, {"region": "Lower-right final advice box", "visible_text": "Recommen[clipped] courses", "note": "Final glyph(s) are cut off by the original graphic's edge; do not infer exact spelling from semantics."}], "note": "All visible branch words and paths inspected. Source spelling Anymore and space before question marks are retained; initial/final UML symbols are not redesigned."}
````

## P124-FN01 · PDF page 124 · printed page 114

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-124).

Structural or native-object change:

````text
{"id": "P124-FN01", "pdf_page": 124, "selector": {"kind": "footnote", "pdf_page": 124, "marker": "§"}, "anchor_text": "necessity degree§", "baseline_paragraph_indices": [5, 6, 7, 8], "start_text": "§ From http://www.dbai.tuwien.ac.at/marchives/fuzzy-mail/1233.html", "end_text": "New Jersey, Prentice Hall, 1995", "action": "Preserve this complete source footnote as footnote material, not unlabelled main-body prose; retain all source wording and separate formula/definition lines."}
````

## P137-S001 · PDF page 137 · printed page 127

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-137).

Before:

````text
["heading", "4.7.3.8 Test case (1, 2, 0, 0,3,3,2) Translation of the attributes vector:"]
````

After:

````text
[["heading", "4.7.3.8 Test case (1, 2, 0, 0, 3, 3, 2)"], ["text", "Translation of the attributes vector:"]]
````

## P158-S002 · PDF page 158 · printed page 149

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-158).

Before:

````text
["text", "5.2.7.2 Attribute Selection How does ID3 decide which attribute is the best? A statistical property, called information gain, is used. Gain measures how well a given attribute separates training examples into targeted classes. The one with the highest information (information being the most useful for classification) is selected. In order to define gain, we first borrow an idea from information theory called entropy. Entropy measures the amount of information in an attribute."]
````

After:

````text
[["heading", "5.2.7.2 Attribute Selection"], ["text", "How does ID3 decide which attribute is the best? A statistical property, called information gain, is used. Gain measures how well a given attribute separates training examples into targeted classes. The one with the highest information (information being the most useful for classification) is selected. In order to define gain, we first borrow an idea from information theory called entropy. Entropy measures the amount of information in an attribute."]]
````

## P166-S003 · PDF page 166 · printed page 157

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-166).

Before:

````text
["text", "A.1 Organisational Processes during System Development"]
````

After:

````text
[["heading", "A.1 Organisational Processes during System Development"]]
````

## P166-S004 · PDF page 166 · printed page 157

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-166).

Before:

````text
["text", "Project Team and Initial Domain Selection The creation of a project team to serve as the “knowledge engineers”, and the selection of a group to serve as the initial test users of the system, are the first organisational steps that must be taken."]
````

After:

````text
[["heading", "Project Team and Initial Domain Selection"], ["text", "The creation of a project team to serve as the “knowledge engineers”, and the selection of a group to serve as the initial test users of the system, are the first organisational steps that must be taken."]]
````

## P167-S005 · PDF page 167 · printed page 158

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-167).

Before:

````text
["text", "Training the Project Team Training the project team is an organisational process that has a major impact on the success of the help desk project. At the beginning of the project, the project team is usually inexperienced with respect to CBR and knowledge acquisition. Since the project group will be responsible for system maintenance and continuous case acquisition after the development has finished, it is very important that they are trained in CBR as well as in knowledge acquisition and modelling during the initial knowledge acquisition."]
````

After:

````text
[["heading", "Training the Project Team"], ["text", "Training the project team is an organisational process that has a major impact on the success of the help desk project. At the beginning of the project, the project team is usually inexperienced with respect to CBR and knowledge acquisition. Since the project group will be responsible for system maintenance and continuous case acquisition after the development has finished, it is very important that they are trained in CBR as well as in knowledge acquisition and modelling during the initial knowledge acquisition."]]
````

## P167-S006 · PDF page 167 · printed page 158

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-167).

Before:

````text
["text", "Development of the Knowledge Acquisition and Utilisation Processes The introduction and use of a case-based academic advisement recommender system usually causes a re-evaluation and modification of the existing knowledge and information management processes in an academic advising environment. When the system is used, it must be integrated into the operating environment of the academic advisors and become part of the standard business process. Existing processes must be altered to facilitate the flow of information to and"]
````

After:

````text
[["heading", "Development of the Knowledge Acquisition and Utilisation Processes"], ["text", "The introduction and use of a case-based academic advisement recommender system usually causes a re-evaluation and modification of the existing knowledge and information management processes in an academic advising environment. When the system is used, it must be integrated into the operating environment of the academic advisors and become part of the standard business process. Existing processes must be altered to facilitate the flow of information to and"]]
````

## P169-S007 · PDF page 169 · printed page 160

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-169).

Before:

````text
["text", "A.2 Technical Processes during System Development"]
````

After:

````text
[["heading", "A.2 Technical Processes during System Development"]]
````

## P169-S008 · PDF page 169 · printed page 160

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-169).

Before:

````text
["text", "General IT-System Development Related Processes The development of a case-based academic advisement recommender system is similar to any other IT project in most aspects. As usual, the system has to be specified, implemented, integrated, and verified. The definition of the requirements, implementation, and the testing and revision of the prototype and the actual case-based academic advisement recommender system are steps that have to be performed in accordance with standard software engineering techniques. However, the user interfaces and the connection to supporting programs (integration) are two features that require additional attention."]
````

After:

````text
[["heading", "General IT-System Development Related Processes"], ["text", "The development of a case-based academic advisement recommender system is similar to any other IT project in most aspects. As usual, the system has to be specified, implemented, integrated, and verified. The definition of the requirements, implementation, and the testing and revision of the prototype and the actual case-based academic advisement recommender system are steps that have to be performed in accordance with standard software engineering techniques. However, the user interfaces and the connection to supporting programs (integration) are two features that require additional attention."]]
````

## P170-S009 · PDF page 170 · printed page 161

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-170).

Before:

````text
["text", "Initial Knowledge Acquisition for the Case-Based Academic Advisement Recommender System A CBR system is useless without cases. When the case-based academic advisement recommender system is handed over to the academic advisors, it has to contain enough cases to cover at least part of the relevant present student cases. Otherwise, the system will be considered useless and the project will fail. Initial knowledge acquisition serves three major goals:"]
````

After:

````text
[["heading", "Initial Knowledge Acquisition for the Case-Based Academic Advisement Recommender System"], ["text", "A CBR system is useless without cases. When the case-based academic advisement recommender system is handed over to the academic advisors, it has to contain enough cases to cover at least part of the relevant present student cases. Otherwise, the system will be considered useless and the project will fail. Initial knowledge acquisition serves three major goals:"]]
````

## P173-S010 · PDF page 173 · printed page 164

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-173).

Before:

````text
["text", "DSP:OPTIC:MWAVE:NTWRK:SATEL:PRFM:CHRT:D1:O2:OM3:M4:NM5:N6:NS7:S8 0 0 0 1 2 3 1 3 0 0 0 0 0 1 1 1 0 0 0 1 2 3 2 2 0 0 0 0 1 0 1 1 0 0 0 2 1 3 1 1 0 0 0 0 1 0 1 1 0 0 0 3 1 2 2 1 0 0 1 0 1 0 1 0 0 0 0 3 1 2 2 3 0 0 1 1 1 0 0 0 0 0 0 3 1 2 3 2 0 0 0 1 1 0 1 0 0 0 1 0 2 3 1 3 0 0 0 0 0 1 1 1 0 0 1 0 3 2 2 1 0 0 1 0 1 0 1 0 0 0 1 2 0 3 3 2 0 0 1 0 0 0 1 1 0 0 1 2 3 0 1 2 0 0 1 0 1 1 0 0 0 0 1 3 2 0 2 1 0 0 1 0 1 0 1 0 0 0 2 0 1 3 3 3 0 1 0 0 0 0 1 1 0 0 2 0 3 1 1 3 0 1 0 0 0 1 1 0 0 0 2 0 3 1 22 0 0 1 0 0 1 1 0 0 0 2 1 0 3 3 1 0 0 1 0 1 0 1 0 0 0 2 1 3 0 3 1 0 0 1 0 1 0 1 0 0 0 2 3 1 0 2 3 0 1 1 1 0 0 0 0 0 0 3 0 2 1 1 2 0 1 1 0 0 0 1 0 0 0 3 2 0 1 3 3 0 1 1 1 0 0 0 0 0 0 3 2 1 0 2 3 0 1 1 1 0 0 0 0 0 1 0 0 3 23 1 1 0 0 0 1 0 1 0 0 1 0 2 0 3 1 3 0 0 0 1 0 0 1 1 0 1 0 2 3 0 2 2 0 0 1 0 1 1 0 0 0 1 0 3 0 2 3 1 1 0 0 0 1 0 1 0 0 1 2 0 0 3 23 0 1 0 0 0 0 1 1 0 1 2 0 3 0 1 3 0 0 0 0 1 1 1 0 0 1 3 0 0 2 2 2 0 1 1 0 0 0 1 0"]
````

After:

````text
[["text", "DSP:OPTIC:MWAVE:NTWRK:SATEL:PRFM:CHRT:D1:O2:OM3:M4:NM5:N6:NS7:S8"], ["code", "0 0 0 1 2 3 1 3 0 0 0 0 0 1 1 1\n0 0 0 1 2 3 2 2 0 0 0 0 1 0 1 1\n0 0 0 2 1 3 1 1 0 0 0 0 1 0 1 1\n0 0 0 3 1 2 2 1 0 0 1 0 1 0 1 0\n0 0 0 3 1 2 2 3 0 0 1 1 1 0 0 0\n0 0 0 3 1 2 3 2 0 0 0 1 1 0 1 0\n0 0 1 0 2 3 1 3 0 0 0 0 0 1 1 1\n0 0 1 0 3 2 2 1 0 0 1 0 1 0 1 0\n0 0 1 2 0 3 3 2 0 0 1 0 0 0 1 1\n0 0 1 2 3 0 1 2 0 0 1 0 1 1 0 0\n0 0 1 3 2 0 2 1 0 0 1 0 1 0 1 0\n0 0 2 0 1 3 3 3 0 1 0 0 0 0 1 1\n0 0 2 0 3 1 1 3 0 1 0 0 0 1 1 0\n0 0 2 0 3 1 2 2 0 0 1 0 0 1 1 0\n0 0 2 1 0 3 3 1 0 0 1 0 1 0 1 0\n0 0 2 1 3 0 3 1 0 0 1 0 1 0 1 0\n0 0 2 3 1 0 2 3 0 1 1 1 0 0 0 0\n0 0 3 0 2 1 1 2 0 1 1 0 0 0 1 0\n0 0 3 2 0 1 3 3 0 1 1 1 0 0 0 0\n0 0 3 2 1 0 2 3 0 1 1 1 0 0 0 0\n0 1 0 0 3 2 3 1 1 0 0 0 1 0 1 0\n0 1 0 2 0 3 1 3 0 0 0 1 0 0 1 1\n0 1 0 2 3 0 2 2 0 0 1 0 1 1 0 0\n0 1 0 3 0 2 3 1 1 0 0 0 1 0 1 0\n0 1 2 0 0 3 2 3 0 1 0 0 0 0 1 1\n0 1 2 0 3 0 1 3 0 0 0 0 1 1 1 0\n0 1 3 0 0 2 2 2 0 1 1 0 0 0 1 0"]]
````

## P174-S011 · PDF page 174 · printed page 165

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-174).

Before:

````text
["text", "0 1 3 0 2 0 1 1 1 0 1 0 0 0 1 0 0 1 3 0 2 0 3 1 1 0 1 0 0 0 1 0 0 1 3 2 0 0 3 2 0 1 1 0 1 0 0 0 0 2 0 1 0 3 2 1 1 0 1 0 0 0 1 0 0 2 0 1 3 0 3 3 0 0 0 0 1 1 1 0 0 2 0 3 0 1 1 2 1 0 0 1 1 0 0 0 0 2 0 3 0 1 2 3 0 0 1 1 1 0 0 0 0 2 0 3 1 0 1 1 1 0 1 0 0 0 1 0 02 1 0 3 0 3 2 1 0 0 0 1 1 0 0 0 2 1 3 0 0 1 3 0 0 1 1 1 0 0 0 0 2 3 0 0 1 2 1 1 0 1 0 0 0 1 0 0 2 3 0 1 0 3 3 1 1 1 0 0 0 0 0 0 2 3 1 0 0 1 2 1 1 1 0 0 0 0 0 0 3 0 0 2 1 2 1 1 0 0 0 1 0 1 0 0 3 0 1 0 2 1 2 1 0 0 0 0 0 1 1 0 3 0 1 0 2 3 1 1 0 1 0 0 0 1 0 03 0 1 2 0 2 3 1 0 0 0 1 1 0 0 0 3 0 2 1 0 3 2 1 0 0 1 1 0 0 0 0 3 1 0 0 2 3 2 1 0 0 0 0 0 1 1 03 1 0 2 0 1 1 1 0 1 0 0 0 1 0 0 3 1 2 0 0 2 1 1 0 1 0 1 0 0 0 0 3 2 0 0 1 1 2 1 1 1 0 0 0 0 0 03 2 0 0 1 23 1 1 1 0 0 0 0 0"]
````

After:

````text
[["code", "0 1 3 0 2 0 1 1 1 0 1 0 0 0 1 0\n0 1 3 0 2 0 3 1 1 0 1 0 0 0 1 0\n0 1 3 2 0 0 3 2 0 1 1 0 1 0 0 0\n0 2 0 1 0 3 2 1 1 0 1 0 0 0 1 0\n0 2 0 1 3 0 3 3 0 0 0 0 1 1 1 0\n0 2 0 3 0 1 1 2 1 0 0 1 1 0 0 0\n0 2 0 3 0 1 2 3 0 0 1 1 1 0 0 0\n0 2 0 3 1 0 1 1 1 0 1 0 0 0 1 0\n0 2 1 0 3 0 3 2 1 0 0 0 1 1 0 0\n0 2 1 3 0 0 1 3 0 0 1 1 1 0 0 0\n0 2 3 0 0 1 2 1 1 0 1 0 0 0 1 0\n0 2 3 0 1 0 3 3 1 1 1 0 0 0 0 0\n0 2 3 1 0 0 1 2 1 1 1 0 0 0 0 0\n0 3 0 0 2 1 2 1 1 0 0 0 1 0 1 0\n0 3 0 1 0 2 1 2 1 0 0 0 0 0 1 1\n0 3 0 1 0 2 3 1 1 0 1 0 0 0 1 0\n0 3 0 1 2 0 2 3 1 0 0 0 1 1 0 0\n0 3 0 2 1 0 3 2 1 0 0 1 1 0 0 0\n0 3 1 0 0 2 3 2 1 0 0 0 0 0 1 1\n0 3 1 0 2 0 1 1 1 0 1 0 0 0 1 0\n0 3 1 2 0 0 2 1 1 0 1 0 1 0 0 0\n0 3 2 0 0 1 1 2 1 1 1 0 0 0 0 0\n0 3 2 0 0 1 2 3 1 1 1 0 0 0 0 0"]]
````

## P175-S012 · PDF page 175 · printed page 166

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-175).

Before:

````text
["code", "Appendix C: PHP scripts"]
````

After:

````text
[["heading", "Appendix C: PHP scripts"]]
````

## P175-S013 · PDF page 175 · printed page 166

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-175).

Before:

````text
["code", "Functions.inc"]
````

After:

````text
[["heading", "Functions.inc"]]
````

## P177-S014 · PDF page 177 · printed page 168

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-177).

Before:

````text
["code", "print \"<td>\" . $i['CHRT'] . \"</td>\";"]
````

After:

````text
[["code", "print \"<td>\" . $i['CHRT'] . \"</td>\";"], ["code", "}"]]
````

## P180-S015 · PDF page 180 · printed page 171

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
["code", "}"]
````

After:

````text
[["code", "}"], ["code", "}"], ["code", "}"], ["code", "}"]]
````

## P182-S016 · PDF page 182 · printed page 173

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-182).

Before:

````text
["code", "Index.php"]
````

After:

````text
[["heading", "Index.php"]]
````

## P185-S017 · PDF page 185 · printed page 176

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-185).

Before:

````text
["code", "Knowledge.php"]
````

After:

````text
[["heading", "Knowledge.php"]]
````

## P186-S018 · PDF page 186 · printed page 177

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-186).

Before:

````text
["code", "Match.php"]
````

After:

````text
[["heading", "Match.php"]]
````

## P197-S019 · PDF page 197 · printed page 188

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-197).

Before:

````text
["text", "RED denotes courses that are blocked due to its unfulfilled pre-requisites denotes courses that are not recommended due to its perceived difficulty being greater than the student's demonstrated academic performance GREEN denotes the recommended course with a ranked order BLUE denotes other possible courses student may consider taking"]
````

After:

````text
[["text", "RED denotes courses that are blocked due to its unfulfilled pre-requisites"], ["text", "denotes courses that are not recommended due to its perceived difficulty being greater than the student's demonstrated academic performance"], ["text", "GREEN denotes the recommended course with a ranked order"], ["text", "BLUE denotes other possible courses student may consider taking"]]
````

## P197-S020 · PDF page 197 · printed page 188

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-197).

Before:

````text
["text", "Correlation of Interests (INT) and Difference of Means"]
````

After:

````text
[["heading", "Correlation of Interests (INT) and Difference of Means"]]
````

## P197-S021 · PDF page 197 · printed page 188

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-197).

Before:

````text
["text", "Distance of 2 vectors"]
````

After:

````text
[["heading", "Distance of 2 vectors"]]
````

## P198-S022 · PDF page 198 · printed page 189

Category: transcription. [View source page](https://cbr.purposebuilt.app/reader#page-198).

Before:

````text
["text", "Trivial IR algorithm"]
````

After:

````text
[["heading", "Trivial IR algorithm"]]
````

## P135-C001 · PDF page 135 · printed page 125

Category: vector_spacing. [View source page](https://cbr.purposebuilt.app/reader#page-135).

Before:

````text
4.7.3.2 Test case (0, 3, 0,1, 2,3,1)
````

After:

````text
4.7.3.2 Test case (0, 3, 0, 1, 2, 3, 1)
````

## P135-C002 · PDF page 135 · printed page 125

Category: vector_spacing. [View source page](https://cbr.purposebuilt.app/reader#page-135).

Before:

````text
4.7.3.3 Test case (3,2, 0, 0,1,3,2)
````

After:

````text
4.7.3.3 Test case (3, 2, 0, 0, 1, 3, 2)
````

## P136-C003 · PDF page 136 · printed page 126

Category: vector_spacing. [View source page](https://cbr.purposebuilt.app/reader#page-136).

Before:

````text
4.7.3.4 Test case (0,3,1, 2, 0,3,3)
````

After:

````text
4.7.3.4 Test case (0, 3, 1, 2, 0, 3, 3)
````

## P136-C004 · PDF page 136 · printed page 126

Category: vector_spacing. [View source page](https://cbr.purposebuilt.app/reader#page-136).

Before:

````text
4.7.3.5 Test case (0,1, 0,3, 2,3,3)
````

After:

````text
4.7.3.5 Test case (0, 1, 0, 3, 2, 3, 3)
````

## P136-C005 · PDF page 136 · printed page 126

Category: course_identifier_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-136).

Before:

````text
The first human advice would be N6, NS7, and NM5. Because the prerequisites of NS7 and NM5 have not been fulfilled, the second and final advice is then N6, S8, and 02. The system gives exactly the same advice of N6, S8, and O2 as well.
````

After:

````text
The first human advice would be N6, NS7, and NM5. Because the prerequisites of NS7 and NM5 have not been fulfilled, the second and final advice is then N6, S8, and O2. The system gives exactly the same advice of N6, S8, and O2 as well.
````

## P136-C006 · PDF page 136 · printed page 126

Category: vector_spacing. [View source page](https://cbr.purposebuilt.app/reader#page-136).

Before:

````text
4.7.3.6 Test case (0,1,3, 0, 2,3,3)
````

After:

````text
4.7.3.6 Test case (0, 1, 3, 0, 2, 3, 3)
````

## P137-C007 · PDF page 137 · printed page 127

Category: missing_bullet. [View source page](https://cbr.purposebuilt.app/reader#page-137).

Before:

````text
Absolute specialisation
````

After:

````text
• Absolute specialisation
````

## P137-C008 · PDF page 137 · printed page 127

Category: course_identifier_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-137).

Before:

````text
Initially, the human advice would be M4, OM3, and NM5. But, OM3 and NM5 are blocked due to incomplete prerequisites. The subsequent advice would be M4, S8, and NS7. Given that NS7 is also blocked, the final advice would be M4, S8, and 02. The prototype system recommends M4, S8, and D1 (with M4 available as the next ranked choice). Diversity (or lack of it) within the knowledge base may have caused this difference.
````

After:

````text
Initially, the human advice would be M4, OM3, and NM5. But, OM3 and NM5 are blocked due to incomplete prerequisites. The subsequent advice would be M4, S8, and NS7. Given that NS7 is also blocked, the final advice would be M4, S8, and O2. The prototype system recommends M4, S8, and D1 (with M4 available as the next ranked choice). Diversity (or lack of it) within the knowledge base may have caused this difference.
````

## P137-C009 · PDF page 137 · printed page 127

Category: vector_spacing. [View source page](https://cbr.purposebuilt.app/reader#page-137).

Before:

````text
4.7.3.7 Test case (0, 0,1, 2,3, 3,1)
````

After:

````text
4.7.3.7 Test case (0, 0, 1, 2, 3, 3, 1)
````

## P138-C010 · PDF page 138 · printed page 128

Category: course_identifier_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-138).

Before:

````text
The first advice would be S8, O2, and 0M3. Because OM3 is blocked for not having the prerequisite fulfilled, the next advice would be S8, O2, and D l. The system also recommends S8, O2, and D1 in exactly the same order.
````

After:

````text
The first advice would be S8, O2, and OM3. Because OM3 is blocked for not having the prerequisite fulfilled, the next advice would be S8, O2, and D1. The system also recommends S8, O2, and D1 in exactly the same order.
````

## P139-C011 · PDF page 139 · printed page 129

Category: vector_spacing. [View source page](https://cbr.purposebuilt.app/reader#page-139).

Before:

````text
4.7.4.1 Test case (3, 0,1, 2, 0,2,3)
````

After:

````text
4.7.4.1 Test case (3, 0, 1, 2, 0, 2, 3)
````

## P139-C012 · PDF page 139 · printed page 129

Category: vector_spacing. [View source page](https://cbr.purposebuilt.app/reader#page-139).

Before:

````text
The first test case is when the problem profile (DSP, OPTIC, MWAVE, NTWRK, SATEL, PRFM, CHRT) of (3, 0,1,2 , 0, 2, 3).
````

After:

````text
The first test case is when the problem profile (DSP, OPTIC, MWAVE, NTWRK, SATEL, PRFM, CHRT) of (3, 0, 1, 2, 0, 2, 3).
````

## P139-C013 · PDF page 139 · printed page 129

Category: vector_spacing. [View source page](https://cbr.purposebuilt.app/reader#page-139).

Before:

````text
4.7.4.2 Test case (0, 0,3, 2,1,2, 2)
````

After:

````text
4.7.4.2 Test case (0, 0, 3, 2, 1, 2, 2)
````

## P139-C014 · PDF page 139 · printed page 129

Category: vector_spacing. [View source page](https://cbr.purposebuilt.app/reader#page-139).

Before:

````text
Another test for stability under small change is to assign a prerequisite vector for the given courses. For testing purposes, make the prerequisites for courses associated with multiple disciplines (e.g., OM3 and NS7) not yet fulfilled. The prerequisite vector of (D1, O2, OM3, M4, NM5, N6, NS7, S8) will have the values (1, 1,0, 1, 1, 1,0, 1).
````

After:

````text
Another test for stability under small change is to assign a prerequisite vector for the given courses. For testing purposes, make the prerequisites for courses associated with multiple disciplines (e.g., OM3 and NS7) not yet fulfilled. The prerequisite vector of (D1, O2, OM3, M4, NM5, N6, NS7, S8) will have the values (1, 1, 0, 1, 1, 1, 0, 1).
````

## P140-C015 · PDF page 140 · printed page 130

Category: vector_spacing. [View source page](https://cbr.purposebuilt.app/reader#page-140).

Before:

````text
A student who is interested in Microwave, Networking, and Satellite (in order of preference), has an average academic performance, and wants some specialisation in his fields will have a profile (DSP, OPTIC, MWAVE, NTWRK, SATEL, PRFM, CHRT) as (0, 0 ,3 ,2 , 1,2,2).
````

After:

````text
A student who is interested in Microwave, Networking, and Satellite (in order of preference), has an average academic performance, and wants some specialisation in his fields will have a profile (DSP, OPTIC, MWAVE, NTWRK, SATEL, PRFM, CHRT) as (0, 0, 3, 2, 1, 2, 2).
````

## P140-C016 · PDF page 140 · printed page 130

Category: course_identifier_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-140).

Before:

````text
Now, as an academic advisor, the instant advice given will be the courses M4, NM5, and N6. Taking into account that the perceived difficulties (difficulty level 3) of M4 and N6 are probably beyond the student’s academic performance (PRFM = 2), the advisor will skip these two courses and recommend NM5, OM3, and NS7. Because the prerequisites of OM3 and NS7 have not yet been fulfilled, the advisor will find another two courses to substitute these. Thus, the final recommendation will be NM5, S8, and either D1 or 02.
````

After:

````text
Now, as an academic advisor, the instant advice given will be the courses M4, NM5, and N6. Taking into account that the perceived difficulties (difficulty level 3) of M4 and N6 are probably beyond the student’s academic performance (PRFM = 2), the advisor will skip these two courses and recommend NM5, OM3, and NS7. Because the prerequisites of OM3 and NS7 have not yet been fulfilled, the advisor will find another two courses to substitute these. Thus, the final recommendation will be NM5, S8, and either D1 or O2.
````

## P140-C017 · PDF page 140 · printed page 130

Category: course_identifier_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-140).

Before:

````text
The prototype system using the improvement matching algorithm actually recommends a very similar set of courses, which contain NM5, O2 and D1, with a possibility of SB. Now, using commonsense, S8 should have a higher precedent over D1 and 02. However, keep in mind that pure CBR depends entirely on the quality of cases in its knowledge base. Currently, the number of cases is less than 10% of the overall number of every possible permutation. In addition, no rules are in place to double check the final advice against the preference in the fields of interest. We can use such rules to detect that S8 is within the student’s field of interests and D1 and O2 are not, thus adjusting the ranking of SB. This last process can be integrated into the refine phase in the CBR cycle.
````

After:

````text
The prototype system using the improvement matching algorithm actually recommends a very similar set of courses, which contain NM5, O2 and D1, with a possibility of S8. Now, using commonsense, S8 should have a higher precedent over D1 and O2. However, keep in mind that pure CBR depends entirely on the quality of cases in its knowledge base. Currently, the number of cases is less than 10% of the overall number of every possible permutation. In addition, no rules are in place to double check the final advice against the preference in the fields of interest. We can use such rules to detect that S8 is within the student’s field of interests and D1 and O2 are not, thus adjusting the ranking of S8. This last process can be integrated into the refine phase in the CBR cycle.
````

## P146-C018 · PDF page 146 · printed page 137

Category: word_boundary_punctuation. [View source page](https://cbr.purposebuilt.app/reader#page-146).

Before:

````text
In a sense, tweaking is a combination of navigation by asking and navigation by proposing -sequences of cases can be proposed and the student can be asked for specific information about particular features. However, the cost to or involvement of the student should be lower than value elicitation because the student is not expected to provide specific feature values of which they may have little or no knowledge. This strategy can also combine elements of preference-based feedback since the student must explicitly identify a preferred case over which the tweaks should be applied.
````

After:

````text
In a sense, tweaking is a combination of navigation by asking and navigation by proposing – sequences of cases can be proposed and the student can be asked for specific information about particular features. However, the cost to or involvement of the student should be lower than value elicitation because the student is not expected to provide specific feature values of which they may have little or no knowledge. This strategy can also combine elements of preference-based feedback since the student must explicitly identify a preferred case over which the tweaks should be applied.
````

## P149-C019 · PDF page 149 · printed page 140

Category: line_break_hyphenation. [View source page](https://cbr.purposebuilt.app/reader#page-149).

Before:

````text
To develop case-based academic advisement recommender systems that will be used in dynamic, institution environments by a large group of users, one must take into account the managerial (or administrative), organisational (or institutional), and technical processes. It has to be remembered that once a CBR system is in place, continuous knowledge acquisition and maintenance is necessary. Processes for knowledge acquisition and maintenance have to be developed and executed, and personnel have to be dedicated to performing these tasks. A non­ technical framework that defines these processes can be found in the appendix.
````

After:

````text
To develop case-based academic advisement recommender systems that will be used in dynamic, institution environments by a large group of users, one must take into account the managerial (or administrative), organisational (or institutional), and technical processes. It has to be remembered that once a CBR system is in place, continuous knowledge acquisition and maintenance is necessary. Processes for knowledge acquisition and maintenance have to be developed and executed, and personnel have to be dedicated to performing these tasks. A non-technical framework that defines these processes can be found in the appendix.
````

## P153-C020 · PDF page 153 · printed page 144

Category: line_break_hyphenation. [View source page](https://cbr.purposebuilt.app/reader#page-153).

Before:

````text
Treating student profiles as transactions and the rated courses therein as item sets, the Apriori algorithm can be used to derive a set of course-course association rules and confidence levels. The resulting confidence values are taken as probabilities and used to fill in a course-course similarity matrix, which provides the additional similarity knowledge necessary to compare non­ identical profile items [31].
````

After:

````text
Treating student profiles as transactions and the rated courses therein as item sets, the Apriori algorithm can be used to derive a set of course-course association rules and confidence levels. The resulting confidence values are taken as probabilities and used to fill in a course-course similarity matrix, which provides the additional similarity knowledge necessary to compare non-identical profile items [31].
````

## P153-C021 · PDF page 153 · printed page 144

Category: mathematical_symbol. [View source page](https://cbr.purposebuilt.app/reader#page-153).

Before:

````text
Since the matter of additional similarity coverage rests in populating the matrix as densely as possible, two natural extensions suggest themselves. First, the directly generated rules can be changed together (A -> B and B -> C imply A -> C) to provide indirect course relationships (absolutely useful for inter-disciplinary electives).
````

After:

````text
Since the matter of additional similarity coverage rests in populating the matrix as densely as possible, two natural extensions suggest themselves. First, the directly generated rules can be changed together (A → B and B → C imply A → C) to provide indirect course relationships (absolutely useful for inter-disciplinary electives).
````

## P154-C022 · PDF page 154 · printed page 145

Category: lost_subscript. [View source page](https://cbr.purposebuilt.app/reader#page-154).

Before:

````text
• The target profile, t, is compared to each profile case, s, is an element of S, to select the k most similar cases
````

After:

````text
• The target profile, t, is compared to each profile case, sᵢ is an element of S, to select the k most similar cases
````

## P154-C023 · PDF page 154 · printed page 145

Category: quotation_glyph. [View source page](https://cbr.purposebuilt.app/reader#page-154).

Before:

````text
A CBR system learns through adaptation (i.e., modifying a retrieved case that partially matches the current problem) to solve a new problem. This means that over time new cases are acquired and the system’s problem solving performance should improve as it "learns". Learning may be from positive examples given by the domain expert or from its own success (or even from its failure) in achieving the problem-solving goal. However, adaptation formulas are not always easy to define, even by a domain expert. How does the case-based reasoner know what to adapt and when? Can adaptation rules that are sufficiently generic (for all situations) be built so that the case-based reasoner is able to detect the differences between the new and retrieved case, decide what needs to be adapted, determine which adaptation strategy to choose (from several appropriate strategies), and project the likelihood of succeeding?
````

After:

````text
A CBR system learns through adaptation (i.e., modifying a retrieved case that partially matches the current problem) to solve a new problem. This means that over time new cases are acquired and the system’s problem solving performance should improve as it “learns”. Learning may be from positive examples given by the domain expert or from its own success (or even from its failure) in achieving the problem-solving goal. However, adaptation formulas are not always easy to define, even by a domain expert. How does the case-based reasoner know what to adapt and when? Can adaptation rules that are sufficiently generic (for all situations) be built so that the case-based reasoner is able to detect the differences between the new and retrieved case, decide what needs to be adapted, determine which adaptation strategy to choose (from several appropriate strategies), and project the likelihood of succeeding?
````

## P156-C024 · PDF page 156 · printed page 147

Category: punctuation_glyph. [View source page](https://cbr.purposebuilt.app/reader#page-156).

Before:

````text
Thus, most hybrid systems have a combination of rules and cases, and may be according to whether rules and cases are independent of each other, or whether one was derived from the other (i.e., derive cases from rules, or rules from a set of sample cases). Rules may be used to capture broad trends in the domain, while cases are used to support exceptions to the rules or violations of the rules. Cases may be kept as positive examples to support, explain, or justify rules, as counter-examples to rules, or when rules fail because they are ill defined. However, there are problems integrating cases and rules, and these have to do with control - which mode of reasoning to use, and when. To date, there is still a lack of cognitive models of how human experts integrate rules and cases.
````

After:

````text
Thus, most hybrid systems have a combination of rules and cases, and may be according to whether rules and cases are independent of each other, or whether one was derived from the other (i.e., derive cases from rules, or rules from a set of sample cases). Rules may be used to capture broad trends in the domain, while cases are used to support exceptions to the rules or violations of the rules. Cases may be kept as positive examples to support, explain, or justify rules, as counter-examples to rules, or when rules fail because they are ill defined. However, there are problems integrating cases and rules, and these have to do with control – which mode of reasoning to use, and when. To date, there is still a lack of cognitive models of how human experts integrate rules and cases.
````

## P160-C025 · PDF page 160 · printed page 151

Category: bibliography_line_break_hyphenation. [View source page](https://cbr.purposebuilt.app/reader#page-160).

Before:

````text
[3] Armengol, E., and Plaza, E. 2001, ‘Similarity Assessment for Relational CBR’. Case- Based Reasoning Research and Development: Fourth International Conference, ICCBR- 2001, Vancouver, BC, Canada, July/August 2001, pp. 44-58.
````

After:

````text
[3] Armengol, E., and Plaza, E. 2001, ‘Similarity Assessment for Relational CBR’. Case-Based Reasoning Research and Development: Fourth International Conference, ICCBR-2001, Vancouver, BC, Canada, July/August 2001, pp. 44-58.
````

## P160-C026 · PDF page 160 · printed page 151

Category: bibliography_line_break_hyphenation. [View source page](https://cbr.purposebuilt.app/reader#page-160).

Before:

````text
[4] Bergmann, R., Breen, S., Goker, M., Manago, M., and Wess S. 1998, Developing Industrial Case-Based Reasoning Applications: The INRECA-Methodology, Springer- Verlag, Berlin Heidelberg, Germany.
````

After:

````text
[4] Bergmann, R., Breen, S., Goker, M., Manago, M., and Wess S. 1998, Developing Industrial Case-Based Reasoning Applications: The INRECA-Methodology, Springer-Verlag, Berlin Heidelberg, Germany.
````

## P161-C027 · PDF page 161 · printed page 152

Category: bibliography_line_break_hyphenation. [View source page](https://cbr.purposebuilt.app/reader#page-161).

Before:

````text
[15] Göker, M. & Roth-Berghofer, T. 1999, ‘Development and Utilization of a Case- Based Help-Desk Support System in a Corporate Environment’. Case-Based Reasoning Research and Development: Proceedings of the 3rd International Conference on Case- Based Reasoning, ICCBR-99, Seeon Monastery, Germany, July 27-30, 1999, ed. K. Althoff, R. Bergmann & L. K. Branting, Springer-Verlag, Germany, pp. 132-146.
````

After:

````text
[15] Göker, M. & Roth-Berghofer, T. 1999, ‘Development and Utilization of a Case-Based Help-Desk Support System in a Corporate Environment’. Case-Based Reasoning Research and Development: Proceedings of the 3rd International Conference on Case-Based Reasoning, ICCBR-99, Seeon Monastery, Germany, July 27-30, 1999, ed. K. Althoff, R. Bergmann & L. K. Branting, Springer-Verlag, Germany, pp. 132-146.
````

## P162-C028 · PDF page 162 · printed page 153

Category: bibliography_quote_spacing. [View source page](https://cbr.purposebuilt.app/reader#page-162).

Before:

````text
[17] Hammonds, K. H., and others. “The New ‘U ’: A Tough Market Is Reshaping Colleges.” Business Week, Dec. 22, 1997, pp. 96-102.
````

After:

````text
[17] Hammonds, K. H., and others. “The New ‘U’: A Tough Market Is Reshaping Colleges.” Business Week, Dec. 22, 1997, pp. 96-102.
````

## P162-C029 · PDF page 162 · printed page 153

Category: bibliography_line_break_spacing. [View source page](https://cbr.purposebuilt.app/reader#page-162).

Before:

````text
[22] Khoshgoftaar, T. M., and Allen, E. B. ‘Classification of fault-prone software modules: Prior probabilities, costs, and model evaluation.’ In Technical Report TR-CSE- 97-52. ’ Boca Raton, FL USA, June 1997. Florida Atlantic University.
````

After:

````text
[22] Khoshgoftaar, T. M., and Allen, E. B. ‘Classification of fault-prone software modules: Prior probabilities, costs, and model evaluation.’ In Technical Report TR-CSE-97-52.’ Boca Raton, FL USA, June 1997. Florida Atlantic University.
````

## P163-C030 · PDF page 163 · printed page 154

Category: bibliography_line_break_hyphenation. [View source page](https://cbr.purposebuilt.app/reader#page-163).

Before:

````text
[30] Montaner, M., Lopez, B., and de la Rosa, J. L. 2002, ‘Improving Case Representation and Case Base Maintenance in Recommender Agents’. Advances in Case- Based Reasoning: Sixth European Conference, ECCBR-2002, Aberdeen, Scotland, UK, September 2002, pp. 234.248.
````

After:

````text
[30] Montaner, M., Lopez, B., and de la Rosa, J. L. 2002, ‘Improving Case Representation and Case Base Maintenance in Recommender Agents’. Advances in Case-Based Reasoning: Sixth European Conference, ECCBR-2002, Aberdeen, Scotland, UK, September 2002, pp. 234.248.
````

## P165-C031 · PDF page 165 · printed page 156

Category: bibliography_punctuation_glyph. [View source page](https://cbr.purposebuilt.app/reader#page-165).

Before:

````text
[42] Turing, A. 1950, ‘Computing machinery and intelligence’, Mind, 59, pp. 433 - 460.
````

After:

````text
[42] Turing, A. 1950, ‘Computing machinery and intelligence’, Mind, 59, pp. 433 – 460.
````

## P175-C032 · PDF page 175 · printed page 166

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-175).

Before:

````text
'DSP' => Sdsp,
````

After:

````text
'DSP' => $dsp,
````

## P175-C033 · PDF page 175 · printed page 166

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-175).

Before:

````text
'OPTIC' => Soptic,
````

After:

````text
'OPTIC' => $optic,
````

## P175-C034 · PDF page 175 · printed page 166

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-175).

Before:

````text
'MWAVE' => Smwave,
````

After:

````text
'MWAVE' => $mwave,
````

## P175-C035 · PDF page 175 · printed page 166

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-175).

Before:

````text
■NTWRK’ => Sntwrk,
````

After:

````text
'NTWRK' => $ntwrk,
````

## P175-C036 · PDF page 175 · printed page 166

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-175).

Before:

````text
'SATEL' => Ssatel,
````

After:

````text
'SATEL' => $satel,
````

## P175-C037 · PDF page 175 · printed page 166

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-175).

Before:

````text
'PRFM' => Sprfm,
````

After:

````text
'PRFM' => $prfm,
````

## P175-C038 · PDF page 175 · printed page 166

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-175).

Before:

````text
'CHRT' => Schrt
````

After:

````text
'CHRT' => $chrt
````

## P175-C039 · PDF page 175 · printed page 166

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-175).

Before:

````text
function case_size(Scase) {
````

After:

````text
function case_size($case) {
````

## P175-C040 · PDF page 175 · printed page 166

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-175).

Before:

````text
Ssum = 0;
````

After:

````text
$sum = 0;
````

## P175-C041 · PDF page 175 · printed page 166

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-175).

Before:

````text
foreach (Scase as Svalue) {
````

After:

````text
foreach ($case as $value) {
````

## P175-C042 · PDF page 175 · printed page 166

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-175).

Before:

````text
Ssum += pow($value, 2);
````

After:

````text
$sum += pow($value, 2);
````

## P176-C043 · PDF page 176 · printed page 167

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-176).

Before:

````text
return sqrt(Ssum);
````

After:

````text
return sqrt($sum);
````

## P176-C044 · PDF page 176 · printed page 167

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-176).

Before:

````text
function sumproduct($vl, $v2) {
````

After:

````text
function sumproduct($v1, $v2) {
````

## P176-C045 · PDF page 176 · printed page 167

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-176).

Before:

````text
foreach ($vl as $key => $ value) {
````

After:

````text
foreach ($v1 as $key => $value) {
````

## P176-C046 · PDF page 176 · printed page 167

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-176).

Before:

````text
$DSP, $OPTIC, SMWAVE, SNTWRK, SSATEL, $PRFM, $CHRT,
````

After:

````text
$DSP, $OPTIC, $MWAVE, $NTWRK, $SATEL, $PRFM, $CHRT,
````

## P176-C047 · PDF page 176 · printed page 167

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-176).

Before:

````text
$D1,$02,$0M3,$M4,$NM5,$N6,$NS7,$S8) {
````

After:

````text
$D1,$O2,$OM3,$M4,$NM5,$N6,$NS7,$S8) {
````

## P176-C048 · PDF page 176 · printed page 167

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-176).

Before:

````text
for ($j=RANK_NUM; $j>$pos; $j—) {
````

After:

````text
for ($j=RANK_NUM; $j>$pos; $j--) {
````

## P176-C049 · PDF page 176 · printed page 167

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-176).

Before:

````text
$match[$j] = $match[$j-l];
````

After:

````text
$match[$j] = $match[$j-1];
````

## P176-C050 · PDF page 176 · printed page 167

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-176).

Before:

````text
'DSP' => $DSP, 'OPTIC' => SOPTIC,
````

After:

````text
'DSP' => $DSP, 'OPTIC' => $OPTIC,
````

## P176-C051 · PDF page 176 · printed page 167

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-176).

Before:

````text
'MWAVE' => SMWAVE, "NTWRK" => SNTWRK,
````

After:

````text
'MWAVE' => $MWAVE, 'NTWRK' => $NTWRK,
````

## P176-C052 · PDF page 176 · printed page 167

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-176).

Before:

````text
'SATEL' => SSATEL, 'PRFM' => SPRFM,
````

After:

````text
'SATEL' => $SATEL, 'PRFM' => $PRFM,
````

## P176-C053 · PDF page 176 · printed page 167

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-176).

Before:

````text
'CHRT' => SCHRT, 'Dl' => $D1,
````

After:

````text
'CHRT' => $CHRT, 'D1' => $D1,
````

## P176-C054 · PDF page 176 · printed page 167

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-176).

Before:

````text
02' => $02, 'OM3' => SOM3, 'M4' => $M4,
````

After:

````text
'O2' => $O2, 'OM3' => $OM3, 'M4' => $M4,
````

## P176-C055 · PDF page 176 · printed page 167

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-176).

Before:

````text
•NM5' => SNM5, "N6' => $N6, 'NS7' => SNS7,
````

After:

````text
'NM5' => $NM5, 'N6' => $N6, 'NS7' => $NS7,
````

## P176-C056 · PDF page 176 · printed page 167

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-176).

Before:

````text
'S8' => SS8);
````

After:

````text
'S8' => $S8);
````

## P177-C057 · PDF page 177 · printed page 168

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-177).

Before:

````text
print "<th>PREM</th>";
````

After:

````text
print "<th>PRFM</th>";
````

## P177-C058 · PDF page 177 · printed page 168

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-177).

Before:

````text
print "<th>Dl</th>";
````

After:

````text
print "<th>D1</th>";
````

## P177-C059 · PDF page 177 · printed page 168

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-177).

Before:

````text
print "<th>02</th>";
````

After:

````text
print "<th>O2</th>";
````

## P177-C060 · PDF page 177 · printed page 168

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-177).

Before:

````text
print "<td>" . $i[’DSP'] . "</td>";
````

After:

````text
print "<td>" . $i['DSP'] . "</td>";
````

## P177-C061 · PDF page 177 · printed page 168

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-177).

Before:

````text
print "<td>" . $i ['OPTIC'] . "</td>";
````

After:

````text
print "<td>" . $i['OPTIC'] . "</td>";
````

## P177-C062 · PDF page 177 · printed page 168

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-177).

Before:

````text
print "<td>" . $i['MWAVE] . "</td>";
````

After:

````text
print "<td>" . $i['MWAVE'] . "</td>";
````

## P177-C063 · PDF page 177 · printed page 168

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-177).

Before:

````text
print "<td>" . $i[rNTWRK'] . "</td>";
````

After:

````text
print "<td>" . $i['NTWRK'] . "</td>";
````

## P178-C064 · PDF page 178 · printed page 169

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-178).

Before:

````text
printf("<td>%2.3f</td>", $s['Dl’]);
````

After:

````text
printf("<td>%2.3f</td>", $s['D1']);
````

## P178-C065 · PDF page 178 · printed page 169

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-178).

Before:

````text
printf("<td>%2.3f</td>", $s['02']);
````

After:

````text
printf("<td>%2.3f</td>", $s['O2']);
````

## P178-C066 · PDF page 178 · printed page 169

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-178).

Before:

````text
printf("<td>%2.3f</td>", $s[rNM5’]);
````

After:

````text
printf("<td>%2.3f</td>", $s['NM5']);
````

## P178-C067 · PDF page 178 · printed page 169

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-178).

Before:

````text
printf("<td>%2.3f</td>", $s["N6']);
````

After:

````text
printf("<td>%2.3f</td>", $s['N6']);
````

## P178-C068 · PDF page 178 · printed page 169

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-178).

Before:

````text
printf("<td>%2.3f</td>", $s[K!S7']);
````

After:

````text
printf("<td>%2.3f</td>", $s['NS7']);
````

## P178-C069 · PDF page 178 · printed page 169

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-178).

Before:

````text
print "<td>" . $s['Dl'] . "</td>";
````

After:

````text
print "<td>" . $s['D1'] . "</td>";
````

## P178-C070 · PDF page 178 · printed page 169

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-178).

Before:

````text
print "<td>" . $s['02']. "</td>";
````

After:

````text
print "<td>" . $s['O2'] . "</td>";
````

## P178-C071 · PDF page 178 · printed page 169

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-178).

Before:

````text
print "<td>". $s[rNM5']. "</td>";
````

After:

````text
print "<td>" . $s['NM5'] . "</td>";
````

## P178-C072 · PDF page 178 · printed page 169

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-178).

Before:

````text
print "<td>". $s["NS7']. "</td>";
````

After:

````text
print "<td>" . $s['NS7'] . "</td>";
````

## P178-C073 · PDF page 178 · printed page 169

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-178).

Before:

````text
function init soluQ {
````

After:

````text
function init_solu() {
````

## P178-C074 · PDF page 178 · printed page 169

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-178).

Before:

````text
return array('Dl' => 0, '02' => 0, 'OM3' => 0, 'M4' => 0, KIMS' => 0, 'N6' => 0, 'NS7' =>
````

After:

````text
return array('D1' => 0, 'O2' => 0, 'OM3' => 0, 'M4' => 0, 'NM5' => 0, 'N6' => 0, 'NS7' =>
````

## P179-C075 · PDF page 179 · printed page 170

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-179).

Before:

````text
return array( 'COUNT' => init_solu(), 'RANKPCENT' => init_solu(), ’WEIGHT_SUM’
````

After:

````text
return array( 'COUNT' => init_solu(), 'RANK_PCENT' => init_solu(), 'WEIGHT_SUM'
````

## P179-C076 · PDF page 179 · printed page 170

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-179).

Before:

````text
print "<table border=\"l\"><tr>";
````

After:

````text
print "<table border=\"1\"><tr>";
````

## P179-C077 · PDF page 179 · printed page 170

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-179).

Before:

````text
print ”<td>percent</td>";
````

After:

````text
print "<td>percent</td>";
````

## P179-C078 · PDF page 179 · printed page 170

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-179).

Before:

````text
Sadvice = init_advice();
````

After:

````text
$advice = init_advice();
````

## P179-C079 · PDF page 179 · printed page 170

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-179).

Before:

````text
for ($i=l; $i<=RANK_NUM; $i++) {
````

After:

````text
for ($i=1; $i<=RANK_NUM; $i++) {
````

## P179-C080 · PDF page 179 · printed page 170

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-179).

Before:

````text
print "<td>". $match [$i] ['id']. "</td>";
````

After:

````text
print "<td>" . $match[$i]['id'] . "</td>";
````

## P179-C081 · PDF page 179 · printed page 170

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-179).

Before:

````text
printf ("<td>%2.3f</td>", $match[$i][’percent']*100);
````

After:

````text
printf("<td>%2.3f</td>", $match[$i]['percent']*100);
````

## P179-C082 · PDF page 179 · printed page 170

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-179).

Before:

````text
foreach (Sadvice ['RANK PCENT'] as Scourse => $rank_percentage) {
````

After:

````text
foreach ($advice['RANK_PCENT'] as $course => $rank_percentage) {
````

## P179-C083 · PDF page 179 · printed page 170

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-179).

Before:

````text
$advice['COUNT'][$course]-H-;
````

After:

````text
$advice['COUNT'][$course]++;
````

## P179-C084 · PDF page 179 · printed page 170

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-179).

Before:

````text
$advice['WEIGHT_SUM'] [Scourse] += (2/75 + (RANKNUM-
````

After:

````text
$advice['WEIGHT_SUM'][$course] += (2/75 + (RANK_NUM-
````

## P179-C085 · PDF page 179 · printed page 170

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-179).

Before:

````text
$i+l)/75) * 100;
````

After:

````text
$i+1)/75) * 100;
````

## P180-C086 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
100:
````

After:

````text
* 100;
````

## P180-C087 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
return Sadvice;
````

After:

````text
return $advice;
````

## P180-C088 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
function show_advice_table($advice, Sprerequisites, Sdifficulties) {
````

After:

````text
function show_advice_table($advice, $prerequisites, $difficulties) {
````

## P180-C089 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
print '<table border=\"l\">";
````

After:

````text
print "<table border=\"1\">";
````

## P180-C090 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
print ’<tr>”;
````

After:

````text
print "<tr>";
````

## P180-C091 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
print '<td>Description</td>";
````

After:

````text
print "<td>Description</td>";
````

## P180-C092 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
print </tr>";
````

After:

````text
print "</tr>";
````

## P180-C093 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
print
````

After:

````text
print "<tr>";
````

## P180-C094 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
print <td>Prequisite</td>";
````

After:

````text
print "<td>Prequisite</td>";
````

## P180-C095 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
show solution($prerequisites);
````

After:

````text
show_solution($prerequisites);
````

## P180-C096 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
print </tr>";
````

After:

````text
print "</tr>";
````

## P180-C097 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
print <tr>";
````

After:

````text
print "<tr>";
````

## P180-C098 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
print <td>Difficulty</td>";
````

After:

````text
print "<td>Difficulty</td>";
````

## P180-C099 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
show_solution($di fficulties);
````

After:

````text
show_solution($difficulties);
````

## P180-C100 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
print </tr>";
````

After:

````text
print "</tr>";
````

## P180-C101 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
print <tr>";
````

After:

````text
print "<tr>";
````

## P180-C102 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
print <td>Count</td>";
````

After:

````text
print "<td>Count</td>";
````

## P180-C103 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
print
````

After:

````text
print "</tr>";
````

## P180-C104 · PDF page 180 · printed page 171

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-180).

Before:

````text
print
````

After:

````text
print "<tr>";
````

## P181-C105 · PDF page 181 · printed page 172

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-181).

Before:

````text
show_solution($advice['RANK_PCENT], "f’);
````

After:

````text
show_solution($advice['RANK_PCENT'], "f");
````

## P181-C106 · PDF page 181 · printed page 172

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-181).

Before:

````text
show_solution($advice['WEIGHT_SUM'], "f');
````

After:

````text
show_solution($advice['WEIGHT_SUM'], "f");
````

## P181-C107 · PDF page 181 · printed page 172

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-181).

Before:

````text
function give_advice($advice, Sprerequisites, Sdifficulties, Sperformance) {
````

After:

````text
function give_advice($advice, $prerequisites, $difficulties, $performance) {
````

## P181-C108 · PDF page 181 · printed page 172

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-181).

Before:

````text
Sordinal = 0;
````

After:

````text
$ordinal = 0;
````

## P181-C109 · PDF page 181 · printed page 172

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-181).

Before:

````text
foreach ($advice['RANK_PCENT'] as Scourse => $rank_percentage) {
````

After:

````text
foreach ($advice['RANK_PCENT'] as $course => $rank_percentage) {
````

## P181-C110 · PDF page 181 · printed page 172

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-181).

Before:

````text
Srelevance = $advice['WEIGHT_SUM'][$course];
````

After:

````text
$relevance = $advice['WEIGHT_SUM'][$course];
````

## P181-C111 · PDF page 181 · printed page 172

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-181).

Before:

````text
Scolour = "red";
````

After:

````text
$colour = "red";
````

## P181-C112 · PDF page 181 · printed page 172

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-181).

Before:

````text
treason = "<br>This course is not available because its pre-requisites have
````

After:

````text
$reason = "<br>This course is not available because its pre-requisites have
````

## P181-C113 · PDF page 181 · printed page 172

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-181).

Before:

````text
} elseif ($difficulties[$course] > Sperformance) {
````

After:

````text
} elseif ($difficulties[$course] > $performance) {
````

## P181-C114 · PDF page 181 · printed page 172

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-181).

Before:

````text
Scolour = "orange";
````

After:

````text
$colour = "orange";
````

## P181-C115 · PDF page 181 · printed page 172

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-181).

Before:

````text
treason = "<br>This course is not recommended because its perceived
````

After:

````text
$reason = "<br>This course is not recommended because its perceived
````

## P181-C116 · PDF page 181 · printed page 172

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-181).

Before:

````text
} elseif (Sordinal < ENROL COURSE NUM) {
````

After:

````text
} elseif ($ordinal < ENROL_COURSE_NUM) {
````

## P181-C117 · PDF page 181 · printed page 172

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-181).

Before:

````text
Scolour = "green";
````

After:

````text
$colour = "green";
````

## P181-C118 · PDF page 181 · printed page 172

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-181).

Before:

````text
Sreason = "<br>This is recommended as the choice # Sordinal.";
````

After:

````text
$reason = "<br>This is recommended as the choice # $ordinal.";
````

## P181-C119 · PDF page 181 · printed page 172

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-181).

Before:

````text
Scolour = "blue";
````

After:

````text
$colour = "blue";
````

## P181-C120 · PDF page 181 · printed page 172

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-181).

Before:

````text
Sreason =
````

After:

````text
$reason = "";
````

## P182-C121 · PDF page 182 · printed page 173

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-182).

Before:

````text
printf("<p><font color=\"$colour\">The course Scourse has a rating of
````

After:

````text
printf("<p><font color=\"$colour\">The course $course has a rating of
````

## P182-C122 · PDF page 182 · printed page 173

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-182).

Before:

````text
$rank_percentage, Srelevance, Sreason);
````

After:

````text
$rank_percentage, $relevance, $reason);
````

## P182-C123 · PDF page 182 · printed page 173

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-182).

Before:

````text
foreach (Stables as Skey => $ value) {
````

After:

````text
foreach ($tables as $key => $value) {
````

## P182-C124 · PDF page 182 · printed page 173

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-182).

Before:

````text
print "<h 1 >Problem</h 1 >\n";
````

After:

````text
print "<h1>Problem</h1>\n";
````

## P182-C125 · PDF page 182 · printed page 173

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-182).

Before:

````text
print "<table border=\"l\">\n";
````

After:

````text
print "<table border=\"1\">\n";
````

## P182-C126 · PDF page 182 · printed page 173

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-182).

Before:

````text
attrtabheaderQ ;
````

After:

````text
attr_tab_header();
````

## P183-C127 · PDF page 183 · printed page 174

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-183).

Before:

````text
print "<td>knowledge 15</td><td>knowledge20</td><td>knowledge47</td>\n";
````

After:

````text
print "<td>knowledge15</td><td>knowledge20</td><td>knowledge47</td>\n";
````

## P183-C128 · PDF page 183 · printed page 174

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-183).

Before:

````text
print "<td><input type=\"text\" name=\"DSP\" size=\"l\"></td>";
````

After:

````text
print "<td><input type=\"text\" name=\"DSP\" size=\"1\"></td>";
````

## P183-C129 · PDF page 183 · printed page 174

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-183).

Before:

````text
print "<td><input type=\"text\" name=\"OPTIC\" size=\"l\"x/td>";
````

After:

````text
print "<td><input type=\"text\" name=\"OPTIC\" size=\"1\"></td>";
````

## P183-C130 · PDF page 183 · printed page 174

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-183).

Before:

````text
print "<td><input type=\"text\" name=\"MWAVE\" size=\"l\"></td>";
````

After:

````text
print "<td><input type=\"text\" name=\"MWAVE\" size=\"1\"></td>";
````

## P183-C131 · PDF page 183 · printed page 174

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-183).

Before:

````text
print "<td><input type=\"text\" name=\"NTWRK\" size=\"l\"></td>";
````

After:

````text
print "<td><input type=\"text\" name=\"NTWRK\" size=\"1\"></td>";
````

## P183-C132 · PDF page 183 · printed page 174

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-183).

Before:

````text
print "<td><input type=\"text\" name=\"SATEL\" size=\"l\"></td>";
````

After:

````text
print "<td><input type=\"text\" name=\"SATEL\" size=\"1\"></td>";
````

## P183-C133 · PDF page 183 · printed page 174

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-183).

Before:

````text
print "<td><input type=\"text\" name=\"PRFM\" size=\"l\"></td>";
````

After:

````text
print "<td><input type=\"text\" name=\"PRFM\" size=\"1\"></td>";
````

## P183-C134 · PDF page 183 · printed page 174

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-183).

Before:

````text
print "<td><input type=\"text\" name=\"CHRT\" size=\"l\"></td>";
````

After:

````text
print "<td><input type=\"text\" name=\"CHRT\" size=\"1\"></td>";
````

## P183-C135 · PDF page 183 · printed page 174

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-183).

Before:

````text
print "<td><input type=\"radio\" name=\"table\" value=\"l\"></td>";
````

After:

````text
print "<td><input type=\"radio\" name=\"table\" value=\"1\"></td>";
````

## P183-C136 · PDF page 183 · printed page 174

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-183).

Before:

````text
print "<td><input type=\"radio\" name=\"table\" value=\"2\"x/td>";
````

After:

````text
print "<td><input type=\"radio\" name=\"table\" value=\"2\"></td>";
````

## P183-C137 · PDF page 183 · printed page 174

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-183).

Before:

````text
$ lines = file ('http://www.tanat.net/cbr/problems.txt');
````

After:

````text
$lines = file ('http://www.tanat.net/cbr/problems.txt');
````

## P183-C138 · PDF page 183 · printed page 174

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-183).

Before:

````text
Sproblem = build_case();
````

After:

````text
$problem = build_case();
````

## P183-C139 · PDF page 183 · printed page 174

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-183).

Before:

````text
$query_str
````

After:

````text
$query_str =
````

## P183-C140 · PDF page 183 · printed page 174

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-183).

Before:

````text
Sproblemid = strval($line_num+l);
````

After:

````text
$problem_id = strval($line_num+1);
````

## P184-C141 · PDF page 184 · printed page 175

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-184).

Before:

````text
foreach (Stables as Skey => $ value) {
````

After:

````text
foreach ($tables as $key => $value) {
````

## P185-C142 · PDF page 185 · printed page 176

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-185).

Before:

````text
print "<table border=\"l\">\n";
````

After:

````text
print "<table border=\"1\">\n";
````

## P185-C143 · PDF page 185 · printed page 176

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-185).

Before:

````text
while ($row = mysql_fetch_array($result, MYSQL ASSOC)) {
````

After:

````text
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
````

## P185-C144 · PDF page 185 · printed page 176

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-185).

Before:

````text
Scase = build_case($row['DSP'], $row[’OPTIC'], $row['MWAVE'], $row["NTWRK'],
````

After:

````text
$case = build_case($row['DSP'], $row['OPTIC'], $row['MWAVE'], $row['NTWRK'],
````

## P186-C145 · PDF page 186 · printed page 177

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-186).

Before:

````text
print "<table border=\"l\">";
````

After:

````text
print "<table border=\"1\">";
````

## P186-C146 · PDF page 186 · printed page 177

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-186).

Before:

````text
build_case($_GET['DSP'],$_GET['OPTIC'],$_GET['MWAVE,],$_GET[rNTWRK'],$_GET['SA
````

After:

````text
build_case($_GET['DSP'],$_GET['OPTIC'],$_GET['MWAVE'],$_GET['NTWRK'],$_GET['SA
````

## P186-C147 · PDF page 186 · printed page 177

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-186).

Before:

````text
TEL'],$_GET['PRFM'],$_GET[’CHRT']);
````

After:

````text
TEL'],$_GET['PRFM'],$_GET['CHRT']);
````

## P186-C148 · PDF page 186 · printed page 177

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-186).

Before:

````text
l^¥ ************************************ Diff of Mcsns
````

After:

````text
/***************************************Correlaton & Diff of Means
````

## P186-C149 · PDF page 186 · printed page 177

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-186).

Before:

````text
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
````

After:

````text
*****************************************/
````

## P186-C150 · PDF page 186 · printed page 177

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-186).

Before:

````text
for ($i=l; $i<=RANK_NUM; $i++) {
````

After:

````text
for ($i=1; $i<=RANK_NUM; $i++) {
````

## P186-C151 · PDF page 186 · printed page 177

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-186).

Before:

````text
array('id,=>"0",,percent,=>0,'DSP’=>"0",'OPTIC'=>"0",,MWAVE'=>”0",,NTWRK'=>"0,',,SATE
````

After:

````text
array('id'=>"0",'percent'=>0,'DSP'=>"0",'OPTIC'=>"0",'MWAVE'=>"0",'NTWRK'=>"0",'SATE
````

## P186-C152 · PDF page 186 · printed page 177

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-186).

Before:

````text
L'=>"0",'PRFM->"0",'CHRT->"0",,D1'=>"0",'02'=>"0",'OM3'=>"0",,M 4->"0",,NM5'=>"0",'
````

After:

````text
L'=>"0",'PRFM'=>"0",'CHRT'=>"0",'D1'=>"0",'O2'=>"0",'OM3'=>"0",'M4'=>"0",'NM5'=>"0",'
````

## P186-C153 · PDF page 186 · printed page 177

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-186).

Before:

````text
N 6->"0”,'NS7'=>"0",'S8->"0");
````

After:

````text
N6'=>"0",'NS7'=>"0",'S8'=>"0");
````

## P187-C154 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
Squery = "SELECT * FROM knowledge$knowledge_size";
````

After:

````text
$query = "SELECT * FROM knowledge$knowledge_size";
````

## P187-C155 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
Sresult = mysql_query($query) or die ("Query failed");
````

After:

````text
$result = mysql_query($query) or die ("Query failed");
````

## P187-C156 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
while ($row = mysql_fetch_array($result, MYSQL ASSOC)) {
````

After:

````text
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
````

## P187-C157 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
Scase = build_case($row['DSP'], $row['OPTIC'], $row['MWAVE'],
````

After:

````text
$case = build_case($row['DSP'], $row['OPTIC'], $row['MWAVE'],
````

## P187-C158 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
$row['NTWRK'], $row['SATEL'], $row['PRFM'], $row['CHRT’]);
````

After:

````text
$row['NTWRK'], $row['SATEL'], $row['PRFM'], $row['CHRT']);
````

## P187-C159 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
Scaseint = array_slice($case, 0, 5);
````

After:

````text
$case_int = array_slice($case, 0, 5);
````

## P187-C160 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
Scasechar = array_slice($case, 5);
````

After:

````text
$case_char = array_slice($case, 5);
````

## P187-C161 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
Sproblemchar = array_slice($problem, 5);
````

After:

````text
$problem_char = array_slice($problem, 5);
````

## P187-C162 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
$mean = Sproblemchar;
````

After:

````text
$mean = $problem_char;
````

## P187-C163 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
foreach (Scasechar as Skey => Svalue) {
````

After:

````text
foreach ($case_char as $key => $value) {
````

## P187-C164 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
$mean[$key] = (Svalue + $problem_char[$key]) / 2;
````

After:

````text
$mean[$key] = ($value + $problem_char[$key]) / 2;
````

## P187-C165 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
Sdiff = Sproblemchar;
````

After:

````text
$diff = $problem_char;
````

## P187-C166 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
foreach (Sproblem char as Skey => Svalue) {
````

After:

````text
foreach ($problem_char as $key => $value) {
````

## P187-C167 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
SdifffSkey] = Svalue - $mean[$key];
````

After:

````text
$diff[$key] = $value - $mean[$key];
````

## P187-C168 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
$match_percent = sumproduct($problem_int, Scase int) /
````

After:

````text
$match_percent = sumproduct($problem_int, $case_int) /
````

## P187-C169 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
case size(Sproblem int) / case size(Scase int) * 5/7;
````

After:

````text
case_size($problem_int) / case_size($case_int) * 5/7;
````

## P187-C170 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
$match_percent += (1- pow(case size(Sdiff) / case_size($problem_char), 2)) *
````

After:

````text
$match_percent += (1- pow(case_size($diff) / case_size($problem_char), 2)) *
````

## P187-C171 · PDF page 187 · printed page 178

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-187).

Before:

````text
for ($j=l; $j<=RANK_NUM; $j++) {
````

After:

````text
for ($j=1; $j<=RANK_NUM; $j++) {
````

## P188-C172 · PDF page 188 · printed page 179

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-188).

Before:

````text
$row['DSP'], $row['OPTIC], $row['MWAVE'],
````

After:

````text
$row['DSP'], $row['OPTIC'], $row['MWAVE'],
````

## P188-C173 · PDF page 188 · printed page 179

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-188).

Before:

````text
$row['PRFM'], $row['CHRT'], $row['Dl'], $row['02'],
````

After:

````text
$row['PRFM'], $row['CHRT'], $row['D1'], $row['O2'],
````

## P188-C174 · PDF page 188 · printed page 179

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-188).

Before:

````text
$row['OM3'], $row['M4'], $row["NM5'],
````

After:

````text
$row['OM3'], $row['M4'], $row['NM5'],
````

## P188-C175 · PDF page 188 · printed page 179

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-188).

Before:

````text
$difficulty = array('D 1' => 1, 02' => 2, '0M3' => 1, 'M4' => 3, 'NM5' => 2, "N6" => 3,
````

After:

````text
$difficulty = array('D1' => 1, 'O2' => 2, 'OM3' => 1, 'M4' => 3, 'NM5' => 2, 'N6' => 3,
````

## P188-C176 · PDF page 188 · printed page 179

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-188).

Before:

````text
Sprereq = array('Dl' => 1, '02' => 1, '0M3' => 0, 'M4' => 1, 'NM5' => 0, 'N6' => 1, 'NS7'
````

After:

````text
$prereq = array('D1' => 1, 'O2' => 1, 'OM3' => 0, 'M4' => 1, 'NM5' => 0, 'N6' => 1, 'NS7'
````

## P188-C177 · PDF page 188 · printed page 179

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-188).

Before:

````text
= > 0 ,'S8'=> 1);
````

After:

````text
=> 0, 'S8' => 1);
````

## P188-C178 · PDF page 188 · printed page 179

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-188).

Before:

````text
$advicel = process_ranked_cases($match);
````

After:

````text
$advice1 = process_ranked_cases($match);
````

## P188-C179 · PDF page 188 · printed page 179

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-188).

Before:

````text
^* ************************************* *^2g^£m£g of 2 vectors
````

After:

````text
/***************************************distance of 2 vectors
````

## P188-C180 · PDF page 188 · printed page 179

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-188).

Before:

````text
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
````

After:

````text
*****************************************/
````

## P188-C181 · PDF page 188 · printed page 179

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-188).

Before:

````text
for ($i=l; $i<=RANK_NUM; $i++) {
````

After:

````text
for ($i=1; $i<=RANK_NUM; $i++) {
````

## P188-C182 · PDF page 188 · printed page 179

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-188).

Before:

````text
array('id'=>"0",'percent->0,'DSP'=>"0",'OPTIC'=>"0",'MW AVE'=>"0",'NTWRK'=>"0",'SATE
````

After:

````text
array('id'=>"0",'percent'=>0,'DSP'=>"0",'OPTIC'=>"0",'MWAVE'=>"0",'NTWRK'=>"0",'SATE
````

## P188-C183 · PDF page 188 · printed page 179

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-188).

Before:

````text
L'=>"0",'PRFM'=>"0",'CHRT'=>"0",'Dl'=>"0",'02'=>"0",'OM3’=>"0",'M4'=>"0",rNM5->"0",'
````

After:

````text
L'=>"0",'PRFM'=>"0",'CHRT'=>"0",'D1'=>"0",'O2'=>"0",'OM3'=>"0",'M4'=>"0",'NM5'=>"0",'
````

## P188-C184 · PDF page 188 · printed page 179

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-188).

Before:

````text
N6’=>"0",’NS7'=>"0",'S8'=>"0");
````

After:

````text
N6'=>"0",'NS7'=>"0",'S8'=>"0");
````

## P188-C185 · PDF page 188 · printed page 179

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-188).

Before:

````text
Squery = "SELECT * FROM knowledge$knowledge_size";
````

After:

````text
$query = "SELECT * FROM knowledge$knowledge_size";
````

## P188-C186 · PDF page 188 · printed page 179

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-188).

Before:

````text
Sresult = mysql_query($query) or die ("Query failed");
````

After:

````text
$result = mysql_query($query) or die ("Query failed");
````

## P188-C187 · PDF page 188 · printed page 179

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-188).

Before:

````text
while ($row = mysql_fetch_array($result, MYSQL ASSOC)) {
````

After:

````text
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
````

## P189-C188 · PDF page 189 · printed page 180

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-189).

Before:

````text
Scase = build_case($row['DSP'], $row['OPTIC'], $row['MWAVE'],
````

After:

````text
$case = build_case($row['DSP'], $row['OPTIC'], $row['MWAVE'],
````

## P189-C189 · PDF page 189 · printed page 180

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-189).

Before:

````text
$row['NTWRK'], $row['SATEL'], $row['PRFM’], $row[’CHRT']);
````

After:

````text
$row['NTWRK'], $row['SATEL'], $row['PRFM'], $row['CHRT']);
````

## P189-C190 · PDF page 189 · printed page 180

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-189).

Before:

````text
Sdiff = build_case();
````

After:

````text
$diff = build_case();
````

## P189-C191 · PDF page 189 · printed page 180

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-189).

Before:

````text
foreach ($case as $key => Svalue) {
````

After:

````text
foreach ($case as $key => $value) {
````

## P189-C192 · PDF page 189 · printed page 180

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-189).

Before:

````text
$diff[$key] = Svalue - $problem[$key];
````

After:

````text
$diff[$key] = $value - $problem[$key];
````

## P189-C193 · PDF page 189 · printed page 180

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-189).

Before:

````text
$match_percent = 1- pow(case_size($diff) / casesize(Sproblem), 2);
````

After:

````text
$match_percent = 1- pow(case_size($diff) / case_size($problem), 2);
````

## P189-C194 · PDF page 189 · printed page 180

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-189).

Before:

````text
for ($j=l; $j<=RANK_NUM; $j++) {
````

After:

````text
for ($j=1; $j<=RANK_NUM; $j++) {
````

## P189-C195 · PDF page 189 · printed page 180

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-189).

Before:

````text
found_new_solution($matcli, $j, $row['id'], $match_percent,
````

After:

````text
found_new_solution($match, $j, $row['id'], $match_percent,
````

## P189-C196 · PDF page 189 · printed page 180

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-189).

Before:

````text
Srowf’NTWRK'], $row[’SATEL’],
````

After:

````text
$row['NTWRK'], $row['SATEL'],
````

## P189-C197 · PDF page 189 · printed page 180

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-189).

Before:

````text
$row['PRFM'], $row['CHRT'], $row['Dl'], $row['02’],
````

After:

````text
$row['PRFM'], $row['CHRT'], $row['D1'], $row['O2'],
````

## P189-C198 · PDF page 189 · printed page 180

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-189).

Before:

````text
$row['OM3'], $row['M4'], $row["NM5'],
````

After:

````text
$row['OM3'], $row['M4'], $row['NM5'],
````

## P189-C199 · PDF page 189 · printed page 180

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-189).

Before:

````text
$row["N6'], Srow^NSV], $row['S8']);
````

After:

````text
$row['N6'], $row['NS7'], $row['S8']);
````

## P189-C200 · PDF page 189 · printed page 180

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-189).

Before:

````text
print "<h2>Distance of 2 vectors</h2xbr>";
````

After:

````text
print "<h2>Distance of 2 vectors</h2><br>";
````

## P189-C201 · PDF page 189 · printed page 180

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-189).

Before:

````text
trivial IR.
````

After:

````text
/***************************************trivial IR
````

## P189-C202 · PDF page 189 · printed page 180

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-189).

Before:

````text
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
````

After:

````text
*****************************************/
````

## P189-C203 · PDF page 189 · printed page 180

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-189).

Before:

````text
for ($i=l; $i<=RANK_NUM; $i++) {
````

After:

````text
for ($i=1; $i<=RANK_NUM; $i++) {
````

## P190-C204 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
array('id'=>"0",'percent->0,'DSP'=>"0",'OPTIC->"0",'MWAVE'=>"0",'NTWRK->"0",'SATE
````

After:

````text
array('id'=>"0",'percent'=>0,'DSP'=>"0",'OPTIC'=>"0",'MWAVE'=>"0",'NTWRK'=>"0",'SATE
````

## P190-C205 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
L'=>"0",'PRFM'=>"0",'CHRT'=>"0",’DT=>"0",'02->"0",'OM3'=>"0",'M4'=>"0",rNM5'=>"0",'
````

After:

````text
L'=>"0",'PRFM'=>"0",'CHRT'=>"0",'D1'=>"0",'O2'=>"0",'OM3'=>"0",'M4'=>"0",'NM5'=>"0",'
````

## P190-C206 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
Squery = "SELECT * FROM knowledge$knowledge_size";
````

After:

````text
$query = "SELECT * FROM knowledge$knowledge_size";
````

## P190-C207 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
Sresult = mysqlquery(Squery) or die ("Query failed");
````

After:

````text
$result = mysql_query($query) or die ("Query failed");
````

## P190-C208 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
while ($row = mysql_fetch_array($result, MYSQL ASSOC)) {
````

After:

````text
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
````

## P190-C209 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
Scase = build_case($row['DSP'], $row[’OPTIC'], $row['MWAVE'],
````

After:

````text
$case = build_case($row['DSP'], $row['OPTIC'], $row['MWAVE'],
````

## P190-C210 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
$match_percent = sumproduct($problem,Scase) / case size(Sproblem) /
````

After:

````text
$match_percent = sumproduct($problem,$case) / case_size($problem) /
````

## P190-C211 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
casesize(Scase);
````

After:

````text
case_size($case);
````

## P190-C212 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
for ($j=l; $j<=RANK_NUM; $j++) {
````

After:

````text
for ($j=1; $j<=RANK_NUM; $j++) {
````

## P190-C213 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
found_new_solution($match, $j, $row['id’], $match_percent,
````

After:

````text
found_new_solution($match, $j, $row['id'], $match_percent,
````

## P190-C214 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
$row[’DSP'], $row['OPTIC’], $row['MWAVE'],
````

After:

````text
$row['DSP'], $row['OPTIC'], $row['MWAVE'],
````

## P190-C215 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
Srow [*NT WRK'], $row['SATEL'],
````

After:

````text
$row['NTWRK'], $row['SATEL'],
````

## P190-C216 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
$row['PRFM’], $row[’CHRT'], $row['Dl'], $row['02'],
````

After:

````text
$row['PRFM'], $row['CHRT'], $row['D1'], $row['O2'],
````

## P190-C217 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
$row['N6'], $row[rNS7’], $row['S8']);
````

After:

````text
$row['N6'], $row['NS7'], $row['S8']);
````

## P190-C218 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
Sadvice3 = process ranked cases(Smatch);
````

After:

````text
$advice3 = process_ranked_cases($match);
````

## P190-C219 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
^* ******************************************************/
````

After:

````text
/*******************************************************/
````

## P190-C220 · PDF page 190 · printed page 181

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-190).

Before:

````text
print "<h 1 >Problem</h 1 >";
````

After:

````text
print "<h1>Problem</h1>";
````

## P191-C221 · PDF page 191 · printed page 182

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-191).

Before:

````text
print "<table border=\"l\">";
````

After:

````text
print "<table border=\"1\">";
````

## P191-C222 · PDF page 191 · printed page 182

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-191).

Before:

````text
print "<hl>Advice Table</hl>";
````

After:

````text
print "<h1>Advice Table</h1>";
````

## P191-C223 · PDF page 191 · printed page 182

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-191).

Before:

````text
show_advice_table($advicel, Sprereq, Sdifficulty);
````

After:

````text
show_advice_table($advice1, $prereq, $difficulty);
````

## P191-C224 · PDF page 191 · printed page 182

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-191).

Before:

````text
show_advice_table($advice2, Sprereq, Sdifficulty);
````

After:

````text
show_advice_table($advice2, $prereq, $difficulty);
````

## P191-C225 · PDF page 191 · printed page 182

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-191).

Before:

````text
show_advice_table($advice3, Sprereq, Sdifficulty);
````

After:

````text
show_advice_table($advice3, $prereq, $difficulty);
````

## P191-C226 · PDF page 191 · printed page 182

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-191).

Before:

````text
array_multisort( Sadvicel ['RANKPCENT'], SORTNUMERIC,
````

After:

````text
array_multisort( $advice1['RANK_PCENT'], SORT_NUMERIC,
````

## P191-C227 · PDF page 191 · printed page 182

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-191).

Before:

````text
array_multisort( $advice2['RANK_PCENT'], SORTNUMERIC,
````

After:

````text
array_multisort( $advice2['RANK_PCENT'], SORT_NUMERIC,
````

## P191-C228 · PDF page 191 · printed page 182

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-191).

Before:

````text
SORT_DESC,$advice3['WEIGHT_SUM'],SORT_NUMERIC, SORTDESC);
````

After:

````text
SORT_DESC,$advice3['WEIGHT_SUM'],SORT_NUMERIC, SORT_DESC);
````

## P191-C229 · PDF page 191 · printed page 182

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-191).

Before:

````text
array multisort( Sadvice3 ['RANK PCENT'], SORT NUMERIC,
````

After:

````text
array_multisort( $advice3['RANK_PCENT'], SORT_NUMERIC,
````

## P191-C230 · PDF page 191 · printed page 182

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-191).

Before:

````text
/ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
````

After:

````text
/*******************************************************/
````

## P191-C231 · PDF page 191 · printed page 182

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-191).

Before:

````text
print "<h 1 >Problem</h 1 >";
````

After:

````text
print "<h1>Problem</h1>";
````

## P191-C232 · PDF page 191 · printed page 182

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-191).

Before:

````text
print "ctable border=\" l\"><tr>";
````

After:

````text
print "<table border=\"1\"><tr>";
````

## P191-C233 · PDF page 191 · printed page 182

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-191).

Before:

````text
showinterest(Sproblem);
````

After:

````text
show_interest($problem);
````

## P192-C234 · PDF page 192 · printed page 183

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-192).

Before:

````text
print "<hl>Advice with Reasons</hl>";
````

After:

````text
print "<h1>Advice with Reasons</h1>";
````

## P192-C235 · PDF page 192 · printed page 183

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-192).

Before:

````text
give_advice($advice 1, Sprereq, Sdifficulty, $problem['PRFM']);
````

After:

````text
give_advice($advice1, $prereq, $difficulty, $problem['PRFM']);
````

## P192-C236 · PDF page 192 · printed page 183

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-192).

Before:

````text
give_advice($advice2, Sprereq, Sdifficulty, $problem['PRFM']);
````

After:

````text
give_advice($advice2, $prereq, $difficulty, $problem['PRFM']);
````

## P192-C237 · PDF page 192 · printed page 183

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-192).

Before:

````text
give_advice($advice3, Sprereq, Sdifficulty, $problem['PRFM']);
````

After:

````text
give_advice($advice3, $prereq, $difficulty, $problem['PRFM']);
````

## P192-C238 · PDF page 192 · printed page 183

Category: code_ocr. [View source page](https://cbr.purposebuilt.app/reader#page-192).

Before:

````text
include("append.inc ");
````

After:

````text
include("append.inc");
````

## P197-C239 · PDF page 197 · printed page 188

Category: ocr_punctuation_spacing. [View source page](https://cbr.purposebuilt.app/reader#page-197).

Before:

````text
The course O2 has a rating of 98.413% (matched with cases in the past) and a subrating of 24.000% (based on frequency of occurrances in ranked cases ). This is recommended as the choice # 2.
````

After:

````text
The course O2 has a rating of 98.413% (matched with cases in the past) and a subrating of 24.000% (based on frequency of occurrances in ranked cases). This is recommended as the choice # 2.
````

## appendix-b-literal-rows · PDF page 173 · printed page 164

Category: literal native source data. [View source page](https://cbr.purposebuilt.app/reader#page-173).

Structural or native-object change:

````text
{"id": "appendix-b-literal-rows", "type": "literal_data_block", "pdf_pages": [173, 174], "source_file": "appendix_b_rows.json", "source_row_count": 50, "printed_values_per_row": 16, "source_header_labels": 15, "interpretation": "Positional single-digit transcription only; column-label alignment unresolved.", "category": "literal native source data"}
````

## screen-page-194 · PDF page 194 · printed page 185

Category: native screenshot-table reconstruction. [View source page](https://cbr.purposebuilt.app/reader#page-194).

Structural or native-object change:

````text
{"id": "screen-page-194", "type": "replace_paragraphs_with_tables", "pdf_page": 194, "replace_paragraph_indices": [1, 2, 3], "table_ids": ["appendix-E-problem-initial", "appendix-E-ranked-correlation", "appendix-E-ranked-distance-part-194"], "source_file": "screen_native_tables.json", "preserve_paragraph_indices": [0], "trailing_blocks": [], "category": "native screenshot-table reconstruction"}
````

## screen-page-195 · PDF page 195 · printed page 186

Category: native screenshot-table reconstruction. [View source page](https://cbr.purposebuilt.app/reader#page-195).

Structural or native-object change:

````text
{"id": "screen-page-195", "type": "replace_paragraphs_with_tables", "pdf_page": 195, "replace_paragraph_indices": [0, 1, 2, 3, 4, 5, 6], "table_ids": ["appendix-E-ranked-distance-part-195", "appendix-E-ranked-trivial", "appendix-E-problem-195"], "source_file": "screen_native_tables.json", "trailing_blocks": [["heading", "Advice Table"], ["heading", "Correlation of Interests (INT) and Difference of Means"], ["text", "Description D1 O2 OM3 M4 NM5 N6 NS7 S8"]], "category": "native screenshot-table reconstruction"}
````

## screen-page-196 · PDF page 196 · printed page 187

Category: native screenshot-table reconstruction. [View source page](https://cbr.purposebuilt.app/reader#page-196).

Structural or native-object change:

````text
{"id": "screen-page-196", "type": "replace_paragraphs_with_tables", "pdf_page": 196, "replace_paragraph_indices": [0, 1, 2, 3, 4], "table_ids": ["appendix-E-advice-correlation", "appendix-E-advice-distance", "appendix-E-advice-trivial", "appendix-E-problem-196"], "source_file": "screen_native_tables.json", "trailing_blocks": [["heading", "Advice with Reasons"]], "category": "native screenshot-table reconstruction"}
````

## binding-visible-text-200 · PDF page 200 · printed page front matter or binding

Category: visible binding transcription. [View source page](https://cbr.purposebuilt.app/reader#page-200).

Structural or native-object change:

````text
{"id": "binding-visible-text-200", "type": "binding_metadata", "pdf_page": 200, "source_file": "source_images/pdf-200-200dpi.png", "visible_text": ["3 1259 00782 2161"], "retain_source_image": true, "interpretation": "Printed library identifier, not an inferred student ID.", "category": "visible binding transcription"}
````

## binding-visible-text-201 · PDF page 201 · printed page front matter or binding

Category: visible binding transcription. [View source page](https://cbr.purposebuilt.app/reader#page-201).

Structural or native-object change:

````text
{"id": "binding-visible-text-201", "type": "binding_metadata", "pdf_page": 201, "source_file": "source_images/pdf-201-200dpi.png", "visible_text": ["RMIT UNIVERSITY LIBRARY", "3 1259 00782 2161"], "retain_source_image": true, "category": "visible binding transcription"}
````

Original research claims, source arithmetic and historical code behavior are preserved. These corrections do not establish the validity of the original methods or results.
