CSR 2011, St. Petersburg, Russia

Slides:



Advertisements
Similar presentations
Conjunctive Grammars and Synchronized Alternating Pushdown Automata October 2009 Tamar Aizikowitz Joint work with Michael Kaminski Technion – Israel Institute.
Advertisements

Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University.
Linear Conjunctive Grammars and One-turn Synchronized Alternating Pushdown Automata Formal Grammar 2009, Bordeaux Tamar Aizikowitz* and Michael Kaminski.
Theory of Computation CS3102 – Spring 2014 A tale of computers, math, problem solving, life, love and tragic death Nathan Brunelle Department of Computer.
C O N T E X T - F R E E LANGUAGES ( use a grammar to describe a language) 1.
Closure Properties of CFL's
Pushdown Automata Chapter 12. Recognizing Context-Free Languages Two notions of recognition: (1) Say yes or no, just like with FSMs (2) Say yes or no,
Pushdown Automata Chapter 12. Recognizing Context-Free Languages We need a device similar to an FSM except that it needs more power. The insight: Precisely.
LR-Grammars LR(0), LR(1), and LR(K).
CS21 Decidability and Tractability
1 Introduction to Computability Theory Lecture12: Decidable Languages Prof. Amos Israeli.
Finite Automata Great Theoretical Ideas In Computer Science Anupam Gupta Danny Sleator CS Fall 2010 Lecture 20Oct 28, 2010Carnegie Mellon University.
Introduction to Computability Theory
1 Introduction to Computability Theory Lecture7: PushDown Automata (Part 1) Prof. Amos Israeli.
Applied Computer Science II Chapter 2 : Context-free languages Prof. Dr. Luc De Raedt Institut für Informatik Albert-Ludwigs Universität Freiburg Germany.
CS Master – Introduction to the Theory of Computation Jan Maluszynski - HT Lecture 4 Context-free grammars Jan Maluszynski, IDA, 2007
Foundations of (Theoretical) Computer Science Chapter 2 Lecture Notes (Section 2.2: Pushdown Automata) Prof. Karen Daniels, Fall 2009 with acknowledgement.
January 14, 2015CS21 Lecture 51 CS21 Decidability and Tractability Lecture 5 January 14, 2015.
Normal forms for Context-Free Grammars
CS5371 Theory of Computation Lecture 8: Automata Theory VI (PDA, PDA = CFG)
January 23, 2015CS21 Lecture 81 CS21 Decidability and Tractability Lecture 8 January 23, 2015.
PZ03A Programming Language design and Implementation -4th Edition Copyright©Prentice Hall, PZ03A - Pushdown automata Programming Language Design.
Finite State Machines Data Structures and Algorithms for Information Processing 1.
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 7 Mälardalen University 2010.
1 Introduction to Parsing Lecture 5. 2 Outline Regular languages revisited Parser overview Context-free grammars (CFG’s) Derivations.
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 8 Mälardalen University 2010.
Pushdown Automata.
Context-Free Grammars Normal Forms Chapter 11. Normal Forms A normal form F for a set C of data objects is a form, i.e., a set of syntactically valid.
Pushdown Automata CS 130: Theory of Computation HMU textbook, Chap 6.
Pushdown Automata (PDAs)
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 11 Midterm Exam 2 -Context-Free Languages Mälardalen University 2005.
Pushdown Automata Chapters Generators vs. Recognizers For Regular Languages: –regular expressions are generators –FAs are recognizers For Context-free.
Context-Free and Noncontext-Free Languages Chapter 13 1.
Closure Properties Lemma: Let A 1 and A 2 be two CF languages, then the union A 1  A 2 is context free as well. Proof: Assume that the two grammars are.
CS 208: Computing Theory Assoc. Prof. Dr. Brahim Hnich Faculty of Computer Sciences Izmir University of Economics.
CS 208: Computing Theory Assoc. Prof. Dr. Brahim Hnich Faculty of Computer Sciences Izmir University of Economics.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
PZ03A Programming Language design and Implementation -4th Edition Copyright©Prentice Hall, PZ03A - Pushdown automata Programming Language Design.
Foundations of (Theoretical) Computer Science Chapter 2 Lecture Notes (Section 2.2: Pushdown Automata) Prof. Karen Daniels, Fall 2010 with acknowledgement.
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 9 Mälardalen University 2006.
Computability Review homework. Video. Variations. Definitions. Enumerators. Hilbert's Problem. Algorithms. Summary Homework: Give formal definition of.
Chapter 8 Properties of Context-free Languages These class notes are based on material from our textbook, An Introduction to Formal Languages and Automata,
Formal Languages, Automata and Models of Computation
CSCI 2670 Introduction to Theory of Computing October 13, 2005.
Donghyun (David) Kim Department of Mathematics and Physics North Carolina Central University 1 Chapter 2 Context-Free Languages Some slides are in courtesy.
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen Department of Computer Science University of Texas-Pan American.
Finite Automata Great Theoretical Ideas In Computer Science Victor Adamchik Danny Sleator CS Spring 2010 Lecture 20Mar 30, 2010Carnegie Mellon.
Grammar Set of variables Set of terminal symbols Start variable Set of Production rules.
1 A well-parenthesized string is a string with the same number of (‘s as )’s which has the property that every prefix of the string has at least as many.
Lecture 6: Context-Free Languages
Pushdown Automata Chapter 12. Recognizing Context-Free Languages Two notions of recognition: (1) Say yes or no, just like with FSMs (2) Say yes or no,
Week 14 - Friday.  What did we talk about last time?  Simplifying FSAs  Quotient automata.
CS 154 Formal Languages and Computability March 22 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron Mak.
CS6800 Advance Theory of Computation Spring 2016 Nasser Alsaedi
6. Pushdown Automata CIS Automata and Formal Languages – Pei Wang.
Formal Languages, Automata and Models of Computation
Pushdown Automata.
Programming Languages Translator
Deterministic FA/ PDA Sequential Machine Theory Prof. K. J. Hintz
Pushdown automata Programming Language Design and Implementation (4th Edition) by T. Pratt and M. Zelkowitz Prentice Hall, 2001 Section
PDAs Accept Context-Free Languages
PZ03A - Pushdown automata
Intro to Data Structures
Deterministic PDAs - DPDAs
Chapter 2 Context-Free Language - 01
Pushdown automata Programming Language Design and Implementation (4th Edition) by T. Pratt and M. Zelkowitz Prentice Hall, 2001 Section
Pushdown automata Programming Language Design and Implementation (4th Edition) by T. Pratt and M. Zelkowitz Prentice Hall, 2001 Section
Pushdown automata Programming Language Design and Implementation (4th Edition) by T. Pratt and M. Zelkowitz Prentice Hall, 2001 Section
Pushdown automata Programming Language Design and Implementation (4th Edition) by T. Pratt and M. Zelkowitz Prentice Hall, 2001 Section
Pushdown automata Programming Language Design and Implementation (4th Edition) by T. Pratt and M. Zelkowitz Prentice Hall, 2001 Section
Presentation transcript:

