# randomSchubertProblemInstance -- returns a random instance of a given Schubert problem

## Synopsis

• Usage:
randomSchubertProblemInstance(conditions,k,n)
• Inputs:
• conditions, a list, which is a list of Schubert conditions that are either all partitions or all brackets (see bracket2partition for details)
• k, an integer,
• n, an integer, $k$ and $n$ define the Grassmannian $Gr(k,n)$ of $k$-planes in $n$-space
• Optional inputs:
• Strategy => ..., default value unit circle, strategy for creating a random matrix representing a flag
• Outputs:
• a list, random instance of the Schubert problem, which is a list of pairs of the form (condition,flag)

## Description

This first verifies that the conditions are either all partitions or all brackets, and that they form a Schubert problem on $Gr(k,n)$.

Then it creates a list of random square invertible matrices that represent flags for the Schubert problem.

For instance, consider the problem of four lines, which is given by 4 partitions {1}$^4$ in $Gr(2,4)$

 i1 : randomSchubertProblemInstance({{1},{1},{1},{1}},2,4) o1 = {({1}, | .781262-.624203ii -.462954-.886382ii -.272832+.962062ii | .9868+.161945ii -.219207-.975678ii .778029-.628229ii | -.971549+.236839ii .157598-.987503ii .841103-.540875ii | .893324+.449414ii .360485-.932765ii -.651048+.759036ii ------------------------------------------------------------------------ -.670948-.741504ii |), ({1}, | .696205+.717843ii -.0281556+.999604ii .118767+.992922ii | | -.58234+.812945ii -.924052-.382267ii -.396553+.918012ii | | .486335-.873772ii -.970803-.23988ii -.272372-.962192ii | | -.783999-.620762ii .577597-.816322ii ------------------------------------------------------------------------ -.0562287-.998418ii .776937+.629579ii |), ({1}, | -.746312-.665596ii .023444+.999725ii .570649+.821194ii | | -.936289-.351232ii .701149-.713015ii -.863646+.504099ii | | -.164243+.98642ii .357971+.933733ii -.820726+.571321ii | | .85817-.513365ii ------------------------------------------------------------------------ .995687+.092774ii .168661+.985674ii -.765803+.643076ii |), ({1}, | .701342-.712825ii -.286823-.957983ii -.415126-.909764ii | | -.78761-.616174ii .976163-.21704ii -.416188-.909278ii | | .759918-.650019ii .482783+.87574ii .975922-.218119ii | | ------------------------------------------------------------------------ .918399+.395655ii .719639-.694348ii .9772+.212322ii .58629+.810101ii -.554833-.831962ii .454813+.890587ii -.590887+.806754ii -.726792+.686857ii .0800129+.996794ii -.939129+.343564ii -.616052-.787706ii .339065+.940763ii ------------------------------------------------------------------------ -.998741-.0501734ii |)} -.698649-.715464ii | .742918+.669382ii | -.99319-.116506ii | o1 : List

the same problem but using brackets instead of partitions

 i2 : randomSchubertProblemInstance({{2,4},{2,4},{2,4},{2,4}},2,4) o2 = {({2, 4}, | .996754-.0805092ii -.909393-.415938ii .398424+.917201ii | -.531694+.846937ii .92457+.381011ii -.976915+.213627ii | .51095+.859611ii -.227376-.973807ii .842765-.538281ii | -.341238+.939977ii -.110622-.993863ii -.923063-.384649ii ------------------------------------------------------------------------ -.688353+.725376ii |), ({2, 4}, | -.991977+.126418ii .398109-.917338ii -.81898+.573823ii | | .91893+.394421ii -.210222+.977654ii -.915156-.403101ii | | -.834955-.550318ii .491643-.870797ii -.684587-.728932ii | | -.978842+.204616ii .0976385-.995222ii ------------------------------------------------------------------------ .989783-.142579ii .930733+.365699ii |), ({2, 4}, | .990088-.140449ii .233835+.972276ii | | -.999969-.00781125ii .565772+.824562ii | | -.344326+.93885ii -.974074-.226228ii | | ------------------------------------------------------------------------ .276727+.960949ii -.166675+.986012ii .824149+.566373ii .74405-.668124ii .936252-.351329ii .869663+.493645ii -.191573+.981478ii -.987864+.155324ii .68453+.728985ii .476077+.879404ii -.535925+.844266ii .415186-.909737ii ------------------------------------------------------------------------ -.788618-.614883ii |), ({2, 4}, | .109319-.994007ii .560285+.8283ii .794218+.607632ii | | .984107-.177574ii .0000532609+1ii -.990213-.139564ii | | -.764815-.64425ii -.64519-.764022ii .194585-.980886ii | | -.129853+.991533ii .889567+.456804ii ------------------------------------------------------------------------ .990856+.13492ii -.211093+.977466ii |)} .978795+.20484ii .241807+.970324ii | .93104+.364917ii .923802+.382872ii | -.872433-.488734ii -.636591-.771201ii | o2 : List

## Caveat

The output consists of random numerical matrices that are assumed invertible. The code does not check invertibility.

## Ways to use randomSchubertProblemInstance :

• "randomSchubertProblemInstance(List,ZZ,ZZ)"

## For the programmer

The object randomSchubertProblemInstance is .