entailment Hoare triple Brotherston Brotherston

Σχετικά έγγραφα
Lecture 2. Soundness and completeness of propositional logic

Re-Pair n. Re-Pair. Re-Pair. Re-Pair. Re-Pair. (Re-Merge) Re-Merge. Sekine [4, 5, 8] (highly repetitive text) [2] Re-Pair. Blocked-Repair-VF [7]

Maxima SCORM. Algebraic Manipulations and Visualizing Graphs in SCORM contents by Maxima and Mashup Approach. Jia Yunpeng, 1 Takayuki Nagai, 2, 1

GPGPU. Grover. On Large Scale Simulation of Grover s Algorithm by Using GPGPU

Homomorphism in Intuitionistic Fuzzy Automata

GPU. CUDA GPU GeForce GTX 580 GPU 2.67GHz Intel Core 2 Duo CPU E7300 CUDA. Parallelizing the Number Partitioning Problem for GPUs

An Automatic Modulation Classifier using a Frequency Discriminator for Intelligent Software Defined Radio

C.S. 430 Assignment 6, Sample Solutions

Probabilistic Approach to Robust Optimization

IPSJ SIG Technical Report Vol.2014-CE-127 No /12/6 CS Activity 1,a) CS Computer Science Activity Activity Actvity Activity Dining Eight-He

CRASH COURSE IN PRECALCULUS

Abstract Storage Devices

Toward a SPARQL Query Execution Mechanism using Dynamic Mapping Adaptation -A Preliminary Report- Takuya Adachi 1 Naoki Fukuta 2.

Maude 6. Maude [1] UIUC J. Meseguer. Maude. Maude SRI SRI. Maude. AC (Associative-Commutative) Maude. Maude Meseguer OBJ LTL SPIN

A Method for Creating Shortcut Links by Considering Popularity of Contents in Structured P2P Networks

ER-Tree (Extended R*-Tree)

Retrieval of Seismic Data Recorded on Open-reel-type Magnetic Tapes (MT) by Using Existing Devices

Buried Markov Model Pairwise

Fractional Colorings and Zykov Products of graphs

Schedulability Analysis Algorithm for Timing Constraint Workflow Models

Dynamic types, Lambda calculus machines Section and Practice Problems Apr 21 22, 2016

ES440/ES911: CFD. Chapter 5. Solution of Linear Equation Systems

Sequent Calculi for the Modal µ-calculus over S5. Luca Alberucci, University of Berne. Logic Colloquium Berne, July 4th 2008

2016 IEEE/ACM International Conference on Mobile Software Engineering and Systems

[4] 1.2 [5] Bayesian Approach min-max min-max [6] UCB(Upper Confidence Bound ) UCT [7] [1] ( ) Amazons[8] Lines of Action(LOA)[4] Winands [4] 1

A Bonus-Malus System as a Markov Set-Chain. Małgorzata Niemiec Warsaw School of Economics Institute of Econometrics

ΔΙΠΛΩΜΑΤΙΚΕΣ ΕΡΓΑΣΙΕΣ

Uniform Convergence of Fourier Series Michael Taylor

New bounds for spherical two-distance sets and equiangular lines

Vol. 31,No JOURNAL OF CHINA UNIVERSITY OF SCIENCE AND TECHNOLOGY Feb

Optimization, PSO) DE [1, 2, 3, 4] PSO [5, 6, 7, 8, 9, 10, 11] (P)

MathCity.org Merging man and maths

The Simply Typed Lambda Calculus

SCITECH Volume 13, Issue 2 RESEARCH ORGANISATION Published online: March 29, 2018

2. 3. OCaml. Scheme[13] do CPS. On optimization for recursive programs without tailcalls.

Simplex Crossover for Real-coded Genetic Algolithms

ECE570 Lecture 6: Rewrite Systems

Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών. Εθνικό Μετσόβιο Πολυτεχνείο. Thales Workshop, 1-3 July 2015