CSR 2011, St. Petersburg, Russia LR(0) Conjunctive Grammars and Deterministic Synchronized Alternating Pushdown Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology June 17 CSR 2011, St. Petersburg, Russia

Context-Free Languages Combine expressiveness with polynomial parsing, which is appealing for practical applications. One of the most widely used language class in Computer Science. At the theoretical basis of Programming Languages, Computational Linguistics, Formal Verification, Computational Biology, and more.

Extended Models Goal: Models of computation that generate a slightly stronger language class without sacrificing polynomial parsing. Why? Such models seem to have great potential for practical applications. In fact, several fields (e.g., Computational Linguistics) have already voiced their need for a stronger language class.

Conjunctive Grammars Conjunctive Grammars (CG) [Okhotin, 2001] are an extension of context-free grammars. Add explicit intersection rules S  (A & B)  ⋯  (w & w)  w Semantics: L(A & B) = L(A) ⋂ L(B) Since context-free languages are not closed under intersection, CG is a wider class of languages Retain polynomial parsing and therefore can be useful for practical applications

Synchronized Alternating PDA Synchronized Alternating Pushdown Automata (SAPDA) [Aizikowitz & Kaminski, 2008] extend PDA. Stack modeled as tree in which all braches must accept. A limited form of synchronization creates localized parallel computations. First automaton counterpart shown for Conjunctive Grammars.

