# SageMathCell online https://sagecell.sagemath.org/?q=vyynkz # Q'8d+ (14,3)=916, Moore bound=2563. # Quotient of the incidence graph of a regular generalized quadrangle by a polarity with duplication of some vertices. # J. Gómez. Some new large (?,3) graphs. Networks 53 (2009), pp. 1-5 # Ord.: 916 / Size: 6412 / Diam.: 3 / Avg.dist: 2.81866 # 14-reg.? True / Degree histogram: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 916] / Girth: 3 # # Cayley ? False --- vtx.trans. ? False -- edge.trans. ? False # import networkx as nx gom916=Graph(r":~?MS_@???K??@O??F???c??Ao?_@???o@oCO??K?e??@oCo??O?e???O@?B?G?S?o@oCO??A?G?W@?A_E?M?a?K?W?o@_B?E?K?W?o@?R?I?S?g@OA_D?I?S?_CoB_F?M?[?w@_J_F?K@S?oC_W_H?Q?_CwAOC?N?Q?_EWAOC?Q@_CK@WA_g_J?U?k@WAoD?p?S@GC?I_`@T?WCS@gB?__K@Q?s@gBOE_N?[Cc@o`OF_M@i?{@wB_\_OBY@CA?ToG?mAU@CA?`oG_P?_BsBofON_^?}@{BwFoN_]A}@wTgF`U_]DY@wTgGOOAj@?JcCGGOO?d@AACC?sOOBP?oA?YGG@_BP@EAGOWG`\_b@CAwXgGoP_b@CECCOwOPB`@CMCCOwOQ_cDwK[C_koQ_cDEASCgH@t_cGAAO_GH@TC@@GOCCosoR_eDmAWPWHoRBl@MAW^GHaJ_eGmAWawHaJ_h@OPsD?joSCB@OL{DGI@f_h@OR[D@LoSCv@OR[DOyOTB~@SJCDPIOT_iGqAkDOqOTB?HoSsB?Iae_iIYAghgJ@S_kF[RKD_lOUBT@WPKD`@OUBd@WScD_d`W_kHKTcB?JAk_kIqAoWPNak_qDWJwW?o`a_qIyBGdgK`d_qIIBGagK`}_qFEBGj`\OXD[JiBGW@VAy_qIwVSE`UAtDkJ[V?mWJ_YCD@gJSE_xOYDH@gRKE_tOYCR@gJOpwL@YBYK]@WE_lBF_sDgW{Eo}oZBOEkL_ZOvOZAwKeBWaGLanDz@kS{EoxoZCt@kDGegLafEl@kSwi`jOZC{I[UwtgLaODMLYB_gpiO[DYJyB_TpeO[BN@oRWf@Ma]C~@oHWbgMA@_wE}B_M?ko[CGGw[[F@BAMDkMMB_`pFBb_wGw[[FPKO\D?LC[sFOmbE_yGMBgbPkbc_yF?N?]O|@z_yJGV{FOrO\@sGKXozgM`mCELk\sAOM`jCEMyBg_pNbm_{FQBob@oo]AoKmBoh`SAhDSIkYSF_i`cBZ@wNw{gNAS_{DwUWnGN@CBwLyBoW?qBz_{EO^[F_q@jFv@{LG~WN`u_}DkXSFpIo^BmFo\[FpWAsDv@{PWc@GaQCeMIBwhPkO^@{HaBwdQBO^CiOYBwdPMCE_}HS_sG@Fbd`?H[_cG?kbGGVA?UGoGO@CBjA?KW|wOA`EnA?O?`@AaECMNAC?\PlcS`?FSQHDGO@tGWPQC?\QIOaAkD{K?WOpBP`CIw^cG`PBE`CCgMGxGPAUF[NK]_|PzOaCSP]CO^aBoaBIJ}COWOwbYFGP}CO[O|b@FGP}CO[PqC@G~AGMGxANobBEJeCWdpuobAqLMCW_@AADCKG[_kGpObFEYKwXwsGPaNGdAKMgwAMobDaJg^KGo]`dEPAKO_kP{cn`ED{UG}QKcn`EJC^HJwP`zDaNc`xJwQ@oBoFcNO]pnc[`GI?WkH?mbT`GEWVOoP`BBEHAOUO~`~ci`GH_]KH@EcR`GGK`CH?mbTHn?sC_VPicAHn?gC_VO{BTHnAOJgtQZodB}OW``BQFCN`IB[P`CWQ`WEoRmCgkp}cl`IHO\XKGQ`sFCQECgX@\odDKI_TGi`TbI`IDSP_rqGdA`IGoaHOgQaKGaSICgb@ebuGaSICoTPWBzG?OC_PJGR@uFAMWbsH_lbQHlAWIWhPdoeCUH?QGc`HcTIPAWLGnADoeBwOMCodPxOeAIIG]PJWRA]DIKk[xSGR@aDIKkiCH`AAdEUTACohPdbhFiOCiCHpKbo`MGG_cHolBVHxA[PHDAKCXGsPkgKHotB?`MIoUgl`ZawFmQmCwh@cDR`MFG[hGgRaACaOOj[Ho|AAGGTmCw_aADZ`MGGUh@AlogA{GwapPwJ_gDYNgdCI?jbUEsLkZ_vQ[OgB]JOZpGwSA@GSTyD?gpcdQ`OHkR_fPNA^FXA_EWXp]ogBMJs\PZWS@fDyUuD?Xp]bNJZA_KwnPmcWJZAcMwhpeDS`QE_LWZ?u`mD{UqDGV@iCy`QFK[WxpsBhFSQADG^QCdY`QI{^@IWSaGG_SUDGVpGaYEqM{mCB_SaYEqM}DGe`kbnHhAcROuPvcNHfAkIoVoo@`BCLwgKIpPCUHDAkQonQTojD[Og`X\gT_sCSKcfcIowbUEsLkZ_vQhojBIMojXWapdcJJAkNo}atOjCSKcf`Qr?ojAiGgXHNB?ojCSKcf`_WT`^CSKcf`_WUASDqQeD_h`SAhDSIkaPGGUArEqOSnH]a|d{`WD_[@PWU@~FqUqD_X@ub~ItAoM_sqiOkCWK[Xgr`fbOHsWID_M`CBvG|AoM_splDSK^AoM_`P`bRHyTOp{J?yBRIgW}D_\@hcYIgW}DggQGc[`YJC_pBAEcMG]VQDg_@AADCKG[^hYGJ_lAqMGg[JOpbjIxAsMguAfeM`YG{XPLq]c}H}S?o[JPJazHSXE@GJOpbjIwUwrSJOpbjIwVkrSJOp`yFUTop@egU`bE_MkcpVBLOmCUH?QGc`HbGHoVuDodP_Cg`[ISa`EAKcYGuQMDoUpqdF`[J?_`TQxomBwN[lhZavdoJbAwLG{AnEX`[FWYxSbEOmACDo^hWWV@ZFIO?fhPrQomAuJW[hPrQomAuMSgxhWV@ZFIQWgxhWV`rEiTCpkJpCBDHuWQDwe`\B@ECKKW`JWV`[E}SGhHQaddKLNA{SxCqOonD]MW`@]GV`gBUEoLgZ`wd\KpA{Jo^P~C~JLA{Jo^P~CcJKU}DwV_}bfF{SgkpcgV`]ByNwcxTqrOoCANolXlGW@fF[NK]_|PzD_KnB?LwsQgDUImT_jHawW@VFGS_ssK@FBEHkW?tSK@La[CyHwRwnqUOoDEP[bsK?ca@EmSQE?\pUcFImU{mSK?zalGMOwmSK?zalGMQSmSK?zalDmO[mSKPXCHJm[AEG_p{CoJMZMEGX`YBnI}XYEGVPpbfFOMc\PPBQOpB_F_NG]_|bSIYWiEGbPeCxJ|BCR?naVcpHcRKecKPOCOGzBCS@CALC\Ha[uDOKPOAhG_Psq`rWWa_G_PsqhrWWaCD?P?bhOBAfL`cEg]PWRMoqBcLGhpaWXAHEURSnxoWX@YFASWs[K`Ka{H\BGS`DQNccHIQWcxrGXAkDiJWUwmA@dtL~BGIg_`|c?GAOGlHkWX@RDAMCjPkGXAXCyJoW`JbaFU`cEkRGn@gCmKM\YEO]`Ka{H[\YEOeP]BAH[T_ysL?j@^B?ECKOyqeen`gGg^hFRLosD[PCkxbrHERKgXUE_gaBCKGYOw`xMRhosBIMGdxKQXCrHgWIE_^`dDvKsYeE_d`kD^MTBOMGmqaE{MtBONoqavdvLQ]QE_^`AagESV[tHorqOsB{KKXP\rSejNHBONoc`dDvLQ]QEgZp[dAIQSghXRB\otCuHoRgf`NbRIy[aEg_PbbLE[K{Y@]BSFa`iD[\hSRYotC[NccHebNE^L?YEEgXpoClKFBSThCarEM`iIK_hMrhOtBWHCSX@Q\fQNdBSNGgqAcMHIRkyP{gYabGIO{fXXBhFq`iIKZh@Q\fQNdBWPG}ADc[KpBWS`AQZc|H{R{g@uRtouBSMK[wy@sbiHSWQEoU_nBnI]ZWuxmB[ouCqLOihVBbouBcIWVpOr\OuCCKom`hrrOuDWJSUolp[COJOWuEo[`^CKIEYCvPsB}OuBcJwgXfb\F{`kFGVpOqwelLs^qEo[`Ha}IEZg~cLorB`HUVuEwTPEbzG?OC_PGbKovDcPSexYbEOvAyNGiXkgZ`oBoFcNO]p]D@Ly^yEw_pdduLIYkt`jRVF``mI?_XNBifp`mH_YPUqpDbJGUSxKLpXCTHMUglxbCAovBWJGahYa{eKMy_UEwi@XCTJSWo|I@WZaqGiTWlPbCAowC?GOOg``BbHJiYWz{M?y`vDySWwPoraFDNtB_SHAaWCtMo]yF?WpnCmK@B_UHDaseJOLB_Qwt`lBZEwLskHpg[ANFsP{c`HQRCfKnB_GWh@^dwKu_MF?UPTbAFKMo]pRbYOwAqG[[oz@yceI[ZOxsM?kbeFWSkhp[BBEkLhB_JGx`uDMJwZOwcDo[adGORgyx{G[`{EILcnH]a|d{LG]MFGapGAPCcHK^pGBJOxAuNCi`kr_gQ`qJ?aXZBDEiOFBcQgtQlFLM[[{y@sW[`uDsKCWOopaDDM?^eFGYPLb^HQVyFGRPJBwHkY`A[MOsbLE}PcdH^cEGa`qEcZxIQcd}KIaIFGYPnchJ{[xCSMOsb^GuQcnP^cPOyCsL[k@rG\AnGgP_bHEaLdjKQ_QFO[p_B~IOZ{}{M_mBoI_TWixUAkepOjBgSx@AZFUMu\ozhvbvoyBOEkL_ZOvBdHWV|BkM_}asEOVGsXwG\@`COM[]xFbGe\`sG_Y?|qNEPKy\AFOa@zc]HcXCrhlg\AGEYN[bpcRMe]MJBkUXDqudmJ]V?mHcCDOzBGMOd@_RAeEKMW`CCMocASEaTwx[MokBmFeNO]g|ahEoOhBkNwpaxeaNJBkSoi@SaiDUO[f@tBuOzCWNocXfCSOzBgJ{gxnb|ozCgHwYGyanFDMU`\EkMpIAvEaTwlpqsYozCgLC\@VapfJPcbUFWd@gd]MU_DEkNOj@^B?ECKO|qlEyOvBsNoxQ\ELPXBsQpDAKCXGsPki``B{O|A{FC_`IRZEvLoZdFCNPDBoJW\c{SNPVBVH?Y[}P{ryFtNlBsSOo@kdxJsVkn`eCCo|BIK_e@PRbgAOU`EFgXP_bGH_SSwXpsGo|BIF_X?yaWDDMM`DD{NOp@dDiK_e@PRZfFObBwS?mQxeVMA_QFo[?{@xBsFk_hIBYGx`{DsMw}QnFAME[OwiFW^ALFYUslpZqwDpMo]AFo_poCwKUXDDyKCWgq`{EWWwrPfBNE_S[wqDS_o}DcLKcXhblFn`{CWTwwAheUPscMFo`PKC?GUPGiP_BzgL`{H_]`AqHC|IcW?|@|w^AWEsMc`XCahDdK?^\@[N_uAWDQOkaPSb?Fv`}IsYPFBQFl`}Gw]PYBjfcNM]_|Hyg^abDwVOqqAG^`TAmNk_@?Q@D[M?`qFwepMA\C{H{ahRq~F|QVB{Kwqq`fLM[[{y@sSFhA`}E{_XIbXgv`}GC[HLq]c}H}S?pQJg^`mB]Ig_XIa]erPmdHJcNovbMGEQgkXksQgvQidqFwZq@ciKKXOuXlcZh[`}E{_XIa|ErPmdqG?dqHdOIkT[j@UQ}fzQZC?KWpQcFHOgcMB?O@FbpJU\S{kO?kb}J?ZtCCO?ycGHWZHEiMs]G|P{d]G?kPic]LIYkt`jRVFka?G?O_`PBAFE}RWpaIG_A`DsKCWOopaDqKq_iG?bpHB[FaUKlXtRqhca?G{]HYrIemMi]TKcO@FbpHeUOlX]rifdRHC?Lg]@FbpJU\S{iKSqP@CWM{lPtblf[My\wzyXw_`~FEM[\?yPtC{KQamGG\ACcjLabXIsOOkBwIuUGkXXAqe~O|CCK_r@rD@MW`\BAESLHCaAIWT?iPTAjD{VWri@g_arEMLOcPgrvOVAAHOa@Sq~fyQ`CCUWt@scaLEZc|qHcyP@CMJKY`GaRebMC]x?Q\G_aRDeJ_Y`GbPewN[fQGGkpiCLHCYKupzcyPABOEkL_ZOvBIIK[lAYNw`AfDuVSra@SDgKOY_yGO^PpCtIiX@DKO`VbWG}QOchHaReaNafEGOa@tdhMg]DKkO`LCPI[WCoh`bBeGN{cqGO[qBCKGYOw`xJbWGrQrCGJ_~QRdIJAYgvqFsRPAAwKO^hWQ|eiL{^S~yFw`@[BoJW^hBQoeSLSZxB{O_mBZFyUCtPnbzG@O}eEGW_`qCzK]XGqXdBIglaEHcU`DqgeANqciGWj@YauDmJ_YHGRSfoRfCKJO~Ame{PCaPCiHcRhzaEFG_xJRVgbPgdaGWaPvBrFgNS]pXbhfbRRCKLOpa`DHISSkh`qcHHDaEIOVwrPmDmJoXl?YDg`acD}NSn@es@gURlCKS_nq{EZNk_LAqHs^PBDGJ{n@es@gUP`COMpAaVcpHcRKe`lS\H\aGJ?You`lb[EyPst@ysvpCBQKcg`qCGH?aGDk^PVr\g`RxCOQhDaeeBNw^|?A?S@HMaGISVh\rLE]K}Y?sI@tApCCUH?QGc`HbkJM\G{qYGa@{E{N{fHWbFE]PGaiG_^@nB~HqWxDSP?}B]F}RcfpbbVGiaGFcN_v`~crHqWwrxpCTPDAkD{K?WOpCBJK[XDA`Wa`}EcSGhHQaddKMoa@HsPOi`pFuO?_H?a{E?NWeaGgXOzcTHu[GwXpBafdR^@[Gga`]D\KU`PJkPPVB`IaX\EiMs]G|P{cAGgd`db~HAZP@QdtKIXStCSOgf@PAiFcQsihhbTfzRxCSSO{aEClIiYWz`}s}PDDCJ[]PJQ_DTLK\w~Y^GO`DDCNGdhKaieELK^lNI^GbAGDqTkkPWqqDdKS`@I{P_xbxJkVw|YXCtHjRWeuGoVAAdiMY[wxxsBggiSTCWNgsq_fVPAaLHkP_s@jBWEsLpCa]F?NKeyGoe`bbLE[K{Y@GbXgFSlCWSwzQTecNw^|?A?S@H}T@CWNGf@Vb_IeXXFQOsgpEBWI{[@QqheUPsbtGYQCgpED]M?eHSrJGMPscLIIhGE`ED]Ls[@SrJElPMbhGYSWbaTEKPouI@SDgKOY_xQSPpDaOCaHGQWnqmEHOedmGw^@gdBMk\kz`vRnG^Q^C[JX@qsFKMsadP[PoscVHmRsfpNq_E~NAfIGw\`}CEJgV{}IWwbadF[NK]_|PzCiLE^xNQfWbaoFGR?hxfSXhEQMc`HIhwb`uBsNog@\A~fpO?eLUsPozB{JgV{wh{RxhbSmjYCGPozB{H}VOnx{S]HbTlC[Mo~AqDsJwV{rx{SpiuaOFGZG}a{dyJuVonhzsrItaOEgapMb]fUN?fAH?h@uChLIYkt`jRVFvS?hyH?UaDDkKa[dDyKCWgqSRC_T_lPZAvDoLwi`eS[hATTC_OOt`lBZEwLsghtSMhJaOGcVhUbEGTQwdxJyWCopGCqKcc@kcAIOaOEGLOfplCUHsZs{A[D^PGBSFkapKq\E|N?^TMAngc@iGAPWfPNb]f_RUf@VsQ?tCUHsT[vhwBrhER_f`VsQOrcSGoPcbPEq[e}M}fLWSQPLa[CyHwRwqAMeoOKhUHGTqADfMU`XDYbDEiMS^CcSW{AVcpHcRKe`gb|HzSxCcTgxQee[PkcTTKQOvbvJmWCoh`bBeGN[edU[QPFB?FKT{qADsKGXOsdaHG_PjdCKMYCwHtCNHISrCcOGfp`BVHaSOwHtCNHIaQEkOGtqLDCMA\PBqQdFpHCAL[g`RB_fSM{`xHQmWdApFEM[\?yPtDQKub`FyiwdA`F]Q_tHib{I@SCgLOagWd@tFoVKoP{bxfsNi^XKikWd@XGQUslpZqwDpMSapPCQ`Fa}I{W{qPcrIETOadeHOdpeBmHEY|@IcwdA?CGGSOo`piDFMe`lHaqgd@bG_R_v`wcwjCaSH[W_rAPenOQhLVaptkpICmKo\@GrOEnOQdTQYuWdAECmIcX`GrUEnNS_dQYuWdAVEWOGcX`rVEnOQg|QYuWdaeDOIcTOipwcmLO^tNyewdaSEIP{c`HQRCfLi_`Qatwd`cGeRSvXxBrfgNQ]hMioGd`sF{VSoXzSpIsaUGoVOoP`BBEGUCpqBslPJDeL{hpebNE^L?YDEyOTSPJB}LS`XPbhG[QcdLIaTTdpJAoHsU_oqCDhME[`Dq`dUpJAoJO`@YRcFPO?axOqbGT@JAoJO`@YRcF\NSaxOsQokAFDgOG`@YRcGmSLCoOWuAcFXPCaPCiHcRhOU^CoUOwagDUImT_jHeCYHCTLCoPgmqoELLI`HIsR?mcEGWOs`pBqtfFPYg\[cR?nAWESPwuplr[ExOEhDZCR@OBjHWY[~I^TNpKBKPCepmbphsRkf\NA]T`pKB_F_NG]_|b|JcWO}AXtXPKCYJ_VXUAoELO[`HIqzWeALDUJkk@bSHHUUImuH_bPMazJ?Ws|H|CHHFQkmuH_VpEazJ?WSpiCcjHxVZCsIoVoo@`BCP?mPscXiOVVCsMGrAteYK{X{s@gSNhoSxCsKhAQNEMMA^xKqsDgjQUfCsTozqcEBPQdpJqVsoH`UtCsNonagDUImT_jHqBwi?UDCsPOtAUEzOI_l@aBSFHAVLCsSOwprbgFQMgk@lRohJTfCsOod`{CuJCW_tACsPiHTRCsQo}AZDpLOYtAYGsoiHS[ieHgd`{CuJ_XOtACsPhlSQid]sRPJAjFoRWj@iCHgbSQh`TKR_}AxI[[[|a]t^JDUKk\XCR_nAdF?UCuplr[ExNIchUkR`IbxHiY\AaDdEILS[g|TQ}gf@ZGcVSzILS\g{PybxQi{Wf@uEMKsXorpgDhKoa@MYfgf@hGIP{c`HQRCfKY^lLIqWfAJC_HCQOcphcmLs_hGiwgfAoFYSWo`rSSHWUvCwU?y`ud?IKWPDAUCtIWUuoeHok@udEIqWOqiICkINTEll`KR`WBlIKSgoaICchWUunP`KR`WAtFYSWo`cbrggQogDZZAWf`cGGPopX}SqHiRUepLiqgfarF_SKoAJSjjXUwltZqvu@PNDKI_TGi`TbdIwZO{YRTWpNAoPOb@EQLCZJg\`EaddvpNBmGoYxIb`FBMG[T?YOtopNBgK_l@dsPGcPIaXCyZdOpNCgN[exNQ^C~I?YXAQadTjza]F{W?taffEN_fxWcRo~b?FgS{wp{C^H`R{kPakRo~aQE?S{s@pbwFrPwfxWbDWf`aB}K?c`RqqfEN__xNqpEIpNB}K?_HRrbFoR{hdSYpDhKTa_I{\o{pyBtFkSOniJClJWWLD?RO~A[edLUYothjcGiETKnaI?a@gcnHaRGeXLB]gHQAmQI?VAJdvMib`QazTxjsVinYI?Y?t`kBYEw_xFREFwRCk}I?^P^dLMQ^G}X|ByfuR}kLa[S@RbcGUT{uPwchHRQgdTUSDog@rECKWkxeRmgZRih|VQyGJ`OBeKWkxcbKgAOuaXMifttOVA_FKTOpa?DfKq`lIY\TNoVA_FKNWpareXMu`lGy\TNilaaIO[PVbXf^Q[jXVImd\i{aaGcZ@IB_GEQ?dp[[SOxBIJYUwlx[AweUO{e|RjFGg`YF}PCmXtsZIVSohdRQ{ggaADuTGxhrbffOMa]xNanUHPPDWJSUolp[BjIMVxDYVTjKGaaEg_pBAEcMG]QKpP}csJMaaHc[o~Q[EcOm``BIEdAifVxDCKGaPNBWHO[@?qODKJbXLDCPGfPkCMHOXKwA@cEh?VEqY@WSPCbWGYQ_w@ycBH?VEqYIGaP_bWHOX{wA@c_JEVEqYIObPjBYEuLoZhJR^gGP}mTd[S_rCIHATkpH~SqjLacGKVhSRTFKNYgDOQ_tAJ@W\DGJhDa{FUMu\ozhvcZiRVXDGS?vamepNG][|@yRtHKTpDGR?}a\ebO]dDPAjTVInT_neIOk`uDAIQSghXRA~gmQqlP_{S_w@wBqFgNWqQrE\OwfDSBFgh@eGSO{cHaRgF|RIktYBKgh@eGSQCpH~SLHdRWktZbKEXPQBKOgcHaRff|PIeTXi~eXPQBKEw`PEAOeHNybxKirUPkqaeFSXXZBMG`RgfXMy]C{iZX@DKO?`@AaECMJoi`qrth|U?pAIWkPxDDKAWSop`rCGiQkl\_[SokbXGiVcnP]q}FSPshD\sSoiaVFuO?_H?a\EaO_g\TA~WhaNDgLGdHncBhCVMm`\IyeQpRBEOKc@cB}F~O?_D?QXtdktaeICTWwQeDYL_\g{qSDYJrXZDKSGp@gB`IsUOu@ubrHOTgreIWgPodYL_Z[zPxcbHOTglD]cSpOb`GWTgoxkBlFeP_d@LYlGiAZCwHsRofp~C{LQ`TPYjDzpSB]KSihYbLg\RciHSYhDQk\agE[`@GbFeQKeXOqh|spjKXhDOIxCqzFRNcbdQQ{GiAlFaSCoPcSVgoPabHJYtUApSDEL{jXWapdcJIY{{ARtZl?agGCVOoP`BBEGTKxPzs|I~WbDOPotQTcoLw_PGqPscHHV?qaI_To{b@GeROmpssLGxScn@h[T?jcRJk\LDyMTHInUen@_JQwi@VGePcmpss[iQTult]BMudpSAmNKaXQQzEkMebdKAcdwLJ_oDWIwU?k`YAuDoJgYo|ACC}J]B?Vop`cBIEWKwY?s`iBqHKRgiWK@kB]F?MG[_x`sBiFWOof`SAw_oECLg]o}@|B{F{O?_P@ABC_Hq@oE@CAHCSGkP_bPFAN_oE?Owc`IATCkH[R?ePLAZDSJUB?Z`HA_DAIGSWh@QaeDMJWhXWgK@aBoGSQGipUAlD[I{U?kPXAr`ADSVGm`\a{DyJwVwo@fBZFQPeCGpPbBFEOKcXOqpeCKGoYs}rDgObCEaLGYWt@ibUEmL_[w{q?CN`AKGXwv`nb_FAMG[Wx@qcAGYPaCGopeb\FUMo\gz`vboFaNG_HEgOb@EwMg]o|p{BxFsNk^_~P~CM`AL?ZOy@yCBGGOS_p@qCCHGSPm@gGPGCOGaPGaXDAIcUGmViDPFAMc]G}Q?cHGaPcsIST_kX[GE_M@SH?d@IQTCjHWQsdpJtEoiE[OscpLQZCvHoRcfPMq]DzPbAgfpOQ`DBIGSSgpPqcDVJIUwnKIaRc~IWSshpRqgDPIcTKi`XA|OiHeS?hHTalDZIwTsjpVqoD`J^AgchKQkdaJKU[l@YQtDjJWUsncI`kccHcRshX[QxDrJgVSmp\q{OrJyVwnx_B?eAKEWOsHirZfBM|?sEWcALeHKSWkp`bRFENK_ta@ON@feNOY`lBaFSNG^P?aDCQNgXeSKkX[r@eRLEZKwXstpmB`FM`eW[qXgBPEbLGYSsphrSEhMG[}EWVbCETL]Z?uHkbXesLi[SyHvWX`vKcYoupmb\e{LyZwvxoBgF[`eWWrxjR[fEMM[_xHqbdfKMY\mEW|ajEDMc\Ky`tRjFVMo\dRBBG]F^N?]C{PwrqFdNK^X?QBcJgc`w]_|XzBufmN]^?}H{c?gKP]buF`yRxfvNo^c~P}r}F|N{`dCyKg]FfO?_L?a@SBGFOO_d@QEcRGp`wMW|P|SFgOOa`HAYDCIgdP_bqF`cRyF~OU``DAISTGjPWatDqMwF?{GubLEaLSZGvPobdFRUEpoICeR?wQNs_H@QCcLGaPSuiLVT?g`YQcdhKQYcxHySCohkRogDPkAciHUQmd`JIUclh[Qyf\OYbDJoIQOeHKYXCqheRMe`LI]TAINSt?hHIScoHmR]f@MI[cxhsRigHRCAbTHRQ}elMq]c|h{RyfxNy_DFOIOkcXIiVctIDSKg\PAaTDIJSr?g^xQaqexNMc\QAcTHIRSghTQsAqiiZSwhtRqftOI`Tqk`YQvTyoJQaiXSyiDSiiTUipWqsDmJhVf?k@qkTXIrTgjTUqlt[LWZYvm@XaC?IlTujtVqnt_J@UCkLWayWDf@TGjpXIqddjKUYkxXyvdtJs_UiTUApThjSUilXYyuDkjYUuma@WlDPinUMl|[AwTpJbVGmT[q|gDiaT[jhYIxttjkVYmx\y{Dwjq_WBK]YGtzjwVqnh^Y~D}kaX]sQ@b?E@KBWGoT_r@uCKHXYrlgzSGEKJW[o|aBCUHKRWgpTcJJubLP_W@\_JBUKkYWuppbjFeNk_X[ri@a~eJKcXIqXczIESkiXUqpgjSwECZXarHeZLEYkuXmr`jBWuqmE_W\h`bEEWK{XyrxfzOE_lAYEtI@a~uDKVXErdhBQUdLJYWsthrR~~~~") gom916nx = gom916.networkx_graph() # List of graphs to process graphs = [('Gomez_916 ', gom916 )] def count_k_cycles(G, k): count = 0 visited = set() def dfs(path, start, depth): nonlocal count current = path[-1] # Early exit if we?re going too deep if depth == k: if start in G.neighbors(current): # Normalize to avoid duplicates cycle = tuple(sorted(path)) if cycle not in visited: visited.add(cycle) count += 1 return for neighbor in G.neighbors(current): if neighbor not in path and neighbor >= start: dfs(path + [neighbor], start, depth + 1) for v in G.vertices(): dfs([v], v, 1) return count # each cycle counted twice (once forward, once reverse) def algebraic_connectivity(G): """ Compute the algebraic connectivity (Fiedler value) of a graph G. INPUT: - G: a SageMath Graph OUTPUT: - The second-smallest eigenvalue of the Laplacian matrix of G """ L = G.laplacian_matrix() eigenvalues = L.eigenvalues() eigenvalues.sort() if len(eigenvalues) < 2: return 0 # Trivial case: empty or isolated vertex graph return eigenvalues[1] def domination_number(G): """ Compute the domination number of a graph G using MILP. INPUT: - G: a SageMath Graph OUTPUT: - The domination number (integer) """ p = MixedIntegerLinearProgram(maximization=False) x = p.new_variable(binary=True) # Objective: minimize the number of chosen vertices p.set_objective(sum(x[v] for v in G.vertices())) # Constraint: each vertex is dominated for v in G.vertices(): p.add_constraint(x[v] + sum(x[u] for u in G.neighbors(v)) >= 1) return p.solve() # Print properties for each graph in the list print("\n Main properties of the graph\n") for label, graph in graphs: print(f"{label} | Ord.: {graph.order()} / Size: {graph.size()} " f" / Diam.: {graph.diameter()} / Avg.dist: {graph.average_distance().n(digits=6)} \n" f" / 14-reg.? {graph.is_regular(k=14)} / Degree histogram: {nx.degree_histogram(gom916nx)} / Girth: {graph.girth()}\n ") #f" / Alg.conn. {algebraic_connectivity(graph).n(digits=6)})# / Domin. number: {domination_number(graph)} ") print("\n Symmetry properties of the graph\n") for label, graph in graphs: #print(f"{label} vtx.trans. ? {graph.is_vertex_transitive()}") #print(f"{label} edge.trans. ? {graph.is_edge_transitive()}" ) #print(f"{label} | Aut.group.ord.: {graph.automorphism_group().order()} " ) # Compute the distance distribution from a given vertex v in graph G # Returns a list where the i-th element is the number of vertices at distance i from v def distance_distribution(G, v): from collections import Counter distances = G.shortest_path_lengths(v) distribution = Counter(distances.values()) result = [distribution[d] for d in sorted(distribution)] return result print("\n") for label, graph in graphs: for i in range(20): print(f" dist. dist. from vtx. {i}: {distance_distribution(graph, i)}") # Counting k-cycles for each graph print("\nNumber of k-cycles for k=3 up to 4") for label, graph in graphs: print(f"{label} ", " ".join(str(count_k_cycles(graph, k)) for k in range(3, 5))) print("\n") ## #