ΓΕΩΜΕΣΡΙΚΗ ΣΕΚΜΗΡΙΩΗ ΣΟΤ ΙΕΡΟΤ ΝΑΟΤ ΣΟΤ ΣΙΜΙΟΤ ΣΑΤΡΟΤ ΣΟ ΠΕΛΕΝΔΡΙ ΣΗ ΚΤΠΡΟΤ ΜΕ ΕΦΑΡΜΟΓΗ ΑΤΣΟΜΑΣΟΠΟΙΗΜΕΝΟΤ ΤΣΗΜΑΣΟ ΨΗΦΙΑΚΗ ΦΩΣΟΓΡΑΜΜΕΣΡΙΑ

Τοποθέτηση τοπωνυµίων και άλλων στοιχείων ονοµατολογίας στους χάρτες


Study of In-vehicle Sound Field Creation by Simultaneous Equation Method

Web-based supplementary materials for Bayesian Quantile Regression for Ordinal Longitudinal Data

Models for Probabilistic Programs with an Adversary

A Lambda Model Characterizing Computational Behaviours of Terms

HIV HIV HIV HIV AIDS 3 :.1 /-,**1 +332

ΓΙΑΝΝΟΥΛΑ Σ. ΦΛΩΡΟΥ Ι ΑΚΤΟΡΑΣ ΤΟΥ ΤΜΗΜΑΤΟΣ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΜΑΚΕ ΟΝΙΑΣ ΒΙΟΓΡΑΦΙΚΟ ΣΗΜΕΙΩΜΑ

Finitary proof systems for Kozen s µ

CHAPTER 25 SOLVING EQUATIONS BY ITERATIVE METHODS

ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ. του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και. Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του. Πανεπιστημίου Πατρών

Quick algorithm f or computing core attribute

ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΜΟΝΑΔΑΣ ΘΡΑΥΣΤΗΡΑ ΜΕ ΧΡΗΣΗ P.L.C. AUTOMATION OF A CRUSHER MODULE USING P.L.C.

Approximation of distance between locations on earth given by latitude and longitude

Ερευνητική+Ομάδα+Τεχνολογιών+ Διαδικτύου+

Homework 3 Solutions

Applying Markov Decision Processes to Role-playing Game

Matrices and Determinants

Every set of first-order formulas is equivalent to an independent set

Durbin-Levinson recursive method

Εκτεταμένη περίληψη Περίληψη

Other Test Constructions: Likelihood Ratio & Bayes Tests

HCI - Human Computer Interaction Σχεδιασμός Διεπαφής. ΓΤΠ 61 Βαµβακάρης Μιχάλης 09/12/07

Practice Exam 2. Conceptual Questions. 1. State a Basic identity and then verify it. (a) Identity: Solution: One identity is csc(θ) = 1

Indoor Augmented Reality Guide for Mediterranean College. Φώτης Παπαχρήστος

FX10 SIMD SIMD. [3] Dekker [4] IEEE754. a.lo. (SpMV Sparse matrix and vector product) IEEE754 IEEE754 [5] Double-Double Knuth FMA FMA FX10 FMA SIMD

Concrete Mathematics Exercises from 30 September 2016

ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΕΡΙΒΑΛΛΟΝΤΟΣ

C++ 78 (478) A Parallel Skeleton Library in C++ with Optimization

DECO DECoration Ontology

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΑΓΡΟΝΟΜΩΝ & ΤΟΠΟΓΡΑΦΩΝ ΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΕΡΓΩΝ ΥΠΟΔΟΜΗΣ ΚΑΙ ΑΓΡΟΤΙΚΗΣ ΑΝΑΠΤΥΞΗΣ ΤΟΜΕΑΣ ΓΕΝΙΚΗΣ ΓΕΩΔΑΙΣΙΑΣ

Πανεπιστήµιο Πειραιώς Τµήµα Πληροφορικής

LAP 2013 Problems in formulating the consecution calculus of contraction less relevant logics

Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 7 ο