Outline Model Definitions Equivalence Results Linear-time LR(0) Parsing Summary

Model Definitions Conjunctive Grammars Synchronized Alternating Pushdown Automata

The case of all n=1 is an ordinary CFG Conjunctive Grammars A CG is a quadruple: G=(V , Σ , P , S ) Rules: A → (α1 & ⋯ & αn), where A∊V, αi∊(V ⋃ Σ)* Examples: A → (aAB & Bc & aD) ; A → abC Derivation steps: s1As2  s1(α1 & ⋯ & αn)s2, where A→(α1 & ⋯ & αn)∊P s1(w & ⋯ & w)s2  s1 w s2, where w ∊ Σ* non-terminals terminals derivation rules start symbol The case of all n=1 is an ordinary CFG

Grammar Language Language: L(G) = {w ∊ Σ* | S *w}, i.e., L(G) consists of all terminal words w derivable from the start symbol S. Note: ( , ) , and & are not terminal symbols. Therefore, all conjunctions must be collapsed in order to derive a terminal word. Semantics: (A & B) * w if and only if A *w and B *w. Therefore, L(A & B) = L(A) ⋂ L(B).

Example: Multiple Agreement Example: a CG for the multiple-agreement language {anbncn | n ∊ ℕ}: C → Cc | D ; D → aDb | ε : L(C) = {anbncm | n,m ∊ ℕ} A → aA | E ; E → bEc | ε : L(A) = {ambncn | n,m ∊ ℕ} S → (C & A) : L(S ) = L(C) ⋂ L(A) S  (C & A)  (Cc & A)  (Dc & A)  (aDbc & A)   (abc & A)  ⋯  (abc & abc)  abc

Synchronized Alternating Pushdown Automata (SAPDA) An extension of classical PDA. Transitions are made to conjunctions of ( state , stack-word ) pairs, e.g., δ( q , σ , X ) = { ( p1 , XX ) ∧ ( p2 ,Y ) , ( p3 , Z ) } Note: if all conjunctions are of one pair only, the automaton is an “ordinary” PDA. non-deterministic model, i.e., many possible transitions

SAPDA Stack Tree The stack of an SAPDA is a tree. A transition to n pairs splits the current branch into n branches. Branches are processed independently. Empty sibling branches can be collapsed if they are synchronized, i.e., are in the same state and have read the same portion of the input. B A C D q p (q,A)(p,DC)δ(q,σ,A) B q collapse ε

SAPDA Definition An SAPDA is a sextuple A = ( Q , Σ , Γ , q0 , δ , ⊥ ) Transition function: δ(q,σ, X ) ⊆ {(q1,α1) ∧ ⋯ ∧ (qn,αn) | qi ∊ Q, αi ∊ Γ*, n ∊ ℕ} states terminals initial state transition function initial stack symbol stack symbols

SAPDA Computation and Language Each step, a transition is applied to one stack-branch If a stack-branch is empty, it cannot be selected Synchronous empty sibling branches are collapsed Initial Configuration: Accepting configuration: Language: L(A) = {w∊Σ* | ∃ q∊Q, (q0,w,⊥)⊢*(q,ε,ε)} Note: all branches must empty, i.e., must “agree”. have the same state and remaining input q0 ⊥ q ε

Equivalence Results SAPDA and Conjunctive Grammars

Equivalence of SAPDA and CG Theorem 1. A language is generated by an CG if and only if it is accepted by an SAPDA. The equivalence is analogous to the classical equivalence between CFG and PDA. The proofs of the equivalence are extended versions of the classical proofs. Corollary: Single-state SAPDA and multi-state SAPDA are equivalent (like ordinary PDA).

Linear-time LR(0) Parsing Deterministic SAPDA and LR(0) CG Linear-time Implementation of DSAPDA and LR(0) Parsing

Deterministic Context-free Languages DCFL are a sub-family of context-free languages, accepted by Deterministic PDA (DPDA). LR(k) languages were introduced by Knuth, and shown to be equivalent to DPDA, [Knuth, 1965]. Knuth developed a linear-time parsing algorithm for DCFL  the basis of Compilation Theory. Knuth also proved that LR(0) grammars are equivalent to DPDA which accept by empty stack.

