# detectCongruence(SpecialCubicFourfold,ZZ) -- detect and return a congruence of (3e-1)-secant curves of degree e

## Synopsis

• Function: detectCongruence
• Usage:
detectCongruence X
detectCongruence(X,e)
• Inputs:
• X, , containing a surface $S\subset\mathbb{P}^5$
• e, an integer, a positive integer (optional but recommended)
• Optional inputs:
• Verbose => ..., default value false, request verbose feedback
• Outputs:
• , that is a function which takes a (general) point $p\in\mathbb{P}^5$ and returns the unique rational curve of degree $e$, $(3e-1)$-secant to $S$, and passing through $p$ (an error is thrown if such a curve does not exist or is not unique)

## Description

 i1 : -- A general cubic fourfold of discriminant 26 X = specialCubicFourfold("3-nodal septic scroll",ZZ/33331); o1 : ProjectiveVariety, cubic fourfold containing a surface of degree 7 and sectional genus 0 i2 : describe X o2 = Special cubic fourfold of discriminant 26 containing a 3-nodal surface of degree 7 and sectional genus 0 cut out by 13 hypersurfaces of degree 3 i3 : time f = detectCongruence(X,Verbose=>true); number lines contained in the image of the cubic map and passing through a general point: 8 number 2-secant lines = 7 number 5-secant conics = 1 -- used 10.3856 seconds o3 : Congruence of 5-secant conics to surface in PP^5 i4 : p := point ambient X -- random point on P^5 o4 = point of coordinates [15092, -9738, -3620, -15181, 12688, 1] o4 : ProjectiveVariety, a point in PP^5 i5 : time C = f p; -- 5-secant conic to the surface -- used 1.00869 seconds o5 : ProjectiveVariety, curve in PP^5 i6 : assert(dim C == 1 and degree C == 2 and dim(C * surface X) == 0 and degree(C * surface X) == 5 and isSubset(p, C))