ΜΕΛΕΤΗ ΤΗΣ ΗΛΕΚΤΡΟΝΙΚΗΣ ΣΥΝΤΑΓΟΓΡΑΦΗΣΗΣ ΚΑΙ Η ΔΙΕΡΕΥΝΗΣΗ ΤΗΣ ΕΦΑΡΜΟΓΗΣ ΤΗΣ ΣΤΗΝ ΕΛΛΑΔΑ: Ο.Α.Ε.Ε. ΠΕΡΙΦΕΡΕΙΑ ΠΕΛΟΠΟΝΝΗΣΟΥ ΚΑΣΚΑΦΕΤΟΥ ΣΩΤΗΡΙΑ

Distances in Sierpiński Triangle Graphs

ΕΛΕΓΧΟΣ ΤΩΝ ΠΑΡΑΜΟΡΦΩΣΕΩΝ ΧΑΛΥΒ ΙΝΩΝ ΦΟΡΕΩΝ ΜΕΓΑΛΟΥ ΑΝΟΙΓΜΑΤΟΣ ΤΥΠΟΥ MBSN ΜΕ ΤΗ ΧΡΗΣΗ ΚΑΛΩ ΙΩΝ: ΠΡΟΤΑΣΗ ΕΦΑΡΜΟΓΗΣ ΣΕ ΑΝΟΙΚΤΟ ΣΤΕΓΑΣΤΡΟ

Overview. Transition Semantics. Configurations and the transition relation. Executions and computation

Nowhere-zero flows Let be a digraph, Abelian group. A Γ-circulation in is a mapping : such that, where, and : tail in X, head in

VBA Microsoft Excel. J. Comput. Chem. Jpn., Vol. 5, No. 1, pp (2006)

Test Data Management in Practice

Finite Field Problems: Solutions

Coefficient Inequalities for a New Subclass of K-uniformly Convex Functions

HOSVD. Higher Order Data Classification Method with Autocorrelation Matrix Correcting on HOSVD. Junichi MORIGAKI and Kaoru KATAYAMA

ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ. «Προστασία ηλεκτροδίων γείωσης από τη διάβρωση»

2 Composition. Invertible Mappings

Development of a Seismic Data Analysis System for a Short-term Training for Researchers from Developing Countries

ΕΘΝΙΚΗ ΣΧΟΛΗ ΔΗΜΟΣΙΑΣ ΔΙΟΙΚΗΣΗΣ ΙΓ' ΕΚΠΑΙΔΕΥΤΙΚΗ ΣΕΙΡΑ

Example Sheet 3 Solutions

Automatic extraction of bibliography with machine learning

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ "ΠΟΛΥΚΡΙΤΗΡΙΑ ΣΥΣΤΗΜΑΤΑ ΛΗΨΗΣ ΑΠΟΦΑΣΕΩΝ. Η ΠΕΡΙΠΤΩΣΗ ΤΗΣ ΕΠΙΛΟΓΗΣ ΑΣΦΑΛΙΣΤΗΡΙΟΥ ΣΥΜΒΟΛΑΙΟΥ ΥΓΕΙΑΣ "

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΒΑΛΕΝΤΙΝΑ ΠΑΠΑΔΟΠΟΥΛΟΥ Α.Μ.: 09/061. Υπεύθυνος Καθηγητής: Σάββας Μακρίδης

Lecture 2: Dirac notation and a review of linear algebra Read Sakurai chapter 1, Baym chatper 3

Πτυχιακή Εργασία Η ΠΟΙΟΤΗΤΑ ΖΩΗΣ ΤΩΝ ΑΣΘΕΝΩΝ ΜΕ ΣΤΗΘΑΓΧΗ

ΚΛΙΜΑΤΟΛΟΓΙΑ CLIMATOLOGY

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΠΑΤΗΣΙΩΝ ΑΘΗΝΑ Ε - ΜΑΙL : mkap@aueb.gr ΤΗΛ: , ΚΑΠΕΤΗΣ ΧΡΥΣΟΣΤΟΜΟΣ. Βιογραφικό Σημείωμα

