EDUCATION:
Northeastern University, Boston, 1993-1999 | |
Ph.D. in Mathematics, 1999
M.S. in Computer Science, 1999 |
|
Ph.D. Thesis: Recognition of finite black box groups. | |
Moscow Institute of Physics and Technology (aka MIPT, "Phystech"), 1988-1993 | |
Major: Applied Mathematics and Computer Science. Minor: Physics. |
EMPLOYMENT:
Dartmouth College, Dept. of Computer Science & Institute for Security Technology Studies
Postdoctoral Research Associate, 2002-present time
BBN Technologies/Verizon, Cambridge
Worked on Text Understanding projects, using Hidden Markov Models, Bayesian models, TF-IDF and other statistical learning and information extraction algorithms and techniques. Implemented XML/XSLT/HTML document frameworks, relational database connectivity and web-based application GUI.
Instructor, 1997-1999
UNIX System Administrator, 1997-2000
|
RESEARCH:
Interests: | |
Unix host and network security, reverse engineering of malware.
NLP and XML-based technologies for better search and indexing, XML-based cooperative web protocols. Object-oriented design, algorithms for Symbolic Computation. |
|
Conferences:
(talks & posters) |
|
IEEE Workshop on Information Assurance (West Point, NY, 2003)
Summer School on Randomized Algorithms (University of Wisconsin, 1998) DIMACS Workshop on Randomized Algorithms (Princeton, 1998) [program] East Coast Computer Algebra Day (U.S. Naval Academy, 1998), East Coast Computer Algebra Day (Northeastern University, 1997), acted as the local coordinator for Northeastern |
|
Papers: | |
The Kerf toolkit for intrusion analysis, with Javed Aslam, David Kotz, Ron Peterson, Daniela Rus and Brett Tofel, IEEE Security and Privacy, 2004. Accepted for publication.
Experiments in Multi-Modal Content Extraction,
FactBrowser Demonstration,
Fast constructive recognition of a black box group isomorphic to
S_n or A_n using Goldbach's Conjecture,
On sampling generating sets of finite groups and product replacement
algorithm,
Constructive recognition of black box groups isomorphic to central
extensions of PSL(n,q),
Recognition of finite black box groups,
|
TEACHING:
Algorithms and Data Structures I | |
Structures, classes, and templates (C++). Abstraction and encapsulation. Dynamic arrays, stacks, queues, linked lists. Simple sorting and searching. Recursion and recursive algorithms. Elements of OO design. Final project for the class was to program a classic arcade game clone, such as Arkanoid, Tetris, Alien Invaders, etc. | |
Algorithms and Data Structures II | |
Linked lists, trees, heaps, priority queues, and hashing. Sorting and searching: quicksort, heapsort, binary search trees etc. Design issues: picking the right data structure and implementation, memory management, generic programming with templates (C++, STL). Recursion versus explicit stack-based algorithms. Graph algorithms. | |
Fundamentals of Computer Science | |
General idea of computer architecture and assembly programming. Basic concepts of a high-level language such as data types, variables, expressions, statements, procedures, functions etc. Basic operations with strings and arrays, input/output etc. Ideas of structured programming. | |
Calculus, Precalculus, Linear Algebra with Analytic Geometry | |
Standard freshman and sophomore courses. |
PROGRAMMING ENVIRONMENTS:
Software: | |
C++, C, Java, Perl (Unix, Win32), LISP, Scheme, Smalltalk
SQL and Transact-SQL (SQL Server 7), JDBC, ODBC, ADO and OLE DB XML/XSL, XML DOM, HTML and CGI, Tcl/Tk |
|
Platforms: | |
UNIX (Linux, Solaris, SunOS), MS-DOS, Windows 9x, NT |
VARIOUS PROGRAMMING PROJECTS:
Courseware for undergrad C++ courses | |
Implemented a graphics/console library for student projects, on top of Win32 API, (for course projects such as clones of classic arcade games: Arkanoid, Tetris, Alien Invaders etc.) (Visual C++, Cygwin32/Windows 9x, NT) | |
Symbolic Computation | |
Implemented a GAP share package for two new black box recognition algorithms
("thesis-ware"; GAP/Unix,Win32)
Implemented a package for computation in finite permutation groups (a "Rubik's cube solver") (Lisp/Unix) Implemented a package for computation with polynomials in commuting and anti-commuting variables (Lisp/Unix) |
|
Compiler Design | |
Implemented a compiler from an ML-like language into PowerPC assembly (Java/Unix,PowerPC) | |
Operating Systems,
Distributed OS |
|
Implemented multi-threading and virtual memory in a time-sharing operating
system (C++/Unix)
Implemented a master/slaves task server for remote execution of tasks using RPC (C++,rpcgen/Linux) |
|
Comp. Architecture | |
Implemented a simulation of the MIPS R4400 processor, register transfer level (C++/Unix) |
RELEVANT COURSES:
Mathematics | |
Commutative Algebra, Representation Theory, Lie Groups and Lie Algebras, Probability, Statistics, Real and Complex Analysis, Differential Geometry, Topology | |
Computer Science | |
Compiler Design, Operating Systems, Parallel Algorithms, Principles of Programming Languages, Distributed OS, Architecture, Object Oriented Design. |
Languages: Russian, German |