Deterministic SAPDA Deterministic SAPDA are defined according to the classical notion of a deterministic model. That is, an SAPDA is deterministic if it has only one possible step from any given configuration. Remark: A deterministic SAPDA has exactly one computation on any given input word w.

LR(0) Conjunctive Grammars To define LR(0) conjunctive grammars, we extend the notions of viable prefixes, valid items ([A → ]), etc… A conjunctive grammar is LR(0) if a conflict-free item automaton can be constructed for it. Main issue: How to build the item automaton so that it supports conjunctive rules... Solution: Read the paper 

Equivalence Results Theorem 2. A language is generated by an LR(0) CG if and only if it is accepted by a DSAPDA. The equivalence is analogous to the classical equivalence between LR(0) CFG and DPDA. The proofs of the equivalence are extended versions of the classical proofs.

The DSAPDA Membership Problem By using a naive implementation of a DSAPDA, we have an exponential time solution for the membership problem. Each branch is linear, but there can be an exponential number of branches.

Do we need so many branches?

DSAPDA Efficient Implementation There are at most M = |Q|  |Γ| different combinations for branch head configurations. Thus, at any given time, we need at most M heads.

Linear-time Parsing Based on the efficient implementation of a DSAPDA, we can build an LR(0) parser. The parser runs in linear time for the boolean closure of LR(0) Conjunctive Languages This class strictly Includes the boolean closure of classical LR(0) languages. { ai1 bai2 b2 ⋯ ain bn $ bai1 bai2 ⋯ bain $ | n ≥ 1  ij ≥ 1 } That is, we have linear-time parsing for a wider class of languages.

Summary Conjunctive Languages are interesting because: They are a strong, rich class of languages. They are polynomially parsable. Their models of computation are intuitive and easy to understand; highly resemble classical CFG and PDA. SAPDA are the first automaton model presented for Conjunctive Languages. They are a natural extension of PDA. They lend new intuition on Conjunctive Languages. They are the basis of a linear parsing algorithm for a wide class of languages.

Thank you.

Thesis Overview Conjunctive grammars and alternating pushdown automata. T. Aizikowitz and M. Kaminski. WoLLIC 2008, LNAI vol. 5110. Linear conjunctive grammars and one-turn synchronized alternating pushdown automata. T. Aizikowitz and M. Kaminski. FG 2009, LNAI vol. 5591. LR(0) conjunctive grammars and deterministic synchronized alternating pushdown automata. T. Aizikowitz and M. Kaminski. submitted.

References Aizikowitz, T., Kaminski, M.: Conjunctive grammars and alternating pushdown automata. WoLLIC’09. LNAI 5110 (2008) 30 – 41. Aizikowitz, T., Kaminski, M.: Linear conjunctive grammars and one-turn synchronized alternating pushdown automata. Formal Grammars: Bordeaux 2009. LNAI 5591. To appear. Ginsburg, S., Spanier, E.H.: Finite-turn pushdown automata. SIAM Journal on Control. 4(3) (1966) 429 – 453 Knuth, D.E.: On the translation of languages from left to right. Information and Control. 8 (1965) 114 – 133. Okhotin, A.: Conjunctive grammars. Journal of Automata, Languages and Combinatorics. 6(4) (2001) 519 – 535 Okhotin, A.: LR parsing for conjunctive grammars. Grammars. 5(2) (2002) 21 – 40 Okhotin, A.: Conjunctive languages are closed under inverse homomorphism. Technical Report 2003-468. School of Computing, Queens Univ., Kingston, Ontario, Canada. Okhotin, A.: On the equivalence of linear conjunctive grammars and trellis automata. RAIRO Theoretical Informatics and Applications. 38(1) (2004) 69 – 88 Vijay-Shanker, K., Weir, D.J.: The equivalence of four extensions of context-free grammars. Mathematical Systems Theory. 27(6) (1994) 511 – 546.