«ΠΛΗΡΟΦΟΡΙΚΗ ΚΑΙ ΔΙΟΙΚΗΣΗ» ΠΡΟΣΔΙΟΡΙΣΤΙΚΟΙ ΠΑΡΑΓΟΝΤΕΣ ΤΗΣ ΧΡΗΜΑΤΟΠΙΣΤΩΤΙΚΗΣ ΣΤΑΘΕΡΟΤΗΤΑΣ

, -.

Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών

Phys460.nb Solution for the t-dependent Schrodinger s equation How did we find the solution? (not required)

Partial Differential Equations in Biology The boundary element method. March 26, 2013

Transcript:

33 (2016 ) Brotherston We implement a semi-automated prover for implicational formulas (entailments) of the separation logic including inductive predicate definitions, toward automation of program verification by separation logic. More specifically, we use cyclic proof system, proposed by Brotherston et al., to construct proof. In cyclic proof system, we allow proof trees to contain cycles under a specific condition and prove entailments including inductive predicates. We must unfold inductive predicates in accordance with their definition. In a naïve way, the number of applicable inference rules increases explosively. For pruning, we restricted the selection method of predicates to be unfolded and the order of applications of the inference rules. Based on the above idea, we implemented an automated prover searching for a proof. We automatically proved several entailments with inductive predicates by using the prover implemented in this paper. Besides we let the prover output proof trees as LATEX code if the entailment is provable, and we visualized the proofs found by proof search. 1 [6] Hoare triple ϕ C Semi-automated Entailment Checker by Cyclic Proofs for Separation Logic with Inductive Predicates. Sosuke Nakada and Koji Nakazawa,, Dept. of Information Engineering, Graduate School of Information Science, Nagoya University. ψ {ϕ}c{ψ} ϕ ψ ϕ 1 = ϕ 2 ϕ 1 = ϕ 2 ϕ 1 ϕ 2 entailment ϕ 1 = ϕ 2 Brotherston [2][3]

2 3 4 5 4 6 2 t, t 1, t 2,... x, y, z,... nil Vars symbolic heap Π ::= t = t t t Π Π Σ ::= emp t ( t) Σ Σ P( t) ϕ ::= Π Σ P P n P( t) = z i.ϕ i z i = FV(ϕ i ) t i=0 z.ϕ i P I I P Q I Q nil 0 nil 0 Val := N Locs := N\{0} (s, h) s Val h Stores := Vars Val Heaps := Locs f in Val n s(nil) = 0 Val h Dom(h) h 1 h 2 h = h 1 + h 2 Dom(h 1 ) Dom(h 2 ) = h n Dom(h 1 ) h(n) = h 1 (n) n Dom(h 2 ) h(n) = h 2 (n) (s, h) ϕ s, h = ϕ s, h = t 1 = t 2 iff s(t 1 ) = s(t 2 ) s, h = t 1 t 2 iff s(t 1 ) s(t 2 ) s, h = Π 1 Π 2 iff s, h = Π 1 s, h = Π 2 n 1

