Rename ifilterfalse() to filterfalse() and izip_longest() to zip_longest().
diff --git a/Lib/filecmp.py b/Lib/filecmp.py
index 00fc135..56d557b 100644
--- a/Lib/filecmp.py
+++ b/Lib/filecmp.py
@@ -12,7 +12,7 @@
 import os
 import stat
 import warnings
-from itertools import ifilterfalse, izip
+from itertools import filterfalse, izip
 
 __all__ = ["cmp","dircmp","cmpfiles"]
 
@@ -133,8 +133,8 @@
         a = dict(izip(map(os.path.normcase, self.left_list), self.left_list))
         b = dict(izip(map(os.path.normcase, self.right_list), self.right_list))
         self.common = list(map(a.__getitem__, filter(b.__contains__, a)))
-        self.left_only = list(map(a.__getitem__, ifilterfalse(b.__contains__, a)))
-        self.right_only = list(map(b.__getitem__, ifilterfalse(a.__contains__, b)))
+        self.left_only = list(map(a.__getitem__, filterfalse(b.__contains__, a)))
+        self.right_only = list(map(b.__getitem__, filterfalse(a.__contains__, b)))
 
     def phase2(self): # Distinguish files, directories, funnies
         self.common_dirs = []
@@ -276,7 +276,7 @@
 # Return a copy with items that occur in skip removed.
 #
 def _filter(flist, skip):
-    return list(ifilterfalse(skip.__contains__, flist))
+    return list(filterfalse(skip.__contains__, flist))
 
 
 # Demonstration and testing.
diff --git a/Lib/test/test_itertools.py b/Lib/test/test_itertools.py
index 7d905d8..928f489 100644
--- a/Lib/test/test_itertools.py
+++ b/Lib/test/test_itertools.py
@@ -324,16 +324,16 @@
         self.assertRaises(TypeError, ifilter, isEven, 3)
         self.assertRaises(TypeError, next, ifilter(range(6), range(6)))
 
-    def test_ifilterfalse(self):
-        self.assertEqual(list(ifilterfalse(isEven, range(6))), [1,3,5])
-        self.assertEqual(list(ifilterfalse(None, [0,1,0,2,0])), [0,0,0])
-        self.assertEqual(list(ifilterfalse(bool, [0,1,0,2,0])), [0,0,0])
-        self.assertEqual(take(4, ifilterfalse(isEven, count())), [1,3,5,7])
-        self.assertRaises(TypeError, ifilterfalse)
-        self.assertRaises(TypeError, ifilterfalse, lambda x:x)
-        self.assertRaises(TypeError, ifilterfalse, lambda x:x, range(6), 7)
-        self.assertRaises(TypeError, ifilterfalse, isEven, 3)
-        self.assertRaises(TypeError, next, ifilterfalse(range(6), range(6)))
+    def test_filterfalse(self):
+        self.assertEqual(list(filterfalse(isEven, range(6))), [1,3,5])
+        self.assertEqual(list(filterfalse(None, [0,1,0,2,0])), [0,0,0])
+        self.assertEqual(list(filterfalse(bool, [0,1,0,2,0])), [0,0,0])
+        self.assertEqual(take(4, filterfalse(isEven, count())), [1,3,5,7])
+        self.assertRaises(TypeError, filterfalse)
+        self.assertRaises(TypeError, filterfalse, lambda x:x)
+        self.assertRaises(TypeError, filterfalse, lambda x:x, range(6), 7)
+        self.assertRaises(TypeError, filterfalse, isEven, 3)
+        self.assertRaises(TypeError, next, filterfalse(range(6), range(6)))
 
     def test_izip(self):
         # XXX This is rather silly now that builtin zip() calls izip()...
@@ -366,25 +366,25 @@
             ]:
             target = [tuple([arg[i] if i < len(arg) else None for arg in args])
                       for i in range(max(map(len, args)))]
-            self.assertEqual(list(izip_longest(*args)), target)
-            self.assertEqual(list(izip_longest(*args, **{})), target)
+            self.assertEqual(list(zip_longest(*args)), target)
+            self.assertEqual(list(zip_longest(*args, **{})), target)
             target = [tuple((e is None and 'X' or e) for e in t) for t in target]   # Replace None fills with 'X'
-            self.assertEqual(list(izip_longest(*args, **dict(fillvalue='X'))), target)
+            self.assertEqual(list(zip_longest(*args, **dict(fillvalue='X'))), target)
 
-        self.assertEqual(take(3,izip_longest('abcdef', count())), list(zip('abcdef', range(3)))) # take 3 from infinite input
+        self.assertEqual(take(3,zip_longest('abcdef', count())), list(zip('abcdef', range(3)))) # take 3 from infinite input
 
-        self.assertEqual(list(izip_longest()), list(zip()))
-        self.assertEqual(list(izip_longest([])), list(zip([])))
-        self.assertEqual(list(izip_longest('abcdef')), list(zip('abcdef')))
+        self.assertEqual(list(zip_longest()), list(zip()))
+        self.assertEqual(list(zip_longest([])), list(zip([])))
+        self.assertEqual(list(zip_longest('abcdef')), list(zip('abcdef')))
 
