To apply bounded model checking, seek an initial path in a transition system satisfying
A satisfying assignment for its bounded encoding is enough to disprove the specification. Use a lasso path: positions follow the transition relation, and a final arrow returns from to some , . The repeated part is . On such a lasso path, is equivalent to having true at some position of the repeated part.
For this example an explicit Boolean formula for the bounded search is
Here means and means that the source diagram has the arrow ; each can be encoded by finite Boolean variables for the states. The loop requirements are the fairness assumption and the negated specification respectively. Unrolling the transition relation and adding a loop closure is the usual bounded model checking construction.[ref]
At bound , an initial self-loop would be needed. The only such choice is , whose repeated label satisfies and . It violates both loop requirements. The other initial state, , has no self-loop. Thus has no satisfying assignment.
At bound , choose
Both required arrows and exist. At , is false and hence is false, so both repeated-part requirements are true. Equivalently, the label values are and . These values give a satisfying assignment of , representing the fair counterexample . Consequently
Here the bound counts forward arrows before the returning arrow, so stores two positions and describes a two-state repeated part. There is no need for a completeness bound: the exhibited fair counterexample settles the negative answer. These satisfying assignments are checked directly; no claim of executing an external SAT solver is needed.
Denote the three families found in part (a) by , and , where . All are fair paths in a transition system. The verdicts are
Each verdict follows from the infinite path in a transition system semantics, rather than from a finite prefix alone.
For , take . From onwards, is always false, so there is no time after which is always true. Therefore the first specification fails, with fair counterexample . The path in a transition system is another fair counterexample, because it encounters , where is false, infinitely often. Each does satisfy , since satisfies forever.
For , take . Its next state is , so is true, but is false as just shown. Thus the second specification fails, with fair counterexample . Alternatively, has next state , making its antecedent true and its consequent false. For with , the next state is still , so this implication is true there because its antecedent is false; this does not rescue a universally quantified specification.
For , the fair path in a transition system reaches , where is false. Thus the third specification fails, with fair counterexample . In fact every fair initial path in a transition system reaches or , so none satisfies .
For , strong until requires an eventual position satisfying , together with at every earlier position. On , is true forever, so never holds. Thus the fourth specification fails, with fair counterexample . On each , holds until entry into , after which holds forever. On each , holds until entry into , after which holds forever. These latter paths in a transition system satisfy the strong until requirement.
For , weak until permits either the preceding strong until behavior or . Every and satisfies the strong until behavior, and satisfies . These exhaust the fair initial paths in a transition system. Therefore the fifth specification holds on every fair initial path. Allowing the left operand to continue forever is exactly what distinguishes this answer from the previous one.
For , the two next-time operators belong to the left operand of strong until. The fair path in a transition system has true at positions zero and one, then false at every position from two onwards. Therefore first holds at position two. But is false already at position zero, since is false at position two. A witness for strong until cannot occur at zero or one, where its right operand is false, or at two or later, where its left operand has already failed. Thus the sixth specification fails, with fair counterexample .
Indeed, every fair initial path in a transition system fails the sixth specification. On , the right operand never holds. On and , let be the first position of the permanent tail. The left operand is false at , strictly before any possible right-operand witness. This also checks that the two next-time operators cannot be ignored or shifted onto the whole strong until formula.
Use the two incoming initial arrows in the source figure: . An atomic proposition is true precisely at the states whose displayed labels contain it. In particular, is false at every state. Hence is true on every infinite path in a transition system, and the first implication in the fairness assumption imposes no restriction.
Write . The remaining implication is . By the linear temporal logic duality , it is equivalent to
since implies . Thus a path is fair exactly when it visits states not labelled with both and infinitely often. This condition also follows directly: if eventually holds forever, then eventually holds forever and the required is impossible; if does not eventually hold forever, the implication has a false antecedent.
Every initial path in a transition system in the upper component either alternates forever between and , or makes finitely many alternations and then stays at . These are all fair: the first visits infinitely often, and the second visits infinitely often; neither state satisfies .
In the lower component, a path in a transition system can stay at forever, or leave it after finitely many visits and pass through to . The constant path in a transition system is unfair because holds forever while never holds. Every departing path in a transition system is fair because satisfies neither nor . Here means infinite repetition of the finite word . Therefore
This notation lists initial paths in a transition system. If one instead allows arbitrary starting states, their suffixes starting at are fair as well; the fair paths in a transition system from each initial state, and hence all verdicts below, are unchanged.
A transition relation requires an explicit interpretation of the Boolean variables as current and next state bits. Take the four states . Encode the current state by and the next state by , and define
The extra current bit is deliberately unused by the Boolean formula. A four-state transition system normally needs four bits to describe a pair of states; a Boolean formula using only three of them simply describes a transition relation independent of the fourth bit.
When , the condition is , so the permitted next states are and . When , the condition is , so the permitted next states are . The resulting adjacency matrix, with rows and columns both ordered , is
The directed graph below plots all ten directed edges, including the three self-loops. No arrow enters , but it is a valid state with two outgoing arrows. Every state has a successor. As permitted, no initial states are distinguished.
Figure 1.
Four-state transition system with current bits (u, x), next bits (y, z), and relation y or (x and z)
. Details.
Choose the variable ordering of a binary decision diagram . The Boolean cofactor with is the constant one, while the Boolean cofactor with is . Consequently the right panel in part (d) has the following arrows:
Here an entry such as denotes the zero arrow to the decision node. There are vertices: three decision nodes and two terminal nodes, saving one decision node relative to either of the previous orderings. Testing first is effective because its one branch settles the entire Boolean function immediately. The ordering works equally well.
This is also minimal among ordinary binary decision diagrams for this Boolean function. Each Boolean variable is essential: setting leaves ; setting leaves ; and setting leaves . If a Boolean variable were never tested, the represented Boolean function could not depend on it. Thus at least three decision nodes are necessary, and the construction attains that bound.
A reduced ordered binary decision diagram is obtained by sharing equal terminal nodes, removing a decision node whose two children are equal, and sharing decision nodes with the same tested Boolean variable and the same ordered pair of children. Apply these rules to the binary decision tree in part (c) as follows.
The left panel below is therefore the resulting reduced ordered binary decision diagram. Its full description is
Decision nodeTestZero childOne child
01
1
01
There are vertices: four decision nodes and two terminal nodes.
Figure 1.
Reduced ordered decision diagrams: reversing the given order preserves its size, while testing y first saves one decision node
. Details.
The original binary decision diagram also has four decision nodes and two terminal nodes, and is already reduced for : the two decision nodes have different children and no decision node has two equal children. Thus reversing the order has not made this example smaller. Indeed is unchanged by interchanging and , and the new binary decision diagram is the original one with those two labels exchanged. The uniqueness of a reduced ordered binary decision diagram applies to a fixed variable ordering of a binary decision diagram; it does not assert that every ordering has the same size.
For a complete binary decision tree with variable ordering of a binary decision diagram , first test , then , then on every branch. The four Boolean cofactors after the first two tests are
The eight terminal nodes, read from left to right in the figure, are . The repeated tests are intentional: this is the full binary decision tree before any reduction.
Figure 1.
Complete decision tree for the ordering z, y, x; dashed edges test zero and solid edges test one
. Details.
For example, the branch ends at one, whereas ends at zero. This checks the dependence on that must survive the later reduction.
Splitting the Boolean function according to the first tested Boolean variable gives
The identity follows by considering and . Using it and distributing Boolean conjunction over Boolean disjunction,
The first two terms combine to because . This also explains the truth table: always makes the output one, while with the output is one exactly when both and are one.
Follow the binary decision diagram from its top decision node to a terminal node, choosing the outgoing arrow specified by each tested Boolean variable. If , the left decision node returns , independently of . If , the right decision node returns one when and otherwise returns . Thus the truth table, with rows in the order , is:
Thus the output column of the truth table, in the displayed order, is . In particular, the skipped test on the left does not constrain : both values give the same result.
Write , , and . Correctly classified observations have and total -weight ; incorrectly classified observations have and total weight . The normalizing constant in the AdaBoost update is therefore
For , the definition of gives
If observation is correct, its multiplier in the normalized update is
if it is incorrect, the multiplier is
The corresponding denominators are exactly : they are when and when . Consequently
As a check, the new total mass on correctly classified observations is , and the mass on incorrectly classified observations is . The update thus produces a probability distribution and assigns the two groups equal aggregate mass. When , and every individual weight is unchanged.
The displayed finite update assumes . The usual weak learner guarantees , but it can return a perfect classifier with ; then the logarithm is infinite and the normalized exponential formula is not defined. AdaBoost stops on that perfect hypothesis rather than executing this update. Similarly, the printed formula is not an ordinary finite update at .
Use weighted decision stump optimization with the convention , and write . For each coordinate , sort the examples by their th coordinate and group all equal coordinate values. For a threshold between the th and st distinct values, the decision stump predicts on the left and on the right. Its weighted misclassification risk is
Start with a threshold below the minimum observed value. Every prediction is then , and the initial error is . Sweep the threshold from left to right. When it passes an entire group of equal coordinate values, that group's prediction changes from to , so update
Record the smallest value and a threshold achieving it, including the final threshold above all observations, which predicts everywhere on the sample. Representatives can be chosen strictly between successive distinct values; the two outer representatives are finite real numbers below the minimum and above the maximum.
Every threshold has exactly the same sample predictions as one of these representatives. In particular, if a threshold equals an observed value, the equality group is on the side under the chosen sign function convention, which duplicates the representative immediately before that group. Thus the sweep includes every possible sample labelling by the stated decision stump. Repeating for all coordinates and returning the globally smallest error proves optimality.
Sorting costs per coordinate and the grouped sweep costs . The overall time complexity is
with working storage when coordinates are processed one at a time. Pre-sorted coordinate orders can be reused across repeated AdaBoost rounds, leaving work per round for changing weights. The paper allows only the orientation ; reversing its polarity would enlarge the hypothesis class and is unnecessary here.
The two-interval approximation by one interval supplies an approximation guarantee for every input probability distribution . Merge overlapping target intervals, and write the target positive set as at most two disjoint ordered intervals . Put and . If there is only one nonempty component, the target already belongs to the interval hypothesis class and has zero misclassification risk. If the interval notation permits empty intervals and the target is empty, choose that same empty interval in .
In the two-component case, choosing the heavier component as the hypothesis loses only the lighter component, so its misclassification risk is
Alternatively, choose the single interval spanning both components. This produces no false negatives, and its false positives lie in the gap. Its misclassification risk is at most . Both candidates are in , so there exists an interval with
For the last step, use if , and if . This avoids any assumption that an empty interval or the whole real line belongs to .
Use empirical risk minimization over intervals on independent labelled examples. The generalization result needed here is the VC uniform convergence theorem: for a binary hypothesis class of finite VC dimension , there is a universal constant such that, for any labelled-data probability distribution and , a sample size
ensures, with probability at least , that every hypothesis's empirical misclassification risk differs from its misclassification risk by at most . This theorem does not require the labels to be realizable by the hypothesis class.[ref]
The interval hypothesis class has VC dimension two: any two ordered points can receive all four labellings, whereas an interval cannot label three ordered points . Take and choose an interval minimizing the empirical misclassification risk. On the simultaneous convergence event,
Therefore
Since and are fixed constants, examples suffice, which is polynomial in as required by the paper's definition of weak PAC learning.
For completeness, empirical risk minimization over intervals is computationally effective. Sort the sample and group equal coordinates, since one interval cannot split identical inputs. Give each group weight equal to the number of positive labels minus the number of negative labels in that group. The number of empirical mistakes made by an interval is the total number of positives minus the total weight of the consecutive groups it contains. Select the consecutive block of maximum weight, or select a finite interval outside the sample if every nonempty block has negative weight. This enumerates all possible sample labellings by intervals and attains the minimum empirical misclassification risk; sorting and a maximum-block scan are sufficient. The time complexity is .
An embedding is determined by its chosen increasing sequence of positions. Accordingly, the all-subsequence embedding kernel counts pairs of embeddings, one in and one in , that spell the same subsequence. The two embeddings are distinguished even when they spell the same word as another pair. The empty word contributes exactly one pair.
Let , , and define for prefixes. When either prefix is empty, only the empty word has an embedding in both, so
To derive a dynamic programming recurrence, count pairs that do not use position of or do not use position of . Inclusion-exclusion gives
The remaining pairs use both final positions. These positions must be the final letters of the common word, so they contribute nothing if . If , deleting those two final positions is a bijection to arbitrary embedding pairs on the two shorter prefixes, including their empty pair. Their contribution is therefore . Hence
Equivalently, when the final symbols agree the recurrence simplifies to ; when they differ, subtract the diagonal term. Fill the table in increasing prefix order and return . The boundary values and the disjoint counting argument prove correctness by induction on .
A one-row implementation of this dynamic programming uses the saved old diagonal entry:
F[0..p] := 1
for i := 1 to n:
    diagonal := 1
    for j := 1 to p:
        above := F[j]
        if x[i] = y[j]:
            F[j] := above + F[j-1]
        else:
            F[j] := above + F[j-1] - diagonal
        diagonal := above