s, h = emp iff Dom(h) = s, h = t ( t) iff Dom(h) = {s(t)} h(s(t)) = s( t) s, h = Σ 1 Σ 2 iff h 1, h 2 (h = h 1 + h 2 s, h 1 = Σ 1 s, h 2 = Σ 2 ) s, h = P( t) iff n(s, h = P n ( t)) s, h = P 0 ( t) s, h = P k+1 ( t) iff P z.ϕ i n s[ z := n], h = ϕ i [P := P k ]( t) s, h = Π Σ iff s, h = Π s, h = Σ ϕ 1 = ϕ 2 (s, h) s, h = ϕ 1 s, h = ϕ 2 3 ϕ 1, ϕ 2 ϕ 1 = ϕ 2 ϕ 1 ϕ 2 Π 1 emp Σ 1 Π 2 Σ 2 Π 1 Σ 1 Π 2 Σ 2 Π 1 Σ 1 Π 2 emp Σ 2 Π 1 Σ 1 Π 2 Σ 2 (Π 1 Σ 1 Π 2 Σ 2 )[t 2 := t 1 ] t 1 = t 2 Π 1 Σ 1 Π 2 Σ 2 (empl) (empr) (=L) Π 1 Σ 1 Π 2 Σ 2 t 1 t 2 Π 1 Σ 1 is UNS AT (=R) Π 1 Σ 1 t 1 = t 2 Π 2 Σ 2 Π 1 Σ 1 Π 2 Σ 2 t 1 = t 2 Π 1 Σ 1 is UNS AT (=/R) Π 1 Σ 1 t 1 t 2 Π 2 Σ 2 Π 1 emp emp (Id) Π Σ 1 Σ 2 Π Σ Σ 1 Σ Σ 2 Π ϕ 1 θ Σ 1 [ t := xθ] Σ 2 [ t := xθ] Π ϕ n θ Σ 1 [ t := xθ] Σ 2 [ t := xθ] Π P( t) Σ 1 Σ 2 Π Σ 1 ϕ i [ z := y] Σ 2 Π Σ 1 P( t) Σ 2 (UnfRP i ) (UnfLP) (P Id) (UnfLP) θ = [ z := y] y fresh (UnfLP) (UnfRP i ) n P P( t) = z i.ϕ i i=1 (Id) (P Id) (empl) (empr) [2] (Id) ( ) (empl) (empr) (Id) (UnfLP) (UnfRP i ) ls(x, y) = x = y emp (ϕ 1 ) x.x x ls(x, y) (ϕ 2 ) 1 ls(x, x ) ls(x, y) ls(x, y) trace 1 ls(x, x ) ls(z, x ) ls(z, x ) ls(x, x ) [2] Γ 1 Γ 1 Γ 2 Γ 2 θ.(γ 1 Γ 1 )θ = Γ 2 Γ 2 Γ 1, Γ 2 P P (UnfLP) 1 ls(x, x ) ls(z, x ) (UnfLls) ls(x, x ) ls(x, y) ls(x, y)

emp emp (Id) (P Id) ls(z, x ) ls(x, y) ls(z, y) emp ls(x, y) emp ls(x, y) (empr) emp ls(x, y) ls(x, y) x = x emp ls(x, y) ls(x, y) (=L) x z ls(z, x ) ls(x (P Id), y) x z ls(x, y) x z ls(z, x ) ls(x (UnfRls 2 ), y) ls(x, y) ls(x, x ) ls(x (UnfLls), y) ls(x, y) 1 [2] global trace condition [2] [2] ϕ 1 ϕ 2 ϕ 1 = ϕ 2 4 J I 3 emp (empl) (empr) 4. 1 Π 1 Σ 1 Π 2 Σ 2 3 Π 1 Σ 1 Σ 2 Π 1 t 1 = t 2 (=R) (=/ R) Π 1 Σ 1 Π Π 1 Σ 1 Π Π 2 Σ 2 (=L) (=R) (=/ R) 4. 2 2 J J P i P i α (UnfLP) π α π 0 α π 1 (UnfLP) π 0 (Downlink) α > n > π θ.α n = (ϕ 1 ϕ 3 )[θ] ϕ 2 matches ϕ 3 (α, π, ϕ 1 ϕ 2 ) (Downlink) matches [2] augmented sequents J 1 q L, q R f L q L, q R 1 f L f L q L, q R q R, q L q q (UnfLP) (UnfRP i ) (UnfRP i ) i q 2 q L q L q R

