THE FULCRUM SYNTACTIC ANALYZER 
FOR RUSSIAN 
Paul L. Garvin 
The Bunker-Ramo Corporation 
Canoga Park, California 
i. The Fulcrum syntactic analyzer is part of a bipartite system for 
accomplishing automatic translation from Russian into English. 
A bipartite system is characterized by the fact that it consists 
of two major portions: a machine dictionary and a translation 
algorithm. It differs from a tripartite system which consists of 
three major portions: a machine dictionary, a parsing algorithm, 
and a separate table of grammatical and semantic rules. In the 
author's opinion, the alleged advantages of a tripartite algorithm 
turn out to be illusory, whenever in practice the use of a realistically 
extensive grammar, and not just a few basic rules, is attempted. 
The grammar table then becomes so complex that it can no longer 
be handled by a simple algorithm. Then either the algorithm has 
to be adapted to the table, which reduces its generality, or a 
secondary algorithm has to be written which will show the processor 
the way around the table. The algorithm of a bipartite system is 
essentially a linguistic pattern recognition algorithm which, instead 
of matching portions of sentences against rules stored in a table, 
directs searches at the different portions of the sentence in order 
to identify its grammatical pattern. Thus, the essential character- 
istic of the algorithm is the sequencing of searches and, in each 
search subroutine, only as much grammatical information is used 
as is appropriate to the \[~articular search. The rules of the grammar 
are in fact applied by the algorfthm in a definite order, and a given 
rule is~not even called unless the previous searches have led to a 
point where its application becomes necessary. This means that 
the highly complex system of rules that makes up the real grammar 
of a language is distributed over a correspondingly complex algo- 
rithrn which applies the rules in terms of the ordering that the 
structure of the language requires. 
The Fulcrum approach is based on two fundamental principles: 
the concept of the fulcrum and the pass method. 
/ LJ 
Z. The concept of the fulcrum implies the use of key elements 
within the sentence (fulcra) as starting points for the searches 
performed by the algorithm. This means that the algorithm, in 
searching through a sentence, does not simply progress from 
word to word, but in fact "skips" from fulcru:m to fulcrum. It 
performs a little search sequence each time it has reached a 
fulcrum, and goes on to the next fulcrum when this particular 
search is completed. 
3. The pass method means that not one but several passes are made 
at every sentence, each pass designed to identify a particular set 
of grammatical conditions pertinent to the recognition process. 
Consequently, each pass has its own set of fulcra and its own 
search sequences. The pass method reflects the orderly pro- 
gression in which the determination of the structure of the sentence 
is made: first, the sentence components are identified individually, 
then the relations between components are established, and finally 
the structure of the sentence as a whole is established. To each 
of these intermediate parsing objectives there corresponds, roughly, 
a pass or series of passes in the algorithm. The correspondence 
is not exact, because there are many ambiguities and irregularities 
interfering with the recognition process, and the design of the 
Fulcrum algorithm reflects these added complexities. 
4. The Fulcrum syntactic analyze~ has been implemented on two levels: 
(a) an earlier, less sophisticated version called Fulcrum I, which 
has been fully coded and is now capable of producing experimental 
translations; (b) a recent more" sophisticated version, called 
Fulcrum II, for which detailed plans have been drawn up and 
which, when implemented on a general-purpose computer, will be. 
capable of producing translations for practical use. It is expected 
that the complete implementation of the Fulcrum II will take four 
to six years. 
5. The major improvements in the Fulcrum II over Fulcrum I are 
the following: 
a. The order of passes and individual search operations deviates 
further from the order of descriptive levels than was the case 
in Fulcrum I. This is due to the fact that the new search 
patterns are based primarily on the order in which the 
grarn_rnatical information becomes available to the program 
rather than the order in which a linguist would prefer to 
present his description. 
b. The Fulcrum II uses an iterative principle. The same set 
of search operations is used repeatedly to establish the internal 
structure of a variety of syntactic units. Thus, inserted 
structures (such as parenthetic expressions) are treated by 
the same search operation as entire sentences; clauses of 
Z 
. 
7. 
c. 
different types, such as relative clauses or independent 
clauses, are likewise treated by essentially the same search 
sequence. A control cycle insures that the different search 
sequences are called in the right order so that these different 
units are identified and related to each other appropriately. 
T/~e heuristic principle of trial and evaluation is applied 
throughout the Fulcrum II algorithm. In all parts in the 
program where decisions are not unequivocal, a capability 
will exist for labeling decisions as provisional trials, so that 
they can be revised later in the program by evaluation routines 
based on information available to the program subsequently. 
The research principle of the Fulcrum approach is based on the 
interplay of theory and experimentation: by designing an experimental 
program based on an initial theoretical conception, this conception 
can be refined by computer experiments made possible by the 
availability of an experimental translation program at all times. 
The theoretical basis for the Fulcrum approach is the Definitional 
Model of Language proposed by the author, the methodological 
foundations are those of the inductive method developed by the 
author. 
.% 
O. 
I. 
II. 
III. 
O U T LINE. ;0 F,. IF<U-~G t~4a~lV~ .4I Io S~N T~A~. T~K9 :%A,~lY~ Y, Z E:B~ a i 
.~. , .:.~ ~<,;i/t eg"£u~ 531:3ys \]o':r3no::, /~_ .~-}9\[zsupge 
Dictionary lo0kup</hd'-s.tem£A~-fiszln~ bns bg\[ibnebi 9"~s a~i~u 
Pre-scan: pa-ra~raph~,namb~4n~; ~le~n%~r~a~ti~f~ao~t~y~graphloal 
sentence cate,go~ ~d ...-~.-~\[.q'xo~l~ II cc~uu:.~l~S~ sd3' 3~aod~uo'~d3 
~',L/.,O/\[\[: ?5~bO L~C',I~ S'I\[.IS ~lO£8~D~b s't. gfiV¢ f~E;7~o.'zq ' 
I. D e t e r rnin~e~.~Te~t&~ ce'~ b ~dr~da~s~ e ys de~n~Zn>_~h-~t~.s e nte n c e 
is interrogative, or exclamatory. Otherwise leave unlabeled. 
Z. A s s ign::g )~ a}ni~at it al<tf.UAC t i~¢ir~o ~r~b~ols ,v, ~omif\]:yr ~tq z ~ 3 r~ 
matte r :, ab59~ ?i,~t-ibr~s, :(c3od~@fi~ \]~r~a~r ~(a~.o=4i~to~ o ~ q 
when net,@~'s&<9"y:\]~ .~\[ci~isjef, s ~J I6~ng;l~i~-gqx9 ~7s \]o ~3l\]ldsIisvs 
found s'6~'abal}4iry~ir~r£he~didtiolish-z,~e.oqoxq .gg~u~n~l Io l~boM 
'~:,.:~o\[pvgb bo_.'.r~.,3ni o¢.;,.Ju~Ji, n. 9~iI Io 9eoH~ 97~- ano'~,hr~uol 
4. Assign grammatical functions to missing words,.• initi~l~J~a 
an~es before last names (to form appositive nominal 
block with last name); include dictionary words ending in 
hyphen \[flag when necessary \] . 
.% 
5. Preliminary homograph resolution (include ~eM and KaK, 
but not commas or ambiguous conjunctions or dashes, nor 
potential interrogative pronouns, interrogative modifiers 
and interrogative adverbs) \[flag when necessary\] . 
Pre - 8 yntax 
i. Se____t unambiguous clause boundaries using the following signals: 
subordinating conjunctions; relative and interrogative pronouns, 
modifiers, and adverbs; TO after eca~ and TaK KaK (check 
out comma), colons \[flag when necessary\] ; if clause 
boundaries are set, label clauses as dependent or independent 
or relative according to established clause boundary and 
check whether both boundaries' are ready to be set; otherwise 
leave unlabeled. If no clause boundaries are set, treat 
sentence as single unlabeled clause. 
Z. Label qeM after comparatives as potential introducer of 
independent structure \[flag\]. 
4 ~ 
IV. First processing cycle:' identify inserted structures and paren- 
thetic structures (including quotes), label them (from dictionary) 
as to function if possible (potential ap~tions, apposition 
introducers, complements, separate ir~serted sentences); this 
cycle includes a table lookup and, if the postential inserted structure 
is not found in the table, calls the main and final processing sub- 
routine s. 
V. Second processing cycle: process dependent clauses (including 
relative clauses and indirect questions) in sequence, going right 
to left by calling the main processing subroutine. 
Vl. Third processing cycle: process independent and unlabeled clauses 
in sequence, going right to left (or process entire sentence as 
undivided whole) by calling the main and final processing sub- 
routines. 
MAIN PROCESSING SUBROUTINE, MPS 
(detailed syntactic identification) 
MPS-A 
MPS-B 
Preliminary sequence: coordinate adverbs (semantic 
check); attach ~Ke and Heto adverb, modifier, or pronoun; 
assign He to nominals, as applicable; package adverbs 
mo~ing other adverbs with their heads, creating 
adverbial blocks. 
Nominal blocking sequence i 
First subsequence: From right to left perform each 
step (1-3) as a separate pass at the clause or sentence. 
1. ~ adverbs to modifiers or nominals as appropriate 
(including assignment of B0T to demonstratives), 
label unattached adverbs. 
2. Coordinate modifiers (semantic check), package 
modifie r s modifying other modifie r s (inc luding 
caMBL~ ) with thefr heads \[fla~ . 
3. Assign modifier packages to nominals: label unassigned 
modifiers; label previously unlabeled un--~ified 
nominals an~'personal, relative, and interrogative 
pronouns for further processing as nominal blocks. 
Second subsequence: From right to left perform the 
following steps (4-10)in sequence, for each individual 
unassigned adverb, unassigned modifier, or nominal 
block, in a single pass. 
4. Resolve genitive ambiguity when re solvable by pre- 
ceding nominal, but not otherwise; \[flag\]. 
5. For nominal blocks only; attach prepositional 
structures and coordinate prepositional structures 
and appropriate adverbs if attachable to same head 
(include EaR...TaR 14 in coordination);; attach 
governed structures including governed clauses; 
attach genitives of subject and object,, attach other 
ot--~-~genitive complements \[ set flagJ ; attach 
appositions; attach appropriate unassigned modifiers 
(including Bee, ME; check commas) and governing 
modifier packages set flag when necessary (wipe 
out "missing mandatory head '' label); coordinate 
governing modifier packages when appllc&ble; attach 
complements and coordinate (include EaR.. '.TAR M 
in coord. ). 
6. Coordinate nominal blocks and unassigned modifiers 
(wipe out "unassigned" labels for modifiers included 
MPS-C 
in the coordination), using semantic test; include 
appropriate unassigned adverbs in coordination 
(remove "unassigned" label); include constructions 
"nominal -~ c ÷ nominal" and K~M in 
coordination \[set flag\]. 
7. Label nominal block or unassigned modifier as 
prepositional structure if thus found; label 
nominal block or unassigned modifier a~uational 
structure (e.g.,I~aK) if thus found; ~ un- 
assigned adverb or He to prepositional structure 
when applicable (wipe out "unassigned" label); 
assign apposition or appositional modifier to 
prepositional structure. 
8. ~ relative clause (using existing clause 
ries as previously set) to antecedent 
nominal block; attach additional coordinate 
relative clause s~licable. 
. Assi n governed structures and complements 
(including complementary adverbs) to unassigned 
and/or governing modifiers, coordinate governed 
structures and complements when assignable to 
modifiers (including TaK... EaK H in coordination); 
assign governing modifier package to head if head 
is~'s-lro'u~d to the right, but not otherwise (wipe out 
"unassigned" label); indicate missing mandatory 
head. 
I0. Assign dependent structure to unassigned comparative 
moor or adverb when the latter is followed by 
qeM ; assign dependent genitive structure to un- 
assigned comparative modifier or adverb; assign 
prepositional structure to unassigned adverb; 
indicate missing mandatory head. 
Predicate blocking sequence 
As a general search instruction, do not cross commas, 
conjunctions, or dashes, except when coordination is 
called in a step. 
First subsequence: From right to left, perform all steps 
{1-?) as a single pass at the clause or sentence. 
i. Label infinitives and gerunds. 
2. ~ adverbs to infinitive or gerund. 
3. Assign He, jiM:and reflexive pronoun to infinitive 
or gerund; ~ past passive predicative to 
4. 
biT 5 and us e government and compleme ntation 
codes of past passive predicative in the subsequent 
steps; coordinate past passive predicatives when 
applicable and use government and complementation 
codes of last past passive predicative in further 
processing. 
Assign objects and complements to infinitive or 
gerund block, coordinate governed and comple- 
mentary prepositional blocks and adverbs when 
applicable (note whether infinitive or gerund can 
govern a modifier and in that case wipe out 
"missing mandatory head" or "unassigned" label 
from governed modifier); assign previously 
packaged qTO-clauses and indirect questions to 
infinitive or gerund. 
5. 
. 
Coordinate infinitive or gerund blocks; coordinate 
past passive predicative blocks assigr~able to forms 
of 6hlTB when applicable. 
Assign infinitive block to previously established 
nominal block when applicable. 
7. Indicate missing mandatory clause members when 
applicable. 
Second subsequence: From right to left, perform all 
steps (8-15) as a single pass. 
8. Label predicatives; label eOTbas special type of 
predicative. 
9. Assign adverbs to predicative. 
10. Assign He,a~,6~ and reflexive pronoun to 
predicative; connect finite form of 6blTb with 
predicative. 
1 1. Assign objects and complements to predicative 
blo--i-6~flag when ambiguous\] , coordinate governed 
and complementary prepositional blocks and adverbs 
when assignable to same predicative blocks (note 
whether predicative can govern a modifier and in 
that case wipe out "missing mandatory head" or 
"unassigned" label); cancel government code of 
comparative predicative~en in q,eM...TeM clause; 
assign previously packaged qTO-clauses and indirect 
question clauses to predicative. 
IZ. Assign infinitive block to predicative block to form 
extended predicative block. 
/ 
/ 
IMPS -D 
13. Coordinate predicative blocks (semantic check). 
14. Find and label subject, or genitive or dative of 
reference (semantic check), for predicative 
block (include infinitive block, or qTO-clause 
or indirect question as subject, when applicable; 
do not cross other predicatives in this search). 
15. Label clause members and include them in potential 
clause but do not absorb clause ~-undary in potential 
clause; revise ad hoc clause packaging done at III; 
indicate m~ng mandatory clause members and 
che~hether candidates for these, are not included 
in previously completed coordination--if so, revise 
packaging. 
Clause blocking sequence 
As a general s~arch instruction do not cross commas, 
conjunctions, or dashes, except when coordination is 
cilled in a step. 
i. Find unattached infinitive blocks and check for 
d-'~-~e of reference or 6bl , attach the latter to 
infinitive block, and label resultant package as 
predicative package a~otential clause, as 
appropriate. 
Z. Check for missing mandatory head to modifier and 
atta-'a-c-~ modifier to head or relabel modifier as 
nominal, as appropriate; assign unattached adverbs, 
prepositional blocks and ot-~-er potential complements 
(including sp~ cial instrumentals) to either nominal 
to the right or entire clause, as applicable, and 
coordinate when applicable (including TaK...EaE M 
in coordination); include clause introducers in 
clause and indicate clause boundary where possible 
and not previously indicated. 
3. Label previously unlabeled clauses as follows-- 
whether qTO, qeM and ~ introduce indirect 
questions; label qTO-clauses that are not indirect 
questions as such; label qTO61~-clauses and special 
relative clauses (those separated by semicolons?) 
as potential dependent structures, but retain clause 
status for purposes of attaching dependent clauses 
to them later; label infinitive clauses introduced 
by ecaH, qTO6N, npe~e ~eM, nepe~ TeM KaK, 
etc., as dependent clauses; label clauses containing 
c onjunc tions and pre dicative s as dependent claus e s ; 
label clauses containing dative of reference and 
.... J in-'~itlve as independent clauses; label clauses 
containing 6~ and infinitives as depe-~ent clauses; 
label clause s containing interrogative pronouns, 
m~Ifiers or adverbs as direct or indirect questions, 
as applicable;~-labe____l remaining clauses as independent 
clauses 
FINAL PROCESSING SUBROUTINE (FPS): 
SENTENCE BLOCKING SEQUENCE 
Perform each step separately from right to left through 
clause or sentence. 
i. 
Z. 
4. 
Resolve dash ambiguity (repeat predicative blocking 
sequence at MPS-C8 if dash is resolved as predicative). 
Check for independent clause; interpret unattached commas, 
colons, and conjunctions as clause boundaries if surrounded 
by pote~ntial clauses (include flagged commas in search) or 
if likely, r{ght boundary of relative clause--if not, check 
for other possible coordinations---and establish status o-i r- 
coordinated clauses as dependent or independent; resolve 
status of hitherto unassigned H and TO (and similar pa~les). 
unattached dependent clause s to nearest whole clause, 
eM-clauses to TeM-clauses. 
5. 
6. 
7. 
Check functional potential of remaining unassigned structures 
and assign if possible. 
Label inserted structures as potential nominal blocks, 
appositions, apposition introducers, potential complements, 
separate clauses or inserted sentences, as applicable. 
Label unattached independent clause as whole declarative 
sentence. 
I0 