Reduplication with a Center Marker The reduplication with a center marker language (RCM) , { w$w | w ∊ Σ* }, describes structures in various fields, e.g., Copying phenomena in natural languages: “deal or no deal”, “boys will be boys”, “is she beautiful or is she beautiful?” Biology: microRNA patterns in DNA, tandem repeats We will construct an SAPDA for RCM. Note: it is not known whether reduplication without a center marker can be derived by a CG.

Example: SAPDA for RCM σ $ We consider an SAPDA for { w$uw | w,u ∊ Σ* }, which can easily be modified to accept RCM. The SAPDA is especially interesting, as it utilizes recursive conjunctive transitions. Construction Idea: if σ in the nth letter before the $, check that the nth letter from the end is also σ. σ $ n - 1 w u

Construction of SAPDA for RCM A=(Q,{a,b,$},{⊥,#},q0,δ,⊥) Q = {q0,qe} ⋃ {qσi | σ ∊ {a, b} , i ∊ {1, 2}} δ(q0,σ, ⊥) = {(qσ1, ⊥) ∧ (q0, ⊥)} δ(qσ1,τ, X) = {(qσ1,#X)} δ(q0,$, ⊥) = {(qe, ε)} δ(qσ1,$, X) = {(qσ2, X)} δ(qσ2,τ σ, X) = {(qσ2, X)} δ(qσ2,σ, X) = {(qe, X) , (qσ2, X)} δ(qe,τ,#) = {(qe, ε)} δ(qe, ε, ⊥) = {(qe, ε)} recursively open branch to verify σ is nth from the $ and from the end “count” symbols between σ and $ $ reached, stop recursion $ reached, stop “counting” symbols look for σ “guess” that this is the σ we are looking for, or keep looking “count” symbols from σ to the end all done: empty stack

Computation of SAPDA for RCM qb2 qe qb1 qe qb2 qe qb1 word accepted! qa2 qe qa1 qe q0 ε ⊥ ε ⊥ # qe # q0 qa1 ⊥ ε ε ⊥ # qe qa1 q0 ⊥ ε ε ⊥ a b b $ b a b b q0 ⊥ ε

Usage Example What CG can do for Programming Language Specification and Parsing

A Toy Programming Language A program in PrintVars has three parts: Definition of variables Assignment of values Printing of variable values to the screen Example: VARS a , b , c VALS b = 2 , a = 1 , c = 3 PRNT b a a c b Output: 2 1 1 3 2

PrintVars Specification A PrintVars program is well-formed if: (1) It has the correct structure (2) All used variables are defined (3) All defined variables are used (4) All defined variables are assigned a value (5) All variables assigned a value are defined Item (1) is easily defined by a CF Grammar. However, items (2) – (5) amount to a language reducible to RCM, which is not CF.

A (partial) CG for PrintVars S → ( structure & defined_used & used_defined & defined_assigned & assigned_defined ) structure → vars vals prnt vars → VARS… ; vals → VALS… ; prnt → PRNT… defined_used → VARS check_du check_du → ( a X vals X a X & a check_du ) | ( b X vals X b X & b check_du ) | ⋯ | vals X ) X → a X | ⋯ | z X | 0 X | ⋯ | 9 X | = X | ε Semantic Checks via Syntactic Parsing

Linear CG and One-turn SAPDA Linear Conjunctive Grammars (LCG) [Okhotin, 2001] are an interesting sub-class of CG. More efficient parsing [Okhotin, 2003] Equivalent to Trellis Automata [Okhotin, 2004] It is a well known classical result [Ginsburg et.al, 1966] that Linear Grammars are equivalent to one-turn Pushdown Automata. We define a sub-class of SAPDA, one-turn SAPDA, analogously to one-turn PDA.

One-turn SAPDA ~ LCG Theorem 2. A language is generated by an LCG if and only if it is accepted by a one-turn SAPDA. This result mirrors the classical equivalence between Linear Grammars and one-turn PDA, strengthening the claim of SAPDA as a natural automaton counterpart for CG. Corollary: One-turn SAPDA are equivalent to Trellis automata.

Conjunctive Languages Generative Power Closure Properties Decidability Problems

Generative Power ⋂ LG ⋂CFG LCG CG

Closure Properties     ? Union, concatenation, intersection, Kleene star Proven quite easily using grammars Homomorphism Inverse homomorphism We’ll touch on the proof of this in the next slide… Linear CL are closed under complement. It is an open question whether general CG are closed under complement.     ?

Inverse Homomorphism 92% reduction in proof length  Model Technique Linear CG CG Non-classical and complicated 13 pages Requires separate proof SAPDA Intuitive extension of classical proof 1 page Same proof works for one-turn SAPDA For the grammar based proof, see [Okhotin, 2003].

Decidability Problems Linear CG Membership: O(n2) time and O(n) space. General CG Membership: O(n3) time and O(n2) space. Emptiness, finiteness, equivalence, inclusion, regularity   

“only if” Proof Sketch Given an CG, we construct an single-state SAPDA using an extension of the classical construction. A simulation of the derivation is run in the stack: If the top stack symbol is a non-terminal, it is replaced with the r.h.s. of one of its rules. If the top stack symbol is a terminal, it is emptied while reading the same terminal symbol from the input. A correlation is achieved between the stack contents and the grammar sentential forms.

“only if” Proof Simulation S * w A α w u x v z  w(uBβ & ⋯)α  x ⋯ uxCγβ ⋯ ⋯ u C switch variable with r.h.s of rule empty terminals * B γ ⋯ ux(v & ⋯ & v)γβ ⋯ β ⋯ * A ⋯ ux v γβ ⋯ α

“if” Proof Sketch Given an SAPDA we construct an CG. The proof is an extension of the classical one. However, due to the added complexity of the extended models, it is more involved. Therefore, we won’t get into it now…

Mildly Context Sensitive Languages Computational Linguistics pursues a computational model which exactly describes natural languages. Originally, context-free models were considered. However, non-CF natural language structures led to interest in a slightly extended class of languages – Mildly Context-sensitive Languages (MSCL). Several formalisms (e.g., Tree Adjoining Grammars) are known to converge to MCSL. [Vijay-Shanker, 1994]

Conjunctive Languages and MCSL We explore the correlation between Conjunctive Languages and MCSL. MCSL are loosely categorized as follows: (1) They contain the context-free languages (2) They contain multiple-agreement, cross-agreement and reduplication (3) They are polynomially parsable (4) They are semi-linear  a CG exists for the language { ba2ba4 ⋯ ba2nb | n ∊ ℕ }  Not an exact characterization of natural languages, but still with applicative potential.    

LR Parsing for Conjunctive Grammars Okhotin presented an extension of Tomita’s Generalized LR parsing algorithm for Conjunctive Grammars, [Okhotin, 2002]. The algorithm runs in polynomial time for all conjunctive grammars. When applied to the boolean closure of deterministic context free languages, it runs in linear time.

One-turn SAPDA We introduce a sub-family of SAPDA, one-turn SAPDA, analogously to one-turn PDA. An SAPDA is one-turn if all stack-branches make exactly one turn in all accepting computations. Note: the requirement of a turn is not limiting as we are considering acceptance by empty stack.

Single-state SAPDA The “if” proof translates a general SAPDA into a Conjunctive Grammar. The “only if” proof translates a Conjunctive Grammar into a single-state SAPDA. Corollary: Single-state SAPDA and multi-state SAPDA are equivalent. This characterizes classical PDA as well.

Background It is a well known result [Ginsburg et.al, 1966] that Linear Grammars are equivalent to one-turn PDA. A turn is a computation step where the stack height changes from increasing to decreasing. A one-turn PDA is a PDA s.t. all accepting computations, have only one turn.

One-turn SAPDA An SAPDA is one-turn if all stack-branches make exactly one turn in all accepting computations. Note: if the automaton is a PDA, then there is only one branch with no second phase and therefore the automaton is a classical one-turn PDA. phase 2 phase 1 phase 3

Concluding Remarks Summary Future Directions Acknowledgments

Future Directions Broadening the theory of SAPDA Finite-turn Automata LR(k) Grammars Considering possible applications Formal verification Programming Languages / Compilation …

Acknowledgments Prof. Michael Kaminski Prof. Nissim Francez Prof. Shmuel Zaks Eitan Yaakobi, Yaniv Carmeli, Sonya Liberman, Keren Censor My Parents, Nava and Jacob Sivan Bercovici