q R (UnfLP) f L (UnfRP i ) f L q L = [P 1 ; P 2 ; Q 3 ], q R = [P 4 ; Q 5 ] P 2 q L = [P 1 ; Q 3 ; P 2 ], q R = [P 4 ; Q 5 ] f L q L, q R 3 ls ls2(x, y) = x = y emp x, x.x x x x ls(x, y) ls2 ls2(x, y) ls(x, y) q L, q R (UnfLP) dmax d J, α, π, q L, q R, f L, d 4. 3 (UnfRP i ) (UnfLP) (UnfRP i ) (UnfLP) (UnfRP i ) P z.ϕ i = z.x ( y) ϕ i v x ( v) y v z x ( y) ϕ i z (UnfRP i ) x ( v) x ( y) x ( y) (P Id) x ( y) x ( v) (UnfRP i ) 4. 4 J α = [], π = 0, q L = [], q R = [], f L =, c = 0 [] (Id), (P Id), (Downlink), (UnfLP) (UnfRP i ) (UnfLP) (UnfRP i ) c > cmax (UnfRP i ) (Id) (Downlink) 5 5. 1 4 OCaml 1 2 dmax 4 10

[4] DELL optiplex 9020, Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz 3.60GHz 8GB 1600MHz DDR SDRAM OS Windows 10 Pro VMware(R) Workstation 12 Player 12.1.0 build-3272444 Ubuntu 15.04 64 RAM 2GB, 2 OCaml version 4.01.0 5 1/10 L A TEX 5. 2 2 3 d = 4 2 d = 10 d = 4 2 1,4 2,3 A 5. 3 4 2 4 d = 10 3 d max = 10 d max [2] ( ) d max d max = 4 3 1,5 d max = 4 d max = 10 2,3,4 1,5 d max 6 6. 1 6. 2 [1] [2][3][5] [2][3] [5] [2][3] [5] [2] [3]

1 ls ls(x, y) = x = y emp x.x x ls(x, y) lse/lso lse(x, y) = x = y emp x.x x lso(x, y) lso(x, y) = x.x x lse(x, y) DLL DLL(a, b, c, d) = a = b c = d emp x.a (x, d) DLL(x, b, c, a) 2 1 ls(x, y) ls(y, z) ls(x, z) 2 lso(x, y) lso(y, z) lse(x, z) 3 lso(x, y) lse(y, z) lso(x, z) 4 lse(x, y) lse(y, z) lse(x, z) 5 DLL(x 5, x 2, x 3, x 6 ) DLL(x 1, x 5, x 6, x 4 ) DLL(x 1, x 2, x 3, x 4 ) 3 d d = 4 d = 10 1 3 4 2 4 7 3 0 22 4 6 43 5 22 21 [1] Antonopoulos, T., Gorogiannis, N., Haase, C., Kanovich, M., and Ouaknine, J.: Foundations for decision problems in separation logic with general inductive predicates, International Conference on Foundations of Software Science and Computation Structures, Springer Berlin Heidelberg, 2014, pp. 411 425.

2 3 1 d = 4 3 3 4 d = 4 4 3 4 d = 10 [2] Brotherston, J., Distefano, D. and Petersen, R. L.: Automated cyclic entailment proofs in separation logic, Automated Deduction (CADE-23), Springer, 2011, pp. 131-146. [3] Brotherston, J., Gorogiannis, N. and Petersen, R. L.: A generic cyclic theorem prover, Programming Languages and Systems, Springer, 2012, pp. 350-367. [4] Brotherston, J., Fuhs, C., Pérez, J. A. N., and Gorogiannis, N.: A decision procedure for satisfiability in separation logic with inductive predicates, Proceedings of the Joint Meeting of the Twenty-Third EACSL Annual Conference on Computer Science Logic (CSL) and the Twenty-Ninth Annual ACM/IEEE Symposium on Logic in Computer Science (LICS), ACM, 2014, p. 25. [5] Iosif, R., Rogalewicz, A. and Vojnar, T.: Deciding entailments in inductive separation logic with tree automata, Automated Technology for Verification and Analysis, Springer, 2014, pp. 201-218. [6] Reynolds, J. C.: Separation logic: A logic for shared mutable data structures, Logic in Computer Science, 2002. Proceedings. 17th Annual IEEE Symposium on, IEEE, 2002, pp. 55-74. A : 5 5 L A TEX 5

5 3 1 d = 10 6 3 2 d = 4 7 3 2 d = 10 8 3 3 d = 4

9 3 3 d = 10 10 3 5 d = 4 11 3 5 d = 10