-        self.assertEqual(list(izip_longest('abc', 'defg', **{})),
+        self.assertEqual(list(zip_longest('abc', 'defg', **{})),
                          list(izip(list('abc')+[None], 'defg'))) # empty keyword dict
-        self.assertRaises(TypeError, izip_longest, 3)
-        self.assertRaises(TypeError, izip_longest, range(3), 3)
+        self.assertRaises(TypeError, zip_longest, 3)
+        self.assertRaises(TypeError, zip_longest, range(3), 3)
 
         for stmt in [
-            "izip_longest('abc', fv=1)",
-            "izip_longest('abc', fillvalue=1, bogus_keyword=None)",
+            "zip_longest('abc', fv=1)",
+            "zip_longest('abc', fillvalue=1, bogus_keyword=None)",
         ]:
             try:
                 eval(stmt, globals(), locals())
@@ -394,13 +394,13 @@
                 self.fail('Did not raise Type in:  ' + stmt)
 
         # Check tuple re-use (implementation detail)
-        self.assertEqual([tuple(list(pair)) for pair in izip_longest('abc', 'def')],
+        self.assertEqual([tuple(list(pair)) for pair in zip_longest('abc', 'def')],
                          list(zip('abc', 'def')))
-        self.assertEqual([pair for pair in izip_longest('abc', 'def')],
+        self.assertEqual([pair for pair in zip_longest('abc', 'def')],
                          list(zip('abc', 'def')))
-        ids = list(map(id, izip_longest('abc', 'def')))
+        ids = list(map(id, zip_longest('abc', 'def')))
         self.assertEqual(min(ids), max(ids))
-        ids = list(map(id, list(izip_longest('abc', 'def'))))
+        ids = list(map(id, list(zip_longest('abc', 'def'))))
         self.assertEqual(len(dict.fromkeys(ids)), len(ids))
 
     def test_product(self):
@@ -659,7 +659,7 @@
 
         self.assertRaises(StopIteration, next, repeat(None, 0))
 
-        for f in (ifilter, ifilterfalse, imap, takewhile, dropwhile, starmap):
+        for f in (ifilter, filterfalse, imap, takewhile, dropwhile, starmap):
             self.assertRaises(StopIteration, next, f(lambda x:x, []))
             self.assertRaises(StopIteration, next, f(lambda x:x, StopNow()))
 
@@ -690,9 +690,9 @@
         a = []
         self.makecycle(ifilter(lambda x:True, [a]*2), a)
 
-    def test_ifilterfalse(self):
+    def test_filterfalse(self):
         a = []
-        self.makecycle(ifilterfalse(lambda x:False, a), a)
+        self.makecycle(filterfalse(lambda x:False, a), a)
 
     def test_izip(self):
         a = []
@@ -840,14 +840,14 @@
             self.assertRaises(TypeError, ifilter, isEven, N(s))
             self.assertRaises(ZeroDivisionError, list, ifilter(isEven, E(s)))
 
-    def test_ifilterfalse(self):
+    def test_filterfalse(self):
         for s in (range(10), range(0), range(1000), (7,11), range(2000,2200,5)):
             for g in (G, I, Ig, S, L, R):
-                self.assertEqual(list(ifilterfalse(isEven, g(s))),
+                self.assertEqual(list(filterfalse(isEven, g(s))),
                                  [x for x in g(s) if isOdd(x)])
-            self.assertRaises(TypeError, ifilterfalse, isEven, X(s))
-            self.assertRaises(TypeError, ifilterfalse, isEven, N(s))
-            self.assertRaises(ZeroDivisionError, list, ifilterfalse(isEven, E(s)))
+            self.assertRaises(TypeError, filterfalse, isEven, X(s))
+            self.assertRaises(TypeError, filterfalse, isEven, N(s))
+            self.assertRaises(ZeroDivisionError, list, filterfalse(isEven, E(s)))
 
     def test_izip(self):
         for s in ("123", "", range(1000), ('do', 1.2), range(2000,2200,5)):
@@ -861,11 +861,11 @@
     def test_iziplongest(self):
         for s in ("123", "", range(1000), ('do', 1.2), range(2000,2200,5)):
             for g in (G, I, Ig, S, L, R):
-                self.assertEqual(list(izip_longest(g(s))), list(zip(g(s))))
-                self.assertEqual(list(izip_longest(g(s), g(s))), list(zip(g(s), g(s))))
-            self.assertRaises(TypeError, izip_longest, X(s))
-            self.assertRaises(TypeError, izip_longest, N(s))
-            self.assertRaises(ZeroDivisionError, list, izip_longest(E(s)))
+                self.assertEqual(list(zip_longest(g(s))), list(zip(g(s))))
+                self.assertEqual(list(zip_longest(g(s), g(s))), list(zip(g(s), g(s))))
+            self.assertRaises(TypeError, zip_longest, X(s))
+            self.assertRaises(TypeError, zip_longest, N(s))
+            self.assertRaises(ZeroDivisionError, list, zip_longest(E(s)))
 
     def test_imap(self):
         for s in (range(10), range(0), range(100), (7,11), range(20,50,5)):
@@ -1001,7 +1001,7 @@
 class SubclassWithKwargsTest(unittest.TestCase):
     def test_keywords_in_subclass(self):
         # count is not subclassable...
-        for cls in (repeat, izip, ifilter, ifilterfalse, chain, imap,
+        for cls in (repeat, izip, ifilter, filterfalse, chain, imap,
                     starmap, islice, takewhile, dropwhile, cycle):
             class Subclass(cls):
                 def __init__(self, newarg=None, *args):
@@ -1085,7 +1085,7 @@
 
 >>> def all(seq, pred=None):
 ...     "Returns True if pred(x) is true for every element in the iterable"
-...     for elem in ifilterfalse(pred, seq):
+...     for elem in filterfalse(pred, seq):
 ...         return False
 ...     return True