Use a polyline to cut a polygon.
[C#]
///<summary>Use a polyline to cut a polygon.</summary>
///  
///<param name="polygon">An IPolygon interface that is the polygon to be split.</param>
///<param name="polyline">An IPolyline interface that is used to cut the input polygon.</param>
///   
///<returns>An IGeometryCollection with polygons resulting from the split.</returns>
///   
///<remarks></remarks>
public ESRI.ArcGIS.Geometry.IGeometryCollection CutPolygon(ESRI.ArcGIS.Geometry.IPolygon polygon, ESRI.ArcGIS.Geometry.IPolyline polyline)
{
  if(polygon == null || polyline == null)
  {
    return null;
  }
  ESRI.ArcGIS.Geometry.ITopologicalOperator4 topologicalOperator4 = polygon as ESRI.ArcGIS.Geometry.ITopologicalOperator4; // Dynamic Cast
  ESRI.ArcGIS.Geometry.IGeometryCollection geometryCollection = topologicalOperator4.Cut2(polyline);
  return geometryCollection;
}
[Visual Basic .NET]
'''<summary>Use a polyline to cut a polygon.</summary>
'''  
'''<param name="polygon">An IPolygon interface that is the polygon to be split.</param>
'''<param name="polyline">An IPolyline interface that is used to cut the input polygon.</param>
'''   
'''<returns>An IGeometryCollection with polygons resulting from the split.</returns>
'''   
'''<remarks></remarks>
Public Function CutPolygon(ByVal polygon As ESRI.ArcGIS.Geometry.IPolygon, ByVal polyline As ESRI.ArcGIS.Geometry.IPolyline) As ESRI.ArcGIS.Geometry.IGeometryCollection
  If polygon Is Nothing OrElse polyline Is Nothing Then
    Return Nothing
  End If
  Dim topologicalOperator4 As ESRI.ArcGIS.Geometry.ITopologicalOperator4 = TryCast(polygon, ESRI.ArcGIS.Geometry.ITopologicalOperator4) ' Dynamic Cast
  Dim geometryCollection As ESRI.ArcGIS.Geometry.IGeometryCollection = topologicalOperator4.Cut2(polyline)
  Return geometryCollection
End Function