return F[p]
The assignment to diagonal retains the value from the previous row before F[j] was overwritten. Swapping and if necessary minimizes the row length. Thus the time complexity is arithmetic operations and the extra space complexity is integer cells. Empty inputs return one immediately.
These counts include multiplicity: for , the empty word contributes , the word contributes , and contributes , giving , not three. More generally, each result is at most , since it counts some pairs of position subsets. Exact integers therefore require bits; the stated quadratic bound is an arithmetic-operation bound, with a conservative bound for elementary bit arithmetic.
The proposed positive-semidefinite kernel is valid: for each finite string only finitely many coordinates are nonzero, so is a well-defined feature map into the inner product space of finitely supported coordinate families, and its inner product is exactly .
A real positive-semidefinite kernel on an input set is a function for which there is an inner product space and a feature map satisfying
Equivalently, is symmetric and every finite Gram matrix is positive semidefinite: for all real coefficients . An infinite-dimensional Hilbert space is allowed.
Replace every inner product in part (b) by and solve
This is precisely the Lagrangian dual problem obtained by replacing each original input by in the primal problem. The weight vector it determines is
and the intercept follows from the same Karush-Kuhn-Tucker conditions. For example, if ,
Thus training needs only the finite Gram matrix, even if the feature map has infinitely many coordinates. This is the kernel trick. The result is an affine linear classifier in the feature space; its boundary in the original input space can be nonlinear. The squared-slack diagonal term and the equality constraint remain unchanged.
Use Lagrange multipliers for and for . The optimization Lagrangian is
The Lagrange dual function is the infimum over the now unconstrained primal variables. The first-order optimality conditions in and give
If the latter equality fails, the infimum over is . The first-order optimality condition in gives
Substitution, or completing the square separately in and each , produces
provided . For fixed nonnegative , this expression is maximized over at . Thus the simplest Lagrangian dual problem is
In particular, there is no upper box constraint . That constraint belongs to the linear-slack penalty; squared slack instead contributes the displayed diagonal quadratic penalty. With and Gram matrix , the objective can also be written
Since is positive semidefinite and , the matrix in parentheses is positive-definite. The objective of the Lagrangian dual problem is therefore strictly concave, and the feasible maximizer is unique.
The primal problem is a convex optimization problem, and is strictly feasible for both families of inequalities. Slater's condition gives strong duality, so an optimum of the Lagrangian dual problem yields a primal optimum. The Karush-Kuhn-Tucker conditions supply
For any with , the intercept is consequently
All such choices agree at an exact optimum. If all labels have one sign, the optimal coefficients can all be zero: choose , , and any constant intercept of that sign with magnitude at least one.
Take labels and fix the standard normalization in which the squared weight penalty has coefficient . The squared-slack support vector machine, a form of soft-margin support vector machine, has primal problem
The slack variables of a support vector machine permit margin violations. Penalizing favors a wide support-vector-machine margin, while sets the cost of the violations. The intercept is unpenalized, and the resulting classifier is , with a fixed choice at zero. The square on is essential to the Lagrangian dual problem below.
Choose distinct points of . The vectors lie in the -dimensional vector space , so they are linearly dependent. Hence there are real numbers , not all zero, such that
The second equality forces both a positive and a negative coefficient. Put , , and
Rearranging the first equality gives
Each side is a convex combination: the coefficients are positive and sum to one. Thus belongs to both convex hulls. Place the points with indices in in , those with indices in in , and assign every zero-coefficient point and every remaining point of to . Then are nonempty, disjoint, and have union . Adding points cannot shrink a convex hull, so
This proves the intersecting convex hull partition theorem, including when has more than points or is infinite: only the initial finite collection was needed.

