  We observe that any knot invariant extends to virtual knots. The isotopy
classification problem for virtual knots is reduced to an algebraic problem
formulated in terms of an algebra of arrow diagrams. We introduce a new notion
of finite type invariant and show that the restriction of any such invariant of
degree n to classical knots is an invariant of degree at most n in the
classical sense. A universal invariant of degree at most n is defined via a
Gauss diagram formula. This machinery is used to obtain explicit formulas for
invariants of low degrees. The same technique is also used to prove that any
finite type invariant of classical knots is given by a Gauss diagram formula.
We introduce the notion of n-equivalence of Gauss diagrams and announce virtual
counter-parts of results concerning classical n-equivalence.