Pinned article: Introduction to the OurBigBook Project

Welcome to the OurBigBook Project! Our goal is to create the perfect publishing platform for STEM subjects, and get university-level students to write the best free STEM tutorials ever.
Everyone is welcome to create an account and play with the site: ourbigbook.com/go/register. We belive that students themselves can write amazing tutorials, but teachers are welcome too. You can write about anything you want, it doesn't have to be STEM or even educational. Silly test content is very welcome and you won't be penalized in any way. Just keep it legal!
We have two killer features:
  1. topics: topics group articles by different users with the same title, e.g. here is the topic for the "Fundamental Theorem of Calculus" ourbigbook.com/go/topic/fundamental-theorem-of-calculus
    Articles of different users are sorted by upvote within each article page. This feature is a bit like:
    • a Wikipedia where each user can have their own version of each article
    • a Q&A website like Stack Overflow, where multiple people can give their views on a given topic, and the best ones are sorted by upvote. Except you don't need to wait for someone to ask first, and any topic goes, no matter how narrow or broad
    This feature makes it possible for readers to find better explanations of any topic created by other writers. And it allows writers to create an explanation in a place that readers might actually find it.
    Figure 1.
    Screenshot of the "Derivative" topic page
    . View it live at: ourbigbook.com/go/topic/derivative
  2. local editing: you can store all your personal knowledge base content locally in a plaintext markup format that can be edited locally and published either:
    This way you can be sure that even if OurBigBook.com were to go down one day (which we have no plans to do as it is quite cheap to host!), your content will still be perfectly readable as a static site.
    Figure 5. . You can also edit articles on the Web editor without installing anything locally.
    Video 3.
    Edit locally and publish demo
    . Source. This shows editing OurBigBook Markup and publishing it using the Visual Studio Code extension.
  3. https://raw.githubusercontent.com/ourbigbook/ourbigbook-media/master/feature/x/hilbert-space-arrow.png
  4. Infinitely deep tables of contents:
    Figure 6.
    Dynamic article tree with infinitely deep table of contents
    .
    Descendant pages can also show up as toplevel e.g.: ourbigbook.com/cirosantilli/chordate-subclade
All our software is open source and hosted at: github.com/ourbigbook/ourbigbook
Further documentation can be found at: docs.ourbigbook.com
Feel free to reach our to us for any help or suggestions: docs.ourbigbook